Coconix is a Unix-like shell for Arduino Uno boards.
In this table, yes denotes a board on which Coconix can make use of its full feature set, partially denotes a board on which Coconix can provide limited functionality, and no denotes a board that is unlikely to work with Coconix.
| Board | Supported by Coconix? | Notes |
|---|---|---|
| Arduino UNO R3 | Yes | N/A |
| Arduino UNO R4 | Yes | EEPROM is emulated in flash on R4 boards.* |
| Arduino Due | Partially | Coconix on the Arduino Due cannot operate piezo buzzers or save data to non-volatile storage.* |
| Arduino GIGA R1 | Partially | Coconix on the Arduino GIGA R1 cannot save data to non-volatile storage or check the amount of free memory.* |
| Adafruit Metro M0 Express | Partially | Coconix on the Adafruit Metro M0 Express cannot save data to non-volatile storage.* |
| Adafruit Feather 328p | Yes** | In order to prevent the serial I/O from being garbled, the BAUD_RATE macro must be set to 9600. |
| ESP32 family | No | Coconix on ESP32-family microcontrollers is untested and most likely broken. |
*For more information on non-volatile storage support, read the FAQ at EEPROM.md.
**This board requires special configuration changes to function properly with Coconix.
unamecdlspwdmkdirtouchcatechorminfopinmodewritereadgpioshuptimedmesgdffreewhoamiclearrebootpwmsleeptonenotonesyncbuild-info
- eeprom
- i2c
- pwm (done)
- date cmd
- alias cmd
- 'slots' cmd
Coconix uses the BSD 3-clause license and contains large portions of code originating from KernelUNO.
Some may notice that the ArduinOS and KernelESP projects have many of the same commands as Coconix.
ArduinOS and KernelESP are rewrites of the KernelUNO codebase with features adopted from then-unmerged pull requests, and they are not affiliated with the Coconix project in any way. In addition, all versions of the ArduinOS project predating 72062e7 contain portions of code derived from the copyrighted work of the authors of Coconix and KernelUNO, and which have an unclear copyright status.