Arduino Boards With A Promising Future

These boards are very recent and have some interesting features. From left to right they are the Nano ESP32 which is low cost yet powerful, the Uno R4 Minima which is the not really compatible successor to the Uno R3, and the Uno R4 WiFi shown here in the tray.

Nano ESP32

This board uses an ESP32-S3 microcontroller which is dual core (and not ARM architecture!) with built-in WiFi and Bluetooth. Of particular interest is that it has FreeRTOS built-in. Normally the radios run on one core and the Arduino application on the second core, however applications can use both cores. One unfortunate result of having FreeRTOS is that timing is not as precise as there can be significant latencies as tasks are swapped.

That said, it looks like a good part if you want to use FreeRTOS. Even though FreeRTOS can be run on almost ever Arduino, having it integrated is a benefit. Here is the Blink demo written using FreeRTOS:

void TaskBlink(void *pvParameters);

void setup() { // Only creates a Task
  xTaskCreate(
    TaskBlink, "Blink", 2048, NULL, 2, NULL);
}

void loop() { // Not used!
}

void TaskBlink(void *pvParameters) {

  pinMode(LED_BUILTIN, OUTPUT);

  for (;;)  // never return.
  {
    digitalWrite(LED_BUILTIN, HIGH);
    vTaskDelay(500 / portTICK_PERIOD_MS);
    digitalWrite(LED_BUILTIN, LOW);
    vTaskDelay(500 / portTICK_PERIOD_MS);
  }
}

I’ve found the board to be finicky to get programmed (A USB-C port and good quality cable is a virtual necessity) and boot up time seems surprisingly long and annoying. But this part is well documented if you want to go beyond the Arduino basics. https://docs.arduino.cc/hardware/nano-esp32/ Not good for programming “to the metal” though.

Uno R4 Minima and Uno R4 WiFi

This new duo have been discussed in earlier posts here. Basically, the Minima is the intended replacement for the Uno R3, but fails in many respects. The WiFi version has a radio but also a funky LED display that will undoubtedly be covered up in any real application. See The new Arduino Uno R4 and Why the Arduino Uno R4 WIFI?