This guide will walk through the installation of the arduino-cli
and arduino-cli-cmake-wraper
components used to bridge F Prime and the Arduino build system. This assumes a virtual environment has been setup for your project.
Activate the project virtual environment now.
curl -fsSL https://raw.githubusercontent.com/arduino/arduino-cli/master/install.sh | BINDIR=$VIRTUAL_ENV/bin sh
This command downloads arduino-cli
and installs the binary into the existing (and activated) virtual environment.
pip install arduino-cli-cmake-wrapper
Initialize the arduino-cli configuration file.
arduino-cli config init
Below are board manager URLs for select Arduino boards. You are not required to add all of these boards, but you are free to do so.
arduino-cli config add board_manager.additional_urls https://www.pjrc.com/teensy/package_teensy_index.json
arduino-cli config add board_manager.additional_urls https://adafruit.github.io/arduino-board-index/package_adafruit_index.json
arduino-cli config add board_manager.additional_urls https://espressif.github.io/arduino-esp32/package_esp32_index.json
arduino-cli config add board_manager.additional_urls https://arduino.esp8266.com/stable/package_esp8266com_index.json
arduino-cli config add board_manager.additional_urls https://mcudude.github.io/MegaCore/package_MCUdude_MegaCore_index.json
arduino-cli config add board_manager.additional_urls https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json
arduino-cli config add board_manager.additional_urls https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json
Install the new board packages. Only install the ones you have added to your board manager in the previous step.
arduino-cli core update-index
arduino-cli core install teensy:avr
arduino-cli core install adafruit:samd
arduino-cli core install esp32:[email protected]
arduino-cli core install esp8266:esp8266
arduino-cli core install MegaCore:avr
arduino-cli core install rp2040:[email protected]
arduino-cli core install STMicroelectronics:stm32
ESP32: As of 10/27/2024, versions newer than
esp32:[email protected]
will not work.
RPI Pico (RP2040): As of 10/27/2024, versions newer than
rp2040:[email protected]
will not work.
RPI Pico 2 (RP2350): You need
rp2040:[email protected]
or newer to compile this board.
Required Dependencies:
arduino-cli lib install Time
arduino-cli lib install RadioHead
If you will be using the TcpClient
component, install:
arduino-cli lib install WiFi
Add udev rules. Download/save the .rules
files located here for your selected board(s) into /etc/udev/rules.d/
.