🛠 Configuración de E/S (GPIO, sensores) en PlugMate

TrustKernel PlugMate : Ordenador en miniatura USB-C seguro con PlugOS · avance · Accédez aux interfaces matérielles basses niveau via les drivers virtualisés de PlugOS pour connecter capteurs et périphériques.

Objetivos

Este tutorial avanzado explica cómo interactuar con las interfaces de entrada/salida (GPIO, UART, I2C) en la tarjeta PlugMate. Aunque el dispositivo carece de conectores físicos externos, PlugOS expone estos buses a través de una capa de virtualización segura. El objetivo es entender cómo las aplicaciones internas se comunican con sensores teóricos o módulos de desarrollo conectados mediante un hub USB-C compatible, respetando el estricto aislamiento del sistema.

Material Necesario

Pasos

Conecte el PlugMate al host. Inicie el cliente PlugMate. Una vez iniciado el sistema (aprox. 24s), abra una terminal en el host y conéctese mediante ADB o SSH si está habilitado en los ajustes de desarrollador. ``bash adb shell ``

PlugOS utiliza controladores específicos para exponer los buses. Verifique su presencia en el sistema de archivos virtual. ``bash ls -l /dev/virtual_gpio* ls -l /dev/virtual_i2c* `` Si los nodos no existen, active el modo desarrollador en los ajustes de seguridad del cliente host.

Utilice la utilidad gpioctl proporcionada por TrustKernel para exportar un pin lógico. Tenga en cuenta que los números de pin corresponden a la tabla de mapeo interna del SoC MediaTek Helio G80, no a pines físicos externos. ``bash gpioctl export 18 gpioctl set 18 1 ``

Para leer un sensor conectado mediante un adaptador compatible, use i2cget. La dirección es la del dispositivo virtualizado. ``bash i2cget -f -y 2 0x48 0x00 `` Este comando lee el registro 0x00 del dispositivo en la dirección 0x48 en el bus 2. El canal USB-C cifrado transporta estas solicitudes al host si el sensor está conectado físicamente al host y retransmitido por el cliente.

Asegúrese de que el firewall del sistema permita el acceso. Los datos del sensor permanecen aislados del host. Cualquier intento de acceder a registros de hardware no virtualizados es bloqueado por el hipervisor.

  1. Conexión y acceso root
  2. Verificar controladores virtualizados
  3. Configurar bus GPIO
  4. Leer un sensor vía I2C
  5. Seguridad y aislamiento

Verificación

Ejecute gpioctl get 18 para confirmar el estado del pin. Para I2C, verifique que el valor leído coincida con los datos simulados o reales del sensor. Los registros del sistema (logcat | grep VirtualIO) deben mostrar transacciones exitosas sin errores de permiso.

Para ir más allá

Explore la API NDK de PlugOS para desarrollar aplicaciones nativas que interactúen con estos buses. Tenga en cuenta que la seguridad del PIN de coacción borra las claves de cifrado de los datos intercambiados, haciendo inútil cualquier intercepción. Para proyectos IoT complejos, combine este enfoque con la virtualización de GPS y cámara para crear contextos de entrada/salida ricos y seguros.

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales