Please enable javascript, or click here to visit my ecommerce web site powered by Shopify.
Jump to: navigation, search




ROCK Pi 4 ya soporta libmraa y device tree overlay


Actualización de la Comunidad

Muchos de nuestros usuarios quieren usar HATs en ROCK Pi 4, los HATs son hardware adicional que se coloca sobre la placa principal. Los HATs pueden ampliar las posibilidades del hardware sin hacerlo tú mismo y los usan todo tipo de usuarios: makers, diys o incluso profesionales. El diseño altamente compatible del ROCK Pi 4 hace que funcione con muchos de los HATs existentes en el mercado. Pero esto sólo es ha nivel de hardware. Lo que anunciamos hoy dará libertad y potencia al GPIO de 40 pines del ROCK Pi mediante el soporte de device tree overlay y libmraa.

Mraa.png

Device tree es usado ampliamente en el mundo Linux ARM para describir el hardware, para que el núcleo conozca los recursos hardware como las direcciones de memoria, las asignaciones de gios, los números de IRQ, etc. Pero en el mundo de los HATs, los recursos hardware son dinámicos, los usuarios pueden usar diferentes HATs y diferentes HATs necesitan de diferentes recursos, el núcleo debería saber lo que el usuario ha cambiado en el hardware. La forma de actualizar el device tree sin recompilar el bloque device tree se llama device tree overlay.

Para usar device tree overlay, necesitarás instalar el último u-boot, u-boot comprobará y cargará los archivos dtbo antes de iniciar el núcleo. También, necesitas actualizar al último núcleo, que proporciona los archivos de configuración `/boot/hw_intfc.conf`, los que se muestran debajo:

# Hardware Interface Config

intfc:pwm0=off
intfc:pwm1=off
intfc:uart2=off
intfc:uart4=off
intfc:spi1=off
intfc:spi2=off
intfc:i2c2=off
intfc:i2c6=off
intfc:i2c7=off

# Configuracion DTS Overlay  Config
# 1. check the name.dtbo in /boot/overlays
# 2. add intfc:dtoverlay=name as below

#intfc:dtoverlay=at24c02
#intfc:dtoverlay=two-color-led
intfc:dtoverlay=console-disabled
#intfc:dtoverlay=console-on-uart4
#intfc:dtoverlay=devspi

You can just enable/disable the buses by set on/off, and load the dtbo with the `intfc:dtoverlay=xxx.dtbo`. The detailed parameter explanation can be found on the Rockpi4/hardware/devtree_overlays page.

MRAA is a project by Intel, now maintained as an open source project.

Libmraa is a C/C++ library with bindings to Java, Python and JavaScript to interface with the IO on some hardware platforms, with a structured and sane API where port names/numbering matches the board that you are on. Use of libmraa does not tie you to specific hardware with board detection done at runtime you can create portable code that will work across the supported platforms.

We have added libmraa support for ROCK Pi 4 and made a debian package. Pull requests are sent to the official libmraa, hope it will be officially supported soon. For more detailed usage of libmraa, please refer the Rockpi4/dev/libmraa wiki page.

With libmraa and device tree overlay, we can support a wide of HATs and sensors, users can program it with some high level languages such as python or javascripts. If you have some project ideas, let us know.


-- Radxa Team, 2019 in Baoan, Shenzhen, China