-
Notifications
You must be signed in to change notification settings - Fork 125
Supported Hardware
Souliss is written in C++ and is partially based on the Arduino cores, its operational functionality are strictly related to the network transceiver and relevant drivers. The following list the microcontrollers that are actually supported in Souliss, for each of them there is a specific set of drivers and interfaces.
- Arduino AVR Boards with supported network transceiver
- Expressif ESP8266 WiFi (code running directly over ESP8266)
- Expressif ESP32 WiFi (code running directly over ESP32, no Bluetooth support)
You can mix the following microntroller and transceiver to get a full network node running Souliss. The code has been written to compile with the Arduino IDE, ensure that cores relevant the microcontroller of your interest are included in your IDE.
As general rule, all the AVR ATmega microcontroller that has an Arduino core can run Souliss, restrictions apply on flash and RAM size, the following are supported in Souliss and has the relevant core installed in any Arduino IDE.
- Atmel AVR ATmega328P
- Atmel AVR ATmega32U4
- Atmel AVR ATmega2560
Drivers for listed network transceiver are provided in the framework
- Nordic nRF24L01 and nRF24L01+ (via Hardware SPI or Software SPI)
- Wiznet W5100 (Ethernet)
- Wiznet W5200 (Ethernet)
- Wiznet W5500 (Ethernet)
- Atmel AVR USART
- Ciseco XRF 900 MHz Radio (through USART)
- Any differential RS485 transceiver (through USART)
Legacy Support
The following transceiver are supported in Souliss but are not getting the latest features:
- Atmel AT86RF230 (Wireless - 2.4 GHz IEEE 802.15.4)
- HopeRF RFM69HW (Wireless 800-900 MHz)
- Microchip ENC28J60 (Ethernet)
- Microchip MRF24WB0MA (WiFi) up to firmware release 0x120C
As general note Microchip transceiver doesn't include a TCP/IP stack and for this reason runs on uIP TCP/IP, this stack support only static IP configuration (doesn't include DHCP), for the same there is no provision of Dynamic Addressing features to assign at runtime the vNet address.
The following ATmega microcontroller are not included in the Arduino IDE and can be added manually:
- Atmel ATmega1280 (Moteino Core, install instruction)
The ESP8266 is a SoC that include a microcontroller and a WiFi radio, board based on this IC doesn't need additional transceiver.
- Expressif ESP32 (ESP32 Core, install instruction)
Drivers for listed network transceiver are provided in the framework
- ESP8266 embedded WiFi radio
- Any differential RS485 transceiver (through USART)
The ESP32 is a multi-core SoC that include a microcontroller a WiFi radio and multiple other interfaces, board based on this IC doesn't need additional transceiver. Actually only the WiFi radio is supported and there is no plan to extend to other interfaces supported in the SoC.
- Expressif ESP32 (ESP32 Core, install instruction)
Drivers for listed network transceiver are provided in the framework
- ESP32 embedded WiFi radio
Starting from Arduino IDE 1.6.4 the cores are no longer bundled with the IDE itself and shall be downloaded from the Board Manager. The following table list the supported core for Souliss, using a different core release may result in unstable behavior or compilation errors.
Is reccomended to use the Arduino IDE in portable mode, create a folder called portable into the Arduino IDE main folder to have all cores and libraries locally with the IDE.
Verify the supported Arduino.cc IDE release and relevant cores for the Souliss release that you are using:
Microcontroller | IDE Release | Core Release | Core Mantainers | Souliss Release |
---|---|---|---|---|
Arduino AVR | 1.6.5 | 1.6.5 | Arduino.cc | v7.1.x |
Moteino AVR | 1.6.5 | - | LowPower Lab | v7.1.x |
Arduino AVR | 1.6.12 | 1.6.14 | Arduino.cc | v7.2.x |
Arduino AVR | 1.8.10 | 1.8.1 | Arduino.cc | v7.3.x |
ESP8266 | 1.6.5 | 1.6.5-947-g39819f0 | ESP8266 Team | v7.0.5 - v7.0.6 |
ESP8266 | 1.6.5 | 1.6.5-1160-gef26c5f | ESP8266 Team | v7.1.x |
ESP8266 | 1.6.12 | 2.3.0 | ESP8266 Team | v7.2.x |
ESP8266 | 1.8.10 | 2.6.3 | ESP8266 Team | v7.3.x |
ESP32 | 1.8.10 | 1.0.4 | ESP32 Team | v7.3.x |
Previous release of Souliss compiles in Arduino IDE 1.6.x and 1.5.x.
- Introduction
- Getting started
- User Interfaces
- Build your Souliss
- Examples
- Boards
- Interfaces
- Hacks
- Advanced
- Source Code
- Downloads
- Community