Към всички skills

hardware

sipeed · Инструменти

Read and control I2C and SPI peripherals on Sipeed boards (LicheeRV Nano, MaixCAM, NanoKVM).

Оригинален текст · няма потвърден превод на български

Първо прочетете инструкцията.

Файлът се зарежда от посочения източник само по ваше действие. Можете да го прочетете тук, да го копирате или да го запазите като .md.

Оригинален SKILL.md
GitHub хранилище
Звезди на репото
30 009
Лиценз
MIT
Последна проверка на записа
20.09.2026 г.

Добавете в своя инструмент.

Командата отваря избора на skills от репозитория. Прочетете файла и условията на автора преди изпълнение.

npx skills add sipeed/picoclaw

Страницата копира текст. Не инсталира и не изпълнява нищо на устройството ви.

Откъс от SKILL.md

Началото на файла на автора, без превод.

Hardware (I2C / SPI)

Use the i2c and spi tools to interact with sensors, displays, and other peripherals connected to the board.

Quick Start

# 1. Find available buses
i2c detect

# 2. Scan for connected devices
i2c scan  (bus: "1")

# 3. Read from a sensor (e.g. AHT20 temperature/humidity)
i2c read  (bus: "1", address: 0x38, register: 0xAC, length: 6)

# 4. SPI devices
spi list
spi read  (device: "2.0", length: 4)

Before You Start — Pinmux Setup

Most I2C/SPI pins are shared with WiFi on Sipeed boards. You must configure pinmux before use.

See references/board-pinout.md for board-specific commands.

Common steps:

  1. Stop WiFi if using shared pins: /etc/init.d/S30wifi stop
  2. Load i2c-dev module: modprobe i2c-dev
  3. Configure pinmux with devmem (board-specific)
  4. Verify with i2c detect and i2c scan

Safety

  • Write operations require confirm: true — always confirm with the user first
  • I2C addresses are validated to 7-bit range (0x03-0x77)
  • SPI modes are validated (0-3 only)
  • Maximum per-transaction: 256 bytes (I2C), 4096 bytes (SPI)

Common Devices

See references/common-devices.md for register maps and usage of popular sensors: AHT20, BME280, SSD1306 OLED, MPU6050 IMU, DS3231 RTC, INA219 power monitor, PCA9685 PWM, and more.

Troubleshooting

ProblemSolution
No I2C buses foundmodprobe i2c-dev and check device tree
Permission deniedRun as root or add user to i2c group
No devices on scanCheck wiring, pull-up resistors (4.7k typical), and pinmux
Bus number changedI2C adapter numbers can shift between boots; use i2c detect to find current assignment
WiFi stopped workingI2C-1/SPI-2 share pins with WiFi SDIO; can't use both simultaneously
devmem not foundDownload separately or use busybox devmem
SPI transfer returns all zerosCheck MISO wiring and device power
SPI transfer returns all 0xFFDevice not responding; check CS pin and clock polarity (mode)

Целият SKILL.md в GitHub