Getting Started¶
Installation¶
There are three build systems available;PlatformIO,Arduino IDEandSimba build system. TheSimba build system has more featuresthan to the other two. It supports executing test suites, generatingcode coverage, profiling and more. Still, if you are familiar withArduino IDE orPlatformIO, use that instead since it will be lesstroublesome.
PlatformIO¶
InstallSimba inPlatformIO.
- Install thePlatformIO IDE.
- Start thePlatformIO IDE and openPlatformIO ->ProjectExamples and selectsimba/blink.
- Click onUpload (the arrow image) in the top left corner.
- The built-in LED blinks!
- Done!
Arduino IDE¶
InstallSimba in theArduino IDE 1.6.10 as a third party board using theBoards Manager.
OpenFile ->Preferences.
Add these URL:s toAdditional Boards Manager URLs (click on theicon to the right of the text field) and pressOK.
https://raw.githubusercontent.com/eerimoq/simba-releases/master/arduino/avr/package_simba_avr_index.jsonhttps://raw.githubusercontent.com/eerimoq/simba-releases/master/arduino/sam/package_simba_sam_index.jsonhttps://raw.githubusercontent.com/eerimoq/simba-releases/master/arduino/esp/package_simba_esp_index.jsonhttps://raw.githubusercontent.com/eerimoq/simba-releases/master/arduino/esp32/package_simba_esp32_index.json
OpenTools ->Board: … ->Boards Manager… and typesimba in the search box.
Click onSimba by Erik Moqivst version x.y.z and clickInstall and pressClose.
OpenTools ->Board: … ->Boards Manager… andselect one of the Simba boards in the list.
OpenFile ->Examples ->Simba ->blink.
Verify and upload the sketch to your device.
The built-in LED blinks!
Done!
Simba build system¶
TheSimba development environment can be installed onLinux (Ubuntu14).
Execute the one-liner below to installSimba.
$ mkdir simba && \ cd simba && \ sudo apt install ckermit valgrind cppcheck cloc python python-pip doxygen git lcov && \ sudo apt install avrdude gcc-avr binutils-avr gdb-avr avr-libc && \ sudo apt install bossa-cli gcc-arm-none-eabi && \ sudo apt install make unrar autoconf automake libtool gcc g++ gperf \ flex bison texinfo gawk ncurses-dev libexpat-dev \ python-serial sed libtool-bin pmccabe help2man \ python-pyelftools unzip && \ sudo pip install pyserial xpect readchar sphinx breathe sphinx_rtd_theme && \ (git clone --recursive https://github.com/pfalcon/esp-open-sdk && \ cd esp-open-sdk && \ make) && \ wget https://github.com/eerimoq/simba-releases/raw/master/arduino/esp32/tools/xtensa-esp32-elf-linux$(getconf LONG_BIT)-1.22.0-59.tar.gz && \ tar xf xtensa-esp32-elf-linux$(getconf LONG_BIT)-1.22.0-59.tar.gz && \ rm xtensa-esp32-elf-linux$(getconf LONG_BIT)-1.22.0-59.tar.gz && \ git clone --recursive https://github.com/eerimoq/simba
Setup the environment.
$ cd simba$ source setup.sh
Build and upload the blink example to your device. Replace
<my-serial-port>with your serial port name.$ cd examples/blink$ make -s BOARD=nano32 SERIAL_PORT=<my-serial-port> upload
The built-in LED blinks!
Done!
Note
Some boards, such as theSPC56D Discovery,require a specific toolchain to build. Such cases aredocumented on the individual board documentation page.