hardware
Read and control I2C and SPI peripherals on Sipeed boards like LicheeRV Nano, MaixCAM, and NanoKVM.
Introduction
This skill provides a comprehensive interface for hardware interaction on Sipeed embedded devices. It enables users to communicate with sensors, displays, and industrial controllers by abstracting I2C and SPI bus operations into simple, executable agent commands. Designed for hardware engineers, IoT developers, and makers, this skill simplifies the complex task of debugging and peripheral integration on ARM and RISC-V platforms. Users can detect bus availability, perform raw scans for device addresses, read sensor registers, and execute multi-byte SPI transactions without writing low-level drivers from scratch.
-
Full support for I2C bus detection, address scanning, and register-level read/write operations.
-
Comprehensive SPI device management including list, read, and write capabilities with mode validation.
-
Built-in safety checks for write operations, enforcing user confirmation for data modifications to prevent accidental hardware damage.
-
Extensive hardware support for common modules like AHT20 humidity sensors, BME280 barometric sensors, SSD1306 OLED displays, MPU6050 IMUs, DS3231 RTCs, and INA219 power monitors.
-
Pre-defined troubleshooting workflows for addressing common issues such as permission errors, bus numbering shifts, and pinmux conflicts common on shared-pin architectures.
-
Always verify your board's pinmux configuration before initialization, as I2C and SPI pins on Sipeed boards are frequently multiplexed with WiFi SDIO functions.
-
Use the i2c detect and spi list tools frequently to ensure bus assignments remain consistent after system reboots.
-
For write-sensitive applications, always ensure the confirm: true flag is utilized in your agent prompts.
-
Recommended for use in embedded system prototyping, automated sensor data logging, and peripheral testing where rapid iterative feedback is required.
-
Note: Some setups may require manual loading of kernel modules such as i2c-dev or the use of devmem for direct register-level pin configuration on specific Sipeed board models.
Repository Stats
- Stars
- 28,641
- Forks
- 4,101
- Open Issues
- 230
- Language
- Go
- Default Branch
- main
- Sync Status
- Idle
- Last Synced
- May 1, 2026, 09:35 AM