add rvnano picoclaw expansion board document

This commit is contained in:
916BGAI
2026-04-07 16:21:54 +08:00
parent 96920060d9
commit 99ce0aa54b
16 changed files with 296 additions and 4 deletions

View File

@@ -0,0 +1,146 @@
---
title: LicheeRV Nano PicoClaw Expansion Board
update:
- date: 2026-04-07
version: v0.0.1
author: 916BGAI
content:
- First version
---
## PicoClaw Expansion Board
The PicoClaw Expansion Board is a feature extension board built for **PicoClaw** interactive applications, based on the **LicheeRV Nano** development board. It is designed for voice interaction and local display scenarios, integrating display, buttons, status LEDs, battery management, and audio peripheral interfaces to quickly build a complete HMI terminal.
The board includes a **240×240 LCD** for system status, recognized text, conversation output, and UI menus. It also provides **2 onboard buttons** for mode switching and confirmation, and **2 LEDs** for power/running/status indication. A **Battery** connector is provided with charging support, with a **maximum charging power of 3W**. Speaker connection for voice playback is also supported.
With the customized image, the board can work with PicoClaw for real-time voice conversation: audio capture, ASR, generation, with key results shown on the LCD for a complete local interaction experience.
Main features of the PicoClaw Expansion Board:
- 240×240 LCD display
- 2 function buttons
- 2 status LEDs
- Battery interface (charging supported, max 3W)
- Speaker connection and voice output support
- Real-time conversation and result display (with customized image)
### About PicoClaw
<div align="center">
<img src="./../../../zh/lichee/assets/RV_Nano/picoclaw/picoclaw.jpeg" style="width: 90%; height: auto;" alt="picoclaw" >
</div>
PicoClaw is an open-source personal AI assistant project for low-resource devices, written from scratch in **Go**. It targets complete Agent capability on low-cost, low-power hardware. The project focuses on being lightweight, fast, and deployable across resource-constrained Linux devices and multiple CPU architectures.
Key PicoClaw features:
- **Ultra-light deployment**: optimized for low-memory devices.
- **Fast startup**: suitable for always-on local interaction.
- **Cross-platform**: supports RISC-V, ARM, MIPS, and x86.
- **Multi-channel access**: supports Telegram, Discord, WeChat, QQ, Slack, and more.
- **Rich model & tool ecosystem**: supports multiple LLM providers, MCP, web search, and skills.
- **Multiple operation modes**: WebUI, TUI, and CLI.
For the LicheeRV Nano + PicoClaw Expansion Board scenario, PicoClaw provides the upper software layer for voice interaction and local display. By configuring models, channels, and tools, you can quickly build a usable local AI interaction terminal.
Project URL: <https://github.com/sipeed/picoclaw>
## Image Download
Customized PicoClaw expansion-board image:
[Download](https://github.com/sipeed/LicheeRV-Nano-Build/releases)
File name: `picoclaw-rv-nano-YYYYMMDD.img.xz`
- Flashing method: You can use balenaEtcher to write the image directly to an SD card, or extract the `.xz` file first and then flash it using the `dd` command.
- Expansion-board side code in the image is based on Python, located at `/opt/app_picoclaw`, which is convenient for custom development.
## Quick Start
### 1. Network Connection
First, access the device console. Recommended methods:
- **Serial connection**: Use **UART0** exposed on **SBU1/SBU2** of the USB connector. With a USB Type-C breakout board, route **RX0/TX0** and connect using a serial tool.
- **USB NIC connection**: The device creates both **RNDIS** and **NCM** USB NICs by default. Check the USB NIC IP assigned on the host, then replace the last octet with `1` as the device IP. Example: if host IP is `10.166.194.100`, device IP is `10.166.194.1`.
<div align="center">
<img src="./../../../zh/lichee/assets/RV_Nano/picoclaw/usb_net.jpeg" style="width: 90%; height: auto;" alt="usb network" >
</div>
Then log in with SSH or serial. Default username/password are both `root`. After login, follow [Peripheral Usage](https://wiki.sipeed.com/hardware/en/lichee/RV_Nano/5_peripheral.html#WIFI) to connect Wi-Fi.
### 2. Configure PicoClaw
On first boot, PicoClaw is not initialized yet. You need initial configuration first. You can use Web UI or TUI. The following uses Web UI.
#### Web UI Setup
Open `http://<device-ip>:18080` in your browser. A token is required on first access; currently the default token is `root`.
#### Chat Model Setup
Open settings, select **Model**, then choose a provider and model. For example, you can use `openai/gpt-5.4` as the default model.
<div align="center">
<img src="./../../../zh/lichee/assets/RV_Nano/picoclaw/models.jpeg" style="width: 60%; height: auto; border: 1px solid #e5e7eb; border-radius: 4px; box-shadow: 0 2px 8px rgba(0,0,0,0.1);" alt="picoclaw models" >
</div>
- After configuration, click save and return to the chat page. You will see `Service is not running, please start it before chatting.` Click `Start Service` at the top-right, then wait for startup and begin chatting.
<div align="center">
<img src="./../../../zh/lichee/assets/RV_Nano/picoclaw/chat.jpeg" style="width: 95%; height: auto; border: 1px solid #e5e7eb; border-radius: 4px; box-shadow: 0 2px 8px rgba(0,0,0,0.1);" alt="picoclaw chat" >
</div>
#### Voice Model Setup
> Currently, PicoClaw's WebSocket channel does not support direct audio-stream input, so PicoClaw ASR cannot be called directly for voice conversation. ASR is currently independent from PicoClaw, but still reads PicoClaw config files for model settings.
To enable voice interaction, configure a voice model first. In the model page, click Add Model and configure an ASR model. Example: `qwen3/qwen3-asr-flash`.
<div align="center">
<img src="./../../../zh/lichee/assets/RV_Nano/picoclaw/asr.jpeg" style="width: 60%; height: auto; border: 1px solid #e5e7eb; border-radius: 4px; box-shadow: 0 2px 8px rgba(0,0,0,0.1);" alt="picoclaw asr" >
</div>
Currently supported ASR models:
| Model | Provider |
| --- | --- |
| `qwen3/qwen3-asr-flash-realtime` | Qwen |
| `qwen3/qwen3-asr-flash` | Qwen |
| `openai/whisper-1` | OpenAI |
| `groq/whisper-large-v3` | Groq |
| `groq/whisper-large-v3-turbo` | Groq |
| `elevenlabs/scribe_v1` | ElevenLabs |
<br>
> Note: keep `model alias` aligned with the model ID. For example, alias for `qwen3/qwen3-asr-flash-realtime` should be `qwen3-asr-flash-realtime`.
#### Try Voice Chat
After saving, press and hold the left `KEY1` button on the expansion board to record voice input. Release to trigger ASR and send the result to PicoClaw. After processing, ASR text and reply are displayed on screen.
<div style="display:flex; flex-direction:column; gap:10px; margin: 8px 0 16px;">
<div style="display:flex; gap:10px; justify-content:center;">
<img src="./../../../zh/lichee/assets/RV_Nano/picoclaw/picoclaw_board_1.jpeg" alt="picoclaw board 1" style="width:100%; min-width:180px; height:auto; border:1px solid #e5e7eb; border-radius:6px; box-shadow:0 2px 8px rgba(0,0,0,.1);" />
<img src="./../../../zh/lichee/assets/RV_Nano/picoclaw/picoclaw_board_2.jpeg" alt="picoclaw board 2" style="width:100%; min-width:180px; height:auto; border:1px solid #e5e7eb; border-radius:6px; box-shadow:0 2px 8px rgba(0,0,0,.1);" />
<img src="./../../../zh/lichee/assets/RV_Nano/picoclaw/picoclaw_board_3.jpeg" alt="picoclaw board 3" style="width:100%; min-width:180px; height:auto; border:1px solid #e5e7eb; border-radius:6px; box-shadow:0 2px 8px rgba(0,0,0,.1);" />
</div>
<div style="display:flex; gap:10px; justify-content:center;">
<img src="./../../../zh/lichee/assets/RV_Nano/picoclaw/picoclaw_board_4.jpeg" alt="picoclaw board 4" style="width:31%; min-width:180px; height:auto; border:1px solid #e5e7eb; border-radius:6px; box-shadow:0 2px 8px rgba(0,0,0,.1);" />
<img src="./../../../zh/lichee/assets/RV_Nano/picoclaw/picoclaw_board_5.jpeg" alt="picoclaw board 5" style="width:31%; min-width:180px; height:auto; border:1px solid #e5e7eb; border-radius:6px; box-shadow:0 2px 8px rgba(0,0,0,.1);" />
</div>
</div>
## FAQ
- Errors during conversation
- The model may be misconfigured, or unavailable. Check logs in Web UI for detailed errors.
- Check `/var/log/picoclaw-launcher.log` and `/var/log/picoclaw-worker.log` for error details.
- You can try deleting `/root/.picoclaw` and rebooting, then reconfigure.
- Errors when using `groq` voice models
- `groq` is currently not accessible in mainland China. Use another provider or access through a proxy.

View File

@@ -301,8 +301,8 @@ items:
file: lichee/RV_Nano/5_peripheral.md
- label: System Development
file: lichee/RV_Nano/6_develop_mainline.md
- label: test
file: lichee/RV_Nano/7_test_report.md
- label: PicoClaw Expansion Board
file: lichee/RV_Nano/7_picoclaw_board.md
- label: MMF Development Guide
file: lichee/RV_Nano/8_mmf_development_guide.md
- label: Lichee Zero

View File

@@ -0,0 +1,146 @@
---
title: LicheeRV Nano PicoClaw 扩展板
update:
- date: 2026-04-07
version: v0.0.1
author: 916BGAI
content:
- First version
---
## PicoClaw 扩展板
PicoClaw 扩展板是一款为 **PicoClaw** 交互应用打造、基于 **LicheeRV Nano** 开发板的功能扩展板,面向语音交互与本地显示场景,集成显示、按键、指示灯、电池管理与音频外设接口,便于快速搭建完整的人机交互终端。
扩展板搭载一块 **240×240 LCD 屏幕**,可用于展示系统状态、识别文本、对话结果与交互菜单;板载 **2 个按键**,用于模式切换、功能确认等操作;板载 **2 个 LED 灯**,用于电源、运行与状态提示。扩展板提供 **Battery 电池接口**,支持充电,**最大充电功率为 3W**。同时支持连接喇叭实现语音播放。
配合定制镜像后,扩展板可与 PicoClaw 协同实现实时语音对话:设备可进行语音采集、识别、生成,并将关键结果同步显示在屏幕上,提供完整的本地交互体验。
PicoClaw 扩展板的主要功能包括:
- 240×240 LCD 显示
- 2 个功能按键
- 2 个状态 LED
- Battery 接口(支持充电,最大 3W
- 支持喇叭连接与语音输出
- 支持实时对话与结果显示(需配合定制镜像)
### PicoClaw 介绍
<div align="center">
<img src="../assets/RV_Nano/picoclaw/picoclaw.jpeg" style="width: 90%; height: auto;" alt="picoclaw" >
</div>
PicoClaw 是一个面向低资源设备的开源个人 AI 助手项目,使用 **Go** 从零实现,目标是在低成本、低功耗设备上提供完整的 Agent 能力。项目强调“轻量、快速、可部署”:在资源受限平台上也可运行,并支持多种芯片架构与 Linux 设备。
PicoClaw 主要特性包括:
- **超轻量部署**:面向低内存设备优化,可在入门级硬件上运行。
- **快速启动**:适合本地常驻与即时交互场景。
- **跨平台支持**:支持 RISC-V、ARM、MIPS、x86 等多架构。
- **多通道接入**:可对接 Telegram、Discord、微信、QQ、Slack 等多种聊天平台。
- **丰富模型与工具生态**:支持多家 LLM Provider、MCP、Web 搜索与技能扩展。
- **多形态使用**:支持 WebUI、TUI、CLI 等管理与交互方式。
对于 LicheeRV Nano + PicoClaw 扩展板PicoClaw 提供语音对话与本地显示能力的上层软件基础:通过配置模型、通道与工具,可快速搭建可用的本地 AI 交互终端。
项目地址:<https://github.com/sipeed/picoclaw>
## 镜像地址
PicoClaw 扩展板定制镜像下载:
[下载地址](https://github.com/sipeed/LicheeRV-Nano-Build/releases)
文件picoclaw-rv-nano-YYYYMMDD.img.xz
- 烧录方式:可使用 balenaEtcher 直接将镜像烧录进 SD 卡;也可先解压 `.xz` 文件后,使用 `dd` 命令进行烧录。
- 镜像内扩展板功能代码基于 Python位于 `/opt/app_picoclaw` 目录下,便于按需二次开发和自定义。
## 快速上手
### 1. 连接网络
首先需要进入设备控制台,推荐以下两种方式:
- **串口连接**:可以使用 USB 接口上的 **SBU1/SBU2** 引出的 **UART0**,使用 USB Type-C 转接板引出 **RX0、TX0** 后连接串口工具。
- **USB 网卡连接**:设备默认会创建 **RNDIS****NCM** 两个 USB 网卡。先查看电脑侧分配到的 USB 网卡 IP再将 IP 最后一位改为 `1` 作为设备 IP。示例若主机识别到 `10.166.194.100`,则设备 IP 为 `10.166.194.1`
<div align="center">
<img src="../assets/RV_Nano/picoclaw/usb_net.jpeg" style="width: 90%; height: auto;" alt="usb network" >
</div>
然后可以使用 SSH 工具或者串口工具登录设备,默认用户名和密码均为 `root`。登录进设备后可以按照[外设使用](https://wiki.sipeed.com/hardware/zh/lichee/RV_Nano/5_peripheral.html#WIFI)中的方法连接 Wi-Fi。
### 2. 配置 PicoClaw
第一次进入系统后PicoClaw 还未完成初始化,需要先进行配置。可以使用 Web UI 或者 TUI 进行配置,以下以 Web UI 为例:
#### Web UI 配置
在浏览器中访问 `http://<设备 IP>:18080`,进入 PicoClaw Web UI。第一次进入需要输入令牌目前令牌默认为 `root`
#### 对话模型配置
进入设置界面,选择 **模型**,根据需要选择合适的模型提供商和模型。例如可选择 `openai/gpt-5.4` 作为默认模型。
<div align="center">
<img src="../assets/RV_Nano/picoclaw/models.jpeg" style="width: 60%; height: auto; border: 1px solid #e5e7eb; border-radius: 4px; box-shadow: 0 2px 8px rgba(0,0,0,0.1);" alt="picoclaw models" >
</div>
- 配置完成后,点击保存并返回对话界面,此时上方会提示 `服务未运行,请先启动以进行对话。`,点击右上角的 `启动服务` 按钮,等待服务启动完成后即可开始对话。
<div align="center">
<img src="../assets/RV_Nano/picoclaw/chat.jpeg" style="width: 95%; height: auto; border: 1px solid #e5e7eb; border-radius: 4px; box-shadow: 0 2px 8px rgba(0,0,0,0.1);" alt="picoclaw chat" >
</div>
#### 语音模型配置
> 目前 PicoClaw 的 WebSocket channel 还不支持直接输入音频流,因此无法直接调用 PicoClaw 的 ASR 功能进行语音对话。目前 ASR 功能暂时独立于 PicoClaw不过依旧通过读取 PicoClaw 的配置文件来进行模型配置。
现在还没法直接和 PicoClaw 进行语音对话,需要先配置语音模型。进入模型界面,点击添加模型,然后配置一个 ASR 模型,下面以 `qwen3/qwen3-asr-flash` 为例:
<div align="center">
<img src="../assets/RV_Nano/picoclaw/asr.jpeg" style="width: 60%; height: auto; border: 1px solid #e5e7eb; border-radius: 4px; box-shadow: 0 2px 8px rgba(0,0,0,0.1);" alt="picoclaw asr" >
</div>
下面是目前支持的 ASR 模型列表:
| 模型 | 提供商 |
| --- | --- |
| `qwen3/qwen3-asr-flash-realtime` | Qwen |
| `qwen3/qwen3-asr-flash` | Qwen |
| `openai/whisper-1` | OpenAI |
| `groq/whisper-large-v3` | Groq |
| `groq/whisper-large-v3-turbo` | Groq |
| `elevenlabs/scribe_v1` | ElevenLabs |
<br>
> 配置的时候需要注意 `模型别名` 要和模型对应,例如 `qwen3/qwen3-asr-flash-realtime` 的别名应为 `qwen3-asr-flash-realtime`。
#### 尝试对话
配置完成后,点击保存。然后按住扩展板左侧的 `KEY1` 按键进行语音输入,松开后会触发 ASR 识别并将结果发送给 PicoClaw。等待 PicoClaw 处理完成后,识别结果和对话回复会显示在屏幕上。
<div style="display:flex; flex-direction:column; gap:10px; margin: 8px 0 16px;">
<div style="display:flex; gap:10px; justify-content:center;">
<img src="../assets/RV_Nano/picoclaw/picoclaw_board_1.jpeg" alt="picoclaw board 1" style="width:100%; min-width:180px; height:auto; border:1px solid #e5e7eb; border-radius:6px; box-shadow:0 2px 8px rgba(0,0,0,.1);" />
<img src="../assets/RV_Nano/picoclaw/picoclaw_board_2.jpeg" alt="picoclaw board 2" style="width:100%; min-width:180px; height:auto; border:1px solid #e5e7eb; border-radius:6px; box-shadow:0 2px 8px rgba(0,0,0,.1);" />
<img src="../assets/RV_Nano/picoclaw/picoclaw_board_3.jpeg" alt="picoclaw board 3" style="width:100%; min-width:180px; height:auto; border:1px solid #e5e7eb; border-radius:6px; box-shadow:0 2px 8px rgba(0,0,0,.1);" />
</div>
<div style="display:flex; gap:10px; justify-content:center;">
<img src="../assets/RV_Nano/picoclaw/picoclaw_board_4.jpeg" alt="picoclaw board 4" style="width:31%; min-width:180px; height:auto; border:1px solid #e5e7eb; border-radius:6px; box-shadow:0 2px 8px rgba(0,0,0,.1);" />
<img src="../assets/RV_Nano/picoclaw/picoclaw_board_5.jpeg" alt="picoclaw board 5" style="width:31%; min-width:180px; height:auto; border:1px solid #e5e7eb; border-radius:6px; box-shadow:0 2px 8px rgba(0,0,0,.1);" />
</div>
</div>
## FAQ
- 对话过程中出现报错
- 可能是模型配置有误,或者当前模型不可用。可以在 Web UI 查看日志确认具体错误信息。
- 查看 ```/var/log/picoclaw-launcher.log``` 和 ```/var/log/picoclaw-worker.log``` 两个日志文件,确认报错信息。
- 可以尝试删除 ```/root/.picoclaw``` 目录后重启设备,重新进行配置。
- 使用 ```groq``` 语音模型时报错
- 目前 ```groq``` 不支持中国大陆访问,可以使用其他模型提供商的模型,或者使用代理工具访问。

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

View File

@@ -307,8 +307,8 @@ items:
file: lichee/RV_Nano/5_peripheral.md
- label: 系统开发
file: lichee/RV_Nano/6_develop_mainline.md
- label: 卡测试
file: lichee/RV_Nano/7_test_report.md
- label: PicoClaw 扩展
file: lichee/RV_Nano/7_picoclaw_board.md
- label: MMF开发指南
file: lichee/RV_Nano/8_mmf_development_guide.md
- label: LicheePI Zero