I'm creating a custom board package for a project based on the Arduino Mkrzero. I plan to use the same dependencies as the mkrzero currently. I want the board to appear in the IDE as a different board however because I eventually want to create a custom bootloader for the project. The arduino mkrzero one is good enough for now. I have gotten the json file to work correctly, but using the downloaded board package causes an error.
recipe.preproc.macros pattern is missing
Error compiling for board Custom.
The files are hosted on github here. https://github.com/kumataru/Custom-Board (https://github.com/kumataru/Custom-Board)
I feel like there is something I'm missing. I've looked at the relevant links listed under this forum post. (https://forum.arduino.cc/index.php?topic=457405.0), but I can't seem to find out why I am getting the above mentioned error.
Any help would be much appreciated.
A while back I created an Arduino IDE board package for two Arduino Zero (SAMD21) based custom boards. The procedure for creating the entries is detailed on the Arduino forum here: https://forum.arduino.cc/index.php?topic=409715.0 (https://forum.arduino.cc/index.php?topic=409715.0).
The thread is a couple of year old now, so versions of bossac and CMSIS specified in the JSON file tool dependencies have since been updated. The current JSON file tool dependencies can be found on the Arduino website here: http://downloads.arduino.cc/Hourly/samd/package_samd-hourly-build_index.json (http://downloads.arduino.cc/Hourly/samd/package_samd-hourly-build_index.json).
I also found the Arduino IDE JSON format specification on Github really useful: https://github.com/arduino/Arduino/wiki/Arduino-IDE-1.6.x-package_index.json-format-specification (https://github.com/arduino/Arduino/wiki/Arduino-IDE-1.6.x-package_index.json-format-specification).
I was able to follow your post and get the board package set up.
Thank you for the help! :)
you don't need to create a complete board package if you have only a new custom variant for some existing board package