El IDE de Arduino ahora soporta el microcontrolador de Raspberry

No hace mucho tiempo la fundación Raspberry Pi lanzó su popular tarjeta Raspberry Pi Pico con el nuevo microcontrolador RP2040. Para sorpresa de muchos, la organización Arduino estuvo colaborando con Raspberry antes del lanzamiento. La tarjeta, que utiliza el mismo controlador, estará enfocada a aplicaciones IoT. Sin embargo, hasta hoy no había integración de Arduino con la tarjeta de Raspberry Pi. Hasta ahora…

El Arduino MBED Core

Como decíamos en el titulo, Arduino ya ofrece soporte a las diferentes tarjetas que se fabrican alrededor del micro de Raspberry. Esto es gracias al núcleo MBED oficial de Arduino. Dicho núcleo consiste en un Sistema Operativo que, en tarjetas como la 33 BLE Sense o la Portenta H7, ha permitido desarrollar más fácilmente programas para usarlos. Esto se debe a que se basaron en MBED OS, otro sistema operativo que ya contenía librerías y drivers. La decisión de hacer el port a la nueva generación de tarjetas MKR fue por que no existia software desarrollado para el chip Nordic nRF52840 Cortex-M4.

El Arduino MBED Core se basa en el RTOS desarrollado por MBED. Esto permitió desarrollar desde librerías y drivers existentes, lo que acelera el proceso y reusabilidad del software. Vía: Arduino

Los beneficios usar el núcleo de MBED se dan desde que es un Sistema Operativo en Tiempo Real (RTOS) ya que permite aprovechar mejor los recursos de las tarjetas más potentes. Si necesitas usar un ciclo de setup() y un loop() está perfecto, pero si quieres llevar las cosas más lejos puedes usar tareas concurrentes. Y no sólo eso, también permitirá emplear modos de bajo consumo.

Un aspecto importante de la integración de MBED OS es que Arduino dará soporte a las tarjetas desarrolladas anteriormente con MBED, por lo que el abanico de hardware disponible se amplia aún más.

Aterrizándolo al RP2040

Con esta introducción podemos visualizar la importancia de esta noticia. Arduino ha desarrollado un sistema operativo capaz de aprovechar el potencial ya desarrollado por MBED aplicándolo al nuevo microcontrolador RP2040. Esto nos permitirá expandir las posibilidades de desarrollo que aún no estaban disponibles con los IDEs proporcionados por Raspberry y con la comodidad del IDE de Arduino. Esto, aplicado a las tarjetas que usen el RP2040 como núcleo, como las tarjetas desarrolladas por Pimoroni, Sparkfun, ArduCam, etc.

Diferentes tarjetas que usan el RP2040 como base. Vía: Raspberry Pi

Como las librerías desarrolladas en MBED están estandarizadas uno podrá desarrollar fácilmente un código para la Raspberry Pi Pico y luego modificarlo un poco para usarlo con la Nano RP2040 Connect o con la ItsyBitsy RP2040. Y como el Arduino MBED Core esta bien documentado, uno podrá desarrollar su propia tarjeta y adaptar el sistema operativo para que sea compatible.

Conclusiones:

Es una gran noticia que ya exista soporte para las tarjetas que usan el RP2040, en especial la Raspberry Pi Pico. Esperamos que se vuelva popular el uso de estas tarjetas y veamos muchos proyectos maker empleando las librerías de Arduino MBED Core.

Via: blog.arduino.cc

Referencias:

Arduino Mbed Core for RP2040 boards

Why we chose to build the Arduino Nano 33 BLE core on Mbed OS

Arduino Core MBED – GitHub