Espressif ESP32 SoC is gaining traction right now as prices have come down, and there’s still an on-going fight among LPWAN standards with LoRaWAN being fairly popular in Europe. Whitecat, a group of engineers from several companies based in Citilab, Barcelona, Spain, has designed a board that combines both ESP32 and a LoRA transceiver, bringing an alternative to Pycom LoPy board, but instead of running MicroPython, they have developed Lua-RTOS.
Whitecat ESP32 N1 hardware specifications:
- SoC – Espressif ESP32 dual-core Tensilica LX6 microprocessor @ up to 240MHz with 520kB internal SRAM
- Storage – 4MB flash memory
- LoRa WAN transceiver working in the 868 (EU) MHz / 915 (USA) MHz with on-board antenna, and u.FL connector for external antenna
- Integrated 802.11b/g/n WiFi transceiver with on-board antenna, and u.FL connector for external antenna
- Integrated dual-mode Bluetooth (classic and BLE)
- I/O Headers – 2x 16-pin with SPI, I2C, I2S, SDIO, UART, CAN, ETHERNET, IR, PWM, DAC, ADC.
- Power Supply
- 3.3 to 5.5V operating range through input voltage regulator
- Second voltage regulator for power on / power off sensors through a dedicated GPIO
- Dimensions – 78 x 26 mm
By default, the board runs Lua RTOS real-time operating system designed to run on embedded systems, and currently supporting ESP32, ESP8266 and PIC32MZ platforms. The OS has a 3-layer design:
- Top layer – Lua 5.3.4 interpreter with special modules to access the hardware (PIO, ADC, I2C, RTC, etc …), and middleware services provided by Lua RTOS (Lua Threads, LoRa WAN, MQTT, …).
- Middle layer – Real-Time micro-kernel powered by FreeRTOS.
- Bottom layer – Hardware abstraction layer, which talk directly with the platform hardware.
Lua RTOS boards can be programmed with Lua programming language directly, or using a block-based programming language that translates blocks to Lua.
ESP8622 and PIC32 targets have some limitations so features like SSL are not implemented, but ESP32 supports all features listed below:
- Lua Thread, Pthread API
- On-board editor, Shell
- FAT and SPIFFS file systems
- WiFi, Ethernet
- LoRaWAN class A & B node, LoRa WAN gateway
- ADC, SPI, UART, PIO, PWN, I2C, CAN,
- Sensor, Servo
Bluetooth is missing from the list. You’ll find Lua RTOS source code and instructions to get started on Github. The Wiki is also also a good place to get started with ESP32 N1 Board and Lua-RTOS.
Board pricing is currently a little on the high side, as ESP32 N1 board is sold for 30 Euros without Lora, and 40 Euros with LoRa. Worldwide shipping adds 5 Euros to the total. You’ll find more details, including the purchase links, on Whitecat ESP32 N1 page.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.