[{"data":1,"prerenderedAt":1886},["ShallowReactive",2],{"navigation-zh":3,"navigation-en":41,"\u002Fdocs\u002Fuser-manual":78,"\u002Fdocs\u002Fuser-manual-surround":1881},[4],{"title":5,"path":6,"stem":7,"children":8,"icon":10},"概览","\u002Fdocs","docs\u002F1.index",[9,11,16,21,26,31,36],{"title":5,"path":6,"stem":7,"icon":10},"i-lucide-house",{"title":12,"path":13,"stem":14,"icon":15},"快速使用指南","\u002Fdocs\u002Fquick-start","docs\u002F2.quick-start","i-lucide-rocket",{"title":17,"path":18,"stem":19,"icon":20},"产品介绍书","\u002Fdocs\u002Fproduct-brief","docs\u002F3.product-brief","i-lucide-layout-dashboard",{"title":22,"path":23,"stem":24,"icon":25},"用户详细使用手册","\u002Fdocs\u002Fuser-manual","docs\u002F4.user-manual","i-lucide-book-open",{"title":27,"path":28,"stem":29,"icon":30},"硬件配置说明","\u002Fdocs\u002Fhardware","docs\u002F5.hardware","i-lucide-cpu",{"title":32,"path":33,"stem":34,"icon":35},"视频转换器使用说明","\u002Fdocs\u002Fvideo-converter","docs\u002F6.video-converter","i-lucide-video",{"title":37,"path":38,"stem":39,"icon":40},"固件烧录","\u002Fdocs\u002Ffirmware","docs\u002F7.firmware","i-lucide-download",[42],{"title":43,"path":44,"stem":45,"children":46,"page":77},"En","\u002Fen","en",[47],{"title":48,"path":49,"stem":50,"children":51,"icon":10},"Overview","\u002Fen\u002Fdocs","en\u002Fdocs\u002F1.index",[52,53,57,61,65,69,73],{"title":48,"path":49,"stem":50,"icon":10},{"title":54,"path":55,"stem":56,"icon":15},"Quick Start Guide","\u002Fen\u002Fdocs\u002Fquick-start","en\u002Fdocs\u002F2.quick-start",{"title":58,"path":59,"stem":60,"icon":20},"Product Brief","\u002Fen\u002Fdocs\u002Fproduct-brief","en\u002Fdocs\u002F3.product-brief",{"title":62,"path":63,"stem":64,"icon":25},"User Manual","\u002Fen\u002Fdocs\u002Fuser-manual","en\u002Fdocs\u002F4.user-manual",{"title":66,"path":67,"stem":68,"icon":30},"Hardware Configuration","\u002Fen\u002Fdocs\u002Fhardware","en\u002Fdocs\u002F5.hardware",{"title":70,"path":71,"stem":72,"icon":35},"Video Converter User Guide","\u002Fen\u002Fdocs\u002Fvideo-converter","en\u002Fdocs\u002F6.video-converter",{"title":74,"path":75,"stem":76,"icon":40},"Firmware","\u002Fen\u002Fdocs\u002Ffirmware","en\u002Fdocs\u002F7.firmware",false,{"id":79,"title":22,"body":80,"description":1871,"extension":1872,"links":1873,"meta":1877,"navigation":1878,"path":23,"seo":1879,"stem":24,"__hash__":1880},"docsZh\u002Fdocs\u002F4.user-manual.md",{"type":81,"value":82,"toc":1830},"minimark",[83,88,93,161,165,189,193,197,250,254,258,262,272,283,290,293,307,311,314,329,333,337,340,358,362,365,385,388,403,407,472,476,480,497,501,504,508,512,515,521,525,536,540,544,626,630,633,722,728,792,796,799,841,844,909,913,916,966,971,975,979,982,1079,1082,1127,1131,1138,1141,1156,1159,1240,1243,1324,1327,1370,1413,1416,1542,1545,1559,1563,1566,1610,1613,1627,1631,1634,1637,1648,1652,1788,1792,1814,1818,1826],[84,85,87],"h2",{"id":86},"_1-使用前准备","1. 使用前准备",[89,90,92],"h3",{"id":91},"_11-物品清单","1.1 物品清单",[94,95,96,109],"table",{},[97,98,99],"thead",{},[100,101,102,106],"tr",{},[103,104,105],"th",{},"项目",[103,107,108],{},"用途",[110,111,112,121,129,137,145,153],"tbody",{},[100,113,114,118],{},[115,116,117],"td",{},"RYMCU BigSmart AI助手",[115,119,120],{},"主设备",[100,122,123,126],{},[115,124,125],{},"USB Type-C 数据线",[115,127,128],{},"供电、串口日志、固件烧录",[100,130,131,134],{},[115,132,133],{},"5V USB 电源或电脑 USB 口",[115,135,136],{},"供电",[100,138,139,142],{},[115,140,141],{},"MicroSD 卡",[115,143,144],{},"存放 MP3、视频和其他资源",[100,146,147,150],{},[115,148,149],{},"蓝牙 HID 手柄",[115,151,152],{},"游戏控制，可选",[100,154,155,158],{},[115,156,157],{},"2.4G Wi-Fi 网络",[115,159,160],{},"小智联网、网络电台、MQTT 等功能",[89,162,164],{"id":163},"_12-注意事项","1.2 注意事项",[166,167,168,172,175,178,181],"ul",{},[169,170,171],"li",{},"使用可传输数据的 USB 线，只有充电功能的线无法烧录或查看串口。",[169,173,174],{},"MicroSD 卡建议格式化为 FAT32。",[169,176,177],{},"ESP32-S3 只支持 2.4G Wi-Fi，请不要选择 5G-only 网络。",[169,179,180],{},"摄像头、音频、屏幕和 Wi-Fi 都会占用较多内存，开发调试时建议先验证基础功能，再逐项打开高级功能。",[169,182,183,184,188],{},"本手册的软件操作以 ",[185,186,187],"code",{},"E:\\RYMCU\\xiaozhi"," 中的 BigSmart 小智固件为参考；如果你使用其他固件，按键和菜单行为可能不同。",[84,190,192],{"id":191},"_2-开发环境","2. 开发环境",[89,194,196],{"id":195},"_21-推荐环境","2.1 推荐环境",[94,198,199,209],{},[97,200,201],{},[100,202,203,206],{},[103,204,205],{},"工具",[103,207,208],{},"建议版本\u002F说明",[110,210,211,219,227,235,243],{},[100,212,213,216],{},[115,214,215],{},"ESP-IDF",[115,217,218],{},"5.4 及以上",[100,220,221,224],{},[115,222,223],{},"IDE",[115,225,226],{},"VSCode、Cursor 或命令行",[100,228,229,232],{},[115,230,231],{},"串口工具",[115,233,234],{},"ESP-IDF Monitor、PuTTY、MobaXterm 或其他串口终端",[100,236,237,240],{},[115,238,239],{},"固件工程",[115,241,242],{},"当前仓库",[100,244,245,248],{},[115,246,247],{},"硬件资料",[115,249,242],{},[84,251,253],{"id":252},"_3-固件烧录","3. 固件烧录",[89,255,257],{"id":256},"_31-使用仓库内合并固件烧录","3.1 使用仓库内合并固件烧录",[259,260,261],"p",{},"当前仓库已提供 BigSmart 合并固件：",[263,264,270],"pre",{"className":265,"code":267,"language":268,"meta":269},[266],"language-text","firmware\u002Frymcu-V2.3.28-merged.bin\nfirmware\u002Frymcu-V2.3.19-merged.bin\nfirmware\u002Fxiaozhi-esp32-merged.bin\nfirmware\u002Fespressif-brookesia-merged.bin\n","text","",[185,271,267],{"__ignoreMap":269},[259,273,274,275,278,279,282],{},"默认建议先烧录 RYMCU 官方固件 ",[185,276,277],{},"rymcu-V2.3.28-merged.bin","。旧版 ",[185,280,281],{},"rymcu-V2.3.19-merged.bin"," 仍保留用于回退。",[259,284,285,286,289],{},"V2.3.28 预编译固件包含天气、日历、Codex 状态应用、Smart Home MQTT\u002FEndpoint、NES 启动器和 NES 专用启动模式。该文件不包含 2026-07-28 提交 ",[185,287,288],{},"b1d1c08"," 中后续的 NES 显示、音频和音量控制调整。",[259,291,292],{},"可使用 ESP-IDF、esptool 或图形化烧录工具写入 ESP32-S3。若使用命令行，常见方式为：",[263,294,298],{"className":295,"code":296,"language":297,"meta":269,"style":269},"language-powershell shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","esptool.py --chip esp32s3 -p COM端口 -b 460800 write_flash 0x0 firmware\\rymcu-V2.3.28-merged.bin\n","powershell",[185,299,300],{"__ignoreMap":269},[301,302,305],"span",{"class":303,"line":304},"line",1,[301,306,296],{},[89,308,310],{"id":309},"_32-进入下载模式","3.2 进入下载模式",[259,312,313],{},"如果自动下载失败，可按以下方式手动进入下载模式：",[315,316,317,320,323,326],"ol",{},[169,318,319],{},"按住 Boot 键。",[169,321,322],{},"复位或重新上电。",[169,324,325],{},"松开 Boot 键。",[169,327,328],{},"重新执行烧录命令。",[84,330,332],{"id":331},"_4-首次启动与配网","4. 首次启动与配网",[89,334,336],{"id":335},"_41-启动检查","4.1 启动检查",[259,338,339],{},"烧录完成后设备会重启。正常情况下可以看到：",[166,341,342,345,348,355],{},[169,343,344],{},"屏幕亮起并显示小智相关界面。",[169,346,347],{},"串口日志打印板级初始化信息。",[169,349,350,351,354],{},"SD 卡存在时，日志显示挂载到 ",[185,352,353],{},"\u002Fsdcard","。",[169,356,357],{},"Wi-Fi 未配置时，设备进入配网流程。",[89,359,361],{"id":360},"_42-wi-fi-配网","4.2 Wi-Fi 配网",[259,363,364],{},"小智参考工程包含 BluFi 配网文档。典型流程：",[315,366,367,373,376,379,382],{},[169,368,369,370,354],{},"编译时启用 ",[185,371,372],{},"WiFi Configuration Method -> Esp Blufi",[169,374,375],{},"设备首次启动且没有保存的 Wi-Fi 时自动进入配网。",[169,377,378],{},"手机使用 EspBlufi App 或兼容 BluFi 客户端搜索设备。",[169,380,381],{},"连接设备后输入 2.4G Wi-Fi 的 SSID 和密码。",[169,383,384],{},"设备连接成功后会保存配置，后续自动联网。",[259,386,387],{},"如果固件进入运行态后需要重新配网，可使用以下方式之一：",[166,389,390,393,400],{},[169,391,392],{},"设备启动阶段单击 Boot 键进入配网。",[169,394,395,396,399],{},"通过 MCP 工具 ",[185,397,398],{},"self.system.reconfigure_wifi"," 请求重新配网。",[169,401,402],{},"清除 NVS 或重新烧录擦除数据后重新启动。",[84,404,406],{"id":405},"_5-按键与基础交互","5. 按键与基础交互",[94,408,409,419],{},[97,410,411],{},[100,412,413,416],{},[103,414,415],{},"操作",[103,417,418],{},"功能",[110,420,421,429,437,448,456,464],{},[100,422,423,426],{},[115,424,425],{},"电源键长按约 3 秒",[115,427,428],{},"开机\u002F关机，取决于电源管理电路状态",[100,430,431,434],{},[115,432,433],{},"Boot 键单击",[115,435,436],{},"启动阶段进入配网；运行时切换对话状态",[100,438,439,442],{},[115,440,441],{},"Boot 键双击",[115,443,444,445],{},"在空闲状态切换设备侧 AEC 开关，需固件启用 ",[185,446,447],{},"CONFIG_USE_DEVICE_AEC",[100,449,450,453],{},[115,451,452],{},"GPIO10\u002FPTT 键按下",[115,454,455],{},"开始监听语音",[100,457,458,461],{},[115,459,460],{},"GPIO10\u002FPTT 键松开",[115,462,463],{},"结束监听语音",[100,465,466,469],{},[115,467,468],{},"触摸屏点击\u002F滑动",[115,470,471],{},"取决于当前固件界面和应用逻辑",[84,473,475],{"id":474},"_6-语音助手使用","6. 语音助手使用",[89,477,479],{"id":478},"_61-对话","6.1 对话",[315,481,482,485,488,491,494],{},[169,483,484],{},"确保设备已连接 Wi-Fi。",[169,486,487],{},"单击 Boot 键切换到对话\u002F监听状态，或按住 GPIO10 PTT 键开始说话。",[169,489,490],{},"对设备说出问题或指令。",[169,492,493],{},"松开 PTT 键或等待设备结束监听。",[169,495,496],{},"设备通过扬声器播报回复，屏幕同步显示状态。",[89,498,500],{"id":499},"_62-aec-切换","6.2 AEC 切换",[259,502,503],{},"设备侧 AEC 用于抑制扬声器回声。固件启用后，在空闲状态双击 Boot 键可切换 AEC。若语音识别时设备自己的播报声容易被再次采集，可尝试开启 AEC；若环境较简单，也可以关闭以降低处理开销。",[84,505,507],{"id":506},"_7-sd-卡使用","7. SD 卡使用",[89,509,511],{"id":510},"_71-格式与目录","7.1 格式与目录",[259,513,514],{},"推荐将 MicroSD 卡格式化为 FAT32，并按需创建目录：",[263,516,519],{"className":517,"code":518,"language":268,"meta":269},[266],"\u002Fsdcard\n├── music\n│   ├── song1.mp3\n│   └── song2.mp3\n└── test.mp3\n",[185,520,518],{"__ignoreMap":269},[89,522,524],{"id":523},"_72-sd-卡挂载检查","7.2 SD 卡挂载检查",[259,526,527,528,531,532,535],{},"启动日志中若出现 ",[185,529,530],{},"SD card mounted at \u002Fsdcard","，说明挂载成功。也可以调用 ",[185,533,534],{},"self.media.list_mp3_files"," 检查是否能读取 MP3 文件。",[84,537,539],{"id":538},"_8-本地-mp3-播放","8. 本地 MP3 播放",[89,541,543],{"id":542},"_81-支持能力","8.1 支持能力",[94,545,546,555],{},[97,547,548],{},[100,549,550,552],{},[103,551,418],{},[103,553,554],{},"MCP 工具",[110,556,557,567,577,586,596,606,616],{},[100,558,559,562],{},[115,560,561],{},"播放指定 MP3",[115,563,564],{},[185,565,566],{},"self.media.play_mp3",[100,568,569,572],{},[115,570,571],{},"停止播放",[115,573,574],{},[185,575,576],{},"self.media.stop_mp3",[100,578,579,582],{},[115,580,581],{},"列出 MP3 文件",[115,583,584],{},[185,585,534],{},[100,587,588,591],{},[115,589,590],{},"播放测试文件",[115,592,593],{},[185,594,595],{},"self.media.play_test_mp3",[100,597,598,601],{},[115,599,600],{},"查询播放状态",[115,602,603],{},[185,604,605],{},"self.media.get_mp3_state",[100,607,608,611],{},[115,609,610],{},"下一首",[115,612,613],{},[185,614,615],{},"self.media.play_next",[100,617,618,621],{},[115,619,620],{},"上一首",[115,622,623],{},[185,624,625],{},"self.media.play_previous",[89,627,629],{"id":628},"_82-示例","8.2 示例",[259,631,632],{},"播放 SD 卡中的音乐：",[263,634,638],{"className":635,"code":636,"language":637,"meta":269,"style":269},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"tool\": \"self.media.play_mp3\",\n  \"arguments\": {\n    \"filepath\": \"\u002Fsdcard\u002Fmusic\u002Fsong1.mp3\"\n  }\n}\n","json",[185,639,640,646,673,688,710,716],{"__ignoreMap":269},[301,641,642],{"class":303,"line":304},[301,643,645],{"class":644},"sMK4o","{\n",[301,647,649,652,656,659,662,665,668,670],{"class":303,"line":648},2,[301,650,651],{"class":644},"  \"",[301,653,655],{"class":654},"spNyl","tool",[301,657,658],{"class":644},"\"",[301,660,661],{"class":644},":",[301,663,664],{"class":644}," \"",[301,666,566],{"class":667},"sfazB",[301,669,658],{"class":644},[301,671,672],{"class":644},",\n",[301,674,676,678,681,683,685],{"class":303,"line":675},3,[301,677,651],{"class":644},[301,679,680],{"class":654},"arguments",[301,682,658],{"class":644},[301,684,661],{"class":644},[301,686,687],{"class":644}," {\n",[301,689,691,694,698,700,702,704,707],{"class":303,"line":690},4,[301,692,693],{"class":644},"    \"",[301,695,697],{"class":696},"sBMFI","filepath",[301,699,658],{"class":644},[301,701,661],{"class":644},[301,703,664],{"class":644},[301,705,706],{"class":667},"\u002Fsdcard\u002Fmusic\u002Fsong1.mp3",[301,708,709],{"class":644},"\"\n",[301,711,713],{"class":303,"line":712},5,[301,714,715],{"class":644},"  }\n",[301,717,719],{"class":303,"line":718},6,[301,720,721],{"class":644},"}\n",[259,723,724,725,727],{},"列出 ",[185,726,353],{}," 下的 MP3 文件：",[263,729,731],{"className":635,"code":730,"language":637,"meta":269,"style":269},"{\n  \"tool\": \"self.media.list_mp3_files\",\n  \"arguments\": {\n    \"directory\": \"\u002Fsdcard\"\n  }\n}\n",[185,732,733,737,755,767,784,788],{"__ignoreMap":269},[301,734,735],{"class":303,"line":304},[301,736,645],{"class":644},[301,738,739,741,743,745,747,749,751,753],{"class":303,"line":648},[301,740,651],{"class":644},[301,742,655],{"class":654},[301,744,658],{"class":644},[301,746,661],{"class":644},[301,748,664],{"class":644},[301,750,534],{"class":667},[301,752,658],{"class":644},[301,754,672],{"class":644},[301,756,757,759,761,763,765],{"class":303,"line":675},[301,758,651],{"class":644},[301,760,680],{"class":654},[301,762,658],{"class":644},[301,764,661],{"class":644},[301,766,687],{"class":644},[301,768,769,771,774,776,778,780,782],{"class":303,"line":690},[301,770,693],{"class":644},[301,772,773],{"class":696},"directory",[301,775,658],{"class":644},[301,777,661],{"class":644},[301,779,664],{"class":644},[301,781,353],{"class":667},[301,783,709],{"class":644},[301,785,786],{"class":303,"line":712},[301,787,715],{"class":644},[301,789,790],{"class":303,"line":718},[301,791,721],{"class":644},[84,793,795],{"id":794},"_9-网络电台","9. 网络电台",[259,797,798],{},"联网后可使用网络电台功能。常用工具：",[94,800,801,809],{},[97,802,803],{},[100,804,805,807],{},[103,806,418],{},[103,808,554],{},[110,810,811,821,831],{},[100,812,813,816],{},[115,814,815],{},"播放电台",[115,817,818],{},[185,819,820],{},"self.radio.play_url",[100,822,823,826],{},[115,824,825],{},"停止电台",[115,827,828],{},[185,829,830],{},"self.radio.stop",[100,832,833,836],{},[115,834,835],{},"查询状态",[115,837,838],{},[185,839,840],{},"self.radio.get_status",[259,842,843],{},"示例：",[263,845,847],{"className":635,"code":846,"language":637,"meta":269,"style":269},"{\n  \"tool\": \"self.radio.play_url\",\n  \"arguments\": {\n    \"station_name\": \"动感101\"\n  }\n}\n",[185,848,849,853,871,883,901,905],{"__ignoreMap":269},[301,850,851],{"class":303,"line":304},[301,852,645],{"class":644},[301,854,855,857,859,861,863,865,867,869],{"class":303,"line":648},[301,856,651],{"class":644},[301,858,655],{"class":654},[301,860,658],{"class":644},[301,862,661],{"class":644},[301,864,664],{"class":644},[301,866,820],{"class":667},[301,868,658],{"class":644},[301,870,672],{"class":644},[301,872,873,875,877,879,881],{"class":303,"line":675},[301,874,651],{"class":644},[301,876,680],{"class":654},[301,878,658],{"class":644},[301,880,661],{"class":644},[301,882,687],{"class":644},[301,884,885,887,890,892,894,896,899],{"class":303,"line":690},[301,886,693],{"class":644},[301,888,889],{"class":696},"station_name",[301,891,658],{"class":644},[301,893,661],{"class":644},[301,895,664],{"class":644},[301,897,898],{"class":667},"动感101",[301,900,709],{"class":644},[301,902,903],{"class":303,"line":712},[301,904,715],{"class":644},[301,906,907],{"class":303,"line":718},[301,908,721],{"class":644},[84,910,912],{"id":911},"_10-天气日历codex-与-nes","10. 天气、日历、Codex 与 NES",[259,914,915],{},"V2.3.28 固件在 Launcher 中新增或完善了多个应用入口：",[94,917,918,928],{},[97,919,920],{},[100,921,922,925],{},[103,923,924],{},"应用",[103,926,927],{},"说明",[110,929,930,938,946,954],{},[100,931,932,935],{},[115,933,934],{},"Weather",[115,936,937],{},"查看联网天气信息",[100,939,940,943],{},[115,941,942],{},"Calendar",[115,944,945],{},"查看日历信息",[100,947,948,951],{},[115,949,950],{},"Codex",[115,952,953],{},"查看 Codex 运行状态和桥接设置入口",[100,955,956,959],{},[115,957,958],{},"NES",[115,960,961,962,965],{},"从 SD 卡选择 ",[185,963,964],{},".nes"," ROM，并重启进入 NES 专用启动模式",[259,967,968,969,289],{},"Codex 应用只提供设备端状态和桥接设置入口；PC 端桥接脚本不随 BigSmart-Open 仓库发布。NES 相关体验以 V2.3.28 预编译固件为准，不包含 2026-07-28 提交 ",[185,970,288],{},[84,972,974],{"id":973},"_11-rgb-灯与-smart-home-mqttendpoint","11. RGB 灯与 Smart Home MQTT\u002FEndpoint",[89,976,978],{"id":977},"_111-直接控制-rgb","11.1 直接控制 RGB",[259,980,981],{},"设置 RGB LED：",[263,983,985],{"className":635,"code":984,"language":637,"meta":269,"style":269},"{\n  \"tool\": \"self.light.set_rgb_color\",\n  \"arguments\": {\n    \"red\": 255,\n    \"green\": 100,\n    \"blue\": 50\n  }\n}\n",[185,986,987,991,1010,1022,1039,1055,1069,1074],{"__ignoreMap":269},[301,988,989],{"class":303,"line":304},[301,990,645],{"class":644},[301,992,993,995,997,999,1001,1003,1006,1008],{"class":303,"line":648},[301,994,651],{"class":644},[301,996,655],{"class":654},[301,998,658],{"class":644},[301,1000,661],{"class":644},[301,1002,664],{"class":644},[301,1004,1005],{"class":667},"self.light.set_rgb_color",[301,1007,658],{"class":644},[301,1009,672],{"class":644},[301,1011,1012,1014,1016,1018,1020],{"class":303,"line":675},[301,1013,651],{"class":644},[301,1015,680],{"class":654},[301,1017,658],{"class":644},[301,1019,661],{"class":644},[301,1021,687],{"class":644},[301,1023,1024,1026,1029,1031,1033,1037],{"class":303,"line":690},[301,1025,693],{"class":644},[301,1027,1028],{"class":696},"red",[301,1030,658],{"class":644},[301,1032,661],{"class":644},[301,1034,1036],{"class":1035},"sbssI"," 255",[301,1038,672],{"class":644},[301,1040,1041,1043,1046,1048,1050,1053],{"class":303,"line":712},[301,1042,693],{"class":644},[301,1044,1045],{"class":696},"green",[301,1047,658],{"class":644},[301,1049,661],{"class":644},[301,1051,1052],{"class":1035}," 100",[301,1054,672],{"class":644},[301,1056,1057,1059,1062,1064,1066],{"class":303,"line":718},[301,1058,693],{"class":644},[301,1060,1061],{"class":696},"blue",[301,1063,658],{"class":644},[301,1065,661],{"class":644},[301,1067,1068],{"class":1035}," 50\n",[301,1070,1072],{"class":303,"line":1071},7,[301,1073,715],{"class":644},[301,1075,1077],{"class":303,"line":1076},8,[301,1078,721],{"class":644},[259,1080,1081],{},"关闭 RGB LED：",[263,1083,1085],{"className":635,"code":1084,"language":637,"meta":269,"style":269},"{\n  \"tool\": \"self.light.turn_off\",\n  \"arguments\": {}\n}\n",[185,1086,1087,1091,1110,1123],{"__ignoreMap":269},[301,1088,1089],{"class":303,"line":304},[301,1090,645],{"class":644},[301,1092,1093,1095,1097,1099,1101,1103,1106,1108],{"class":303,"line":648},[301,1094,651],{"class":644},[301,1096,655],{"class":654},[301,1098,658],{"class":644},[301,1100,661],{"class":644},[301,1102,664],{"class":644},[301,1104,1105],{"class":667},"self.light.turn_off",[301,1107,658],{"class":644},[301,1109,672],{"class":644},[301,1111,1112,1114,1116,1118,1120],{"class":303,"line":675},[301,1113,651],{"class":644},[301,1115,680],{"class":654},[301,1117,658],{"class":644},[301,1119,661],{"class":644},[301,1121,1122],{"class":644}," {}\n",[301,1124,1125],{"class":303,"line":690},[301,1126,721],{"class":644},[89,1128,1130],{"id":1129},"_112-smart-home-mqtt-概览","11.2 Smart Home MQTT 概览",[259,1132,1133,1134,1137],{},"V2.3.28 固件使用 RYMCU Smart Home MQTT 协议控制第三方智能家居设备。底层 MQTT topic 根前缀为 ",[185,1135,1136],{},"rymcu\u002Fhome\u002Fv1","，设备需要通过配对码、发现广播、状态上报和命令 topic 与 BigSmart 交互。",[259,1139,1140],{},"上层控制入口有两种：",[166,1142,1143,1150],{},[169,1144,1145,1146,1149],{},"本地小智会话 MCP：语音服务直接调用设备上的 ",[185,1147,1148],{},"self.smart_home.*"," 工具。",[169,1151,1152,1153,1155],{},"外部 MCP Endpoint Bridge：通过配网写入的 Endpoint 调用同一批 ",[185,1154,1148],{}," 工具，最终仍由 Smart Home MQTT 下发。",[259,1157,1158],{},"常用工具：",[94,1160,1161,1169],{},[97,1162,1163],{},[100,1164,1165,1167],{},[103,1166,418],{},[103,1168,554],{},[110,1170,1171,1181,1191,1201,1210,1220,1230],{},[100,1172,1173,1176],{},[115,1174,1175],{},"设置 MQTT broker",[115,1177,1178],{},[185,1179,1180],{},"self.smart_home.set_mqtt_endpoint",[100,1182,1183,1186],{},[115,1184,1185],{},"连接 Smart Home MQTT",[115,1187,1188],{},[185,1189,1190],{},"self.smart_home.connect",[100,1192,1193,1196],{},[115,1194,1195],{},"断开连接",[115,1197,1198],{},[185,1199,1200],{},"self.smart_home.disconnect",[100,1202,1203,1205],{},[115,1204,835],{},[115,1206,1207],{},[185,1208,1209],{},"self.smart_home.get_status",[100,1211,1212,1215],{},[115,1213,1214],{},"扫描设备",[115,1216,1217],{},[185,1218,1219],{},"self.smart_home.scan_devices",[100,1221,1222,1225],{},[115,1223,1224],{},"列出设备",[115,1226,1227],{},[185,1228,1229],{},"self.smart_home.list_devices",[100,1231,1232,1235],{},[115,1233,1234],{},"控制设备",[115,1236,1237],{},[185,1238,1239],{},"self.smart_home.control_device",[259,1241,1242],{},"设置 broker：",[263,1244,1246],{"className":635,"code":1245,"language":637,"meta":269,"style":269},"{\n  \"tool\": \"self.smart_home.set_mqtt_endpoint\",\n  \"arguments\": {\n    \"endpoint\": \"broker-cn.emqx.io:1883\",\n    \"confirm\": true\n  }\n}\n",[185,1247,1248,1252,1270,1282,1302,1316,1320],{"__ignoreMap":269},[301,1249,1250],{"class":303,"line":304},[301,1251,645],{"class":644},[301,1253,1254,1256,1258,1260,1262,1264,1266,1268],{"class":303,"line":648},[301,1255,651],{"class":644},[301,1257,655],{"class":654},[301,1259,658],{"class":644},[301,1261,661],{"class":644},[301,1263,664],{"class":644},[301,1265,1180],{"class":667},[301,1267,658],{"class":644},[301,1269,672],{"class":644},[301,1271,1272,1274,1276,1278,1280],{"class":303,"line":675},[301,1273,651],{"class":644},[301,1275,680],{"class":654},[301,1277,658],{"class":644},[301,1279,661],{"class":644},[301,1281,687],{"class":644},[301,1283,1284,1286,1289,1291,1293,1295,1298,1300],{"class":303,"line":690},[301,1285,693],{"class":644},[301,1287,1288],{"class":696},"endpoint",[301,1290,658],{"class":644},[301,1292,661],{"class":644},[301,1294,664],{"class":644},[301,1296,1297],{"class":667},"broker-cn.emqx.io:1883",[301,1299,658],{"class":644},[301,1301,672],{"class":644},[301,1303,1304,1306,1309,1311,1313],{"class":303,"line":712},[301,1305,693],{"class":644},[301,1307,1308],{"class":696},"confirm",[301,1310,658],{"class":644},[301,1312,661],{"class":644},[301,1314,1315],{"class":644}," true\n",[301,1317,1318],{"class":303,"line":718},[301,1319,715],{"class":644},[301,1321,1322],{"class":303,"line":1071},[301,1323,721],{"class":644},[259,1325,1326],{},"连接并扫描设备：",[263,1328,1330],{"className":635,"code":1329,"language":637,"meta":269,"style":269},"{\n  \"tool\": \"self.smart_home.connect\",\n  \"arguments\": {}\n}\n",[185,1331,1332,1336,1354,1366],{"__ignoreMap":269},[301,1333,1334],{"class":303,"line":304},[301,1335,645],{"class":644},[301,1337,1338,1340,1342,1344,1346,1348,1350,1352],{"class":303,"line":648},[301,1339,651],{"class":644},[301,1341,655],{"class":654},[301,1343,658],{"class":644},[301,1345,661],{"class":644},[301,1347,664],{"class":644},[301,1349,1190],{"class":667},[301,1351,658],{"class":644},[301,1353,672],{"class":644},[301,1355,1356,1358,1360,1362,1364],{"class":303,"line":675},[301,1357,651],{"class":644},[301,1359,680],{"class":654},[301,1361,658],{"class":644},[301,1363,661],{"class":644},[301,1365,1122],{"class":644},[301,1367,1368],{"class":303,"line":690},[301,1369,721],{"class":644},[263,1371,1373],{"className":635,"code":1372,"language":637,"meta":269,"style":269},"{\n  \"tool\": \"self.smart_home.scan_devices\",\n  \"arguments\": {}\n}\n",[185,1374,1375,1379,1397,1409],{"__ignoreMap":269},[301,1376,1377],{"class":303,"line":304},[301,1378,645],{"class":644},[301,1380,1381,1383,1385,1387,1389,1391,1393,1395],{"class":303,"line":648},[301,1382,651],{"class":644},[301,1384,655],{"class":654},[301,1386,658],{"class":644},[301,1388,661],{"class":644},[301,1390,664],{"class":644},[301,1392,1219],{"class":667},[301,1394,658],{"class":644},[301,1396,672],{"class":644},[301,1398,1399,1401,1403,1405,1407],{"class":303,"line":675},[301,1400,651],{"class":644},[301,1402,680],{"class":654},[301,1404,658],{"class":644},[301,1406,661],{"class":644},[301,1408,1122],{"class":644},[301,1410,1411],{"class":303,"line":690},[301,1412,721],{"class":644},[259,1414,1415],{},"控制已发现设备：",[263,1417,1419],{"className":635,"code":1418,"language":637,"meta":269,"style":269},"{\n  \"tool\": \"self.smart_home.control_device\",\n  \"arguments\": {\n    \"device_id\": \"lamp-bedroom-01\",\n    \"action\": \"turn_on\",\n    \"entity_id\": \"main\",\n    \"params\": \"{}\"\n  }\n}\n",[185,1420,1421,1425,1443,1455,1475,1495,1515,1533,1537],{"__ignoreMap":269},[301,1422,1423],{"class":303,"line":304},[301,1424,645],{"class":644},[301,1426,1427,1429,1431,1433,1435,1437,1439,1441],{"class":303,"line":648},[301,1428,651],{"class":644},[301,1430,655],{"class":654},[301,1432,658],{"class":644},[301,1434,661],{"class":644},[301,1436,664],{"class":644},[301,1438,1239],{"class":667},[301,1440,658],{"class":644},[301,1442,672],{"class":644},[301,1444,1445,1447,1449,1451,1453],{"class":303,"line":675},[301,1446,651],{"class":644},[301,1448,680],{"class":654},[301,1450,658],{"class":644},[301,1452,661],{"class":644},[301,1454,687],{"class":644},[301,1456,1457,1459,1462,1464,1466,1468,1471,1473],{"class":303,"line":690},[301,1458,693],{"class":644},[301,1460,1461],{"class":696},"device_id",[301,1463,658],{"class":644},[301,1465,661],{"class":644},[301,1467,664],{"class":644},[301,1469,1470],{"class":667},"lamp-bedroom-01",[301,1472,658],{"class":644},[301,1474,672],{"class":644},[301,1476,1477,1479,1482,1484,1486,1488,1491,1493],{"class":303,"line":712},[301,1478,693],{"class":644},[301,1480,1481],{"class":696},"action",[301,1483,658],{"class":644},[301,1485,661],{"class":644},[301,1487,664],{"class":644},[301,1489,1490],{"class":667},"turn_on",[301,1492,658],{"class":644},[301,1494,672],{"class":644},[301,1496,1497,1499,1502,1504,1506,1508,1511,1513],{"class":303,"line":718},[301,1498,693],{"class":644},[301,1500,1501],{"class":696},"entity_id",[301,1503,658],{"class":644},[301,1505,661],{"class":644},[301,1507,664],{"class":644},[301,1509,1510],{"class":667},"main",[301,1512,658],{"class":644},[301,1514,672],{"class":644},[301,1516,1517,1519,1522,1524,1526,1528,1531],{"class":303,"line":1071},[301,1518,693],{"class":644},[301,1520,1521],{"class":696},"params",[301,1523,658],{"class":644},[301,1525,661],{"class":644},[301,1527,664],{"class":644},[301,1529,1530],{"class":667},"{}",[301,1532,709],{"class":644},[301,1534,1535],{"class":303,"line":1076},[301,1536,715],{"class":644},[301,1538,1540],{"class":303,"line":1539},9,[301,1541,721],{"class":644},[259,1543,1544],{},"配网自定义数据也支持两个前缀：",[166,1546,1547,1553],{},[169,1548,1549,1552],{},[185,1550,1551],{},"mqtt:\u003Chost[:port]>","：保存 Smart Home MQTT broker。",[169,1554,1555,1558],{},[185,1556,1557],{},"mcp:\u003Cendpoint>","：保存外部 MCP Endpoint 地址。",[84,1560,1562],{"id":1561},"_12-imu-姿态与晃动检测","12. IMU 姿态与晃动检测",[259,1564,1565],{},"BigSmart 板载 QMI8658 六轴传感器。固件启动后会周期读取传感器数据，并启动晃动检测。可通过 MCP 工具读取姿态角、加速度和陀螺仪数据：",[263,1567,1569],{"className":635,"code":1568,"language":637,"meta":269,"style":269},"{\n  \"tool\": \"self.imu.get_attitude_angles\",\n  \"arguments\": {}\n}\n",[185,1570,1571,1575,1594,1606],{"__ignoreMap":269},[301,1572,1573],{"class":303,"line":304},[301,1574,645],{"class":644},[301,1576,1577,1579,1581,1583,1585,1587,1590,1592],{"class":303,"line":648},[301,1578,651],{"class":644},[301,1580,655],{"class":654},[301,1582,658],{"class":644},[301,1584,661],{"class":644},[301,1586,664],{"class":644},[301,1588,1589],{"class":667},"self.imu.get_attitude_angles",[301,1591,658],{"class":644},[301,1593,672],{"class":644},[301,1595,1596,1598,1600,1602,1604],{"class":303,"line":675},[301,1597,651],{"class":644},[301,1599,680],{"class":654},[301,1601,658],{"class":644},[301,1603,661],{"class":644},[301,1605,1122],{"class":644},[301,1607,1608],{"class":303,"line":690},[301,1609,721],{"class":644},[259,1611,1612],{},"可用于以下场景：",[166,1614,1615,1618,1621,1624],{},[169,1616,1617],{},"晃动唤醒或切换界面。",[169,1619,1620],{},"体感控制小游戏。",[169,1622,1623],{},"设备姿态显示。",[169,1625,1626],{},"交互装置触发条件。",[84,1628,1630],{"id":1629},"_13-摄像头使用","13. 摄像头使用",[259,1632,1633],{},"BigSmart 使用 GC0308 摄像头，硬件支持 640 x 480 @ 16 FPS。参考固件采用懒加载方式：启动阶段不立即初始化摄像头，首次请求摄像头能力时才初始化，以降低启动阶段内存压力。",[259,1635,1636],{},"使用建议：",[166,1638,1639,1642,1645],{},[169,1640,1641],{},"确保固件启用 GC0308 相关配置。",[169,1643,1644],{},"需要图像能力时再调用摄像头，避免与音频、Wi-Fi、大型 UI 同时抢占内存。",[169,1646,1647],{},"若画面方向异常，可检查固件中的镜像和翻转设置。",[84,1649,1651],{"id":1650},"_14-常见问题","14. 常见问题",[94,1653,1654,1667],{},[97,1655,1656],{},[100,1657,1658,1661,1664],{},[103,1659,1660],{},"问题",[103,1662,1663],{},"可能原因",[103,1665,1666],{},"处理方法",[110,1668,1669,1680,1691,1702,1713,1724,1735,1749,1763,1777],{},[100,1670,1671,1674,1677],{},[115,1672,1673],{},"电脑识别不到串口",[115,1675,1676],{},"USB 线仅供电、驱动缺失、设备未上电",[115,1678,1679],{},"更换数据线，安装驱动，检查电源",[100,1681,1682,1685,1688],{},[115,1683,1684],{},"烧录失败",[115,1686,1687],{},"未进入下载模式或串口被占用",[115,1689,1690],{},"按 Boot + 复位进入下载模式，关闭串口终端后重试",[100,1692,1693,1696,1699],{},[115,1694,1695],{},"连不上 Wi-Fi",[115,1697,1698],{},"使用 5G 网络、密码错误、信号弱",[115,1700,1701],{},"使用 2.4G Wi-Fi，重新配网，靠近路由器",[100,1703,1704,1707,1710],{},[115,1705,1706],{},"无声音",[115,1708,1709],{},"音量过低、功放未使能、音频初始化失败",[115,1711,1712],{},"查看串口日志，确认 ES8311\u002FES7210 初始化正常",[100,1714,1715,1718,1721],{},[115,1716,1717],{},"语音识别差",[115,1719,1720],{},"环境噪声大、离麦克风太远、AEC 状态不合适",[115,1722,1723],{},"靠近设备说话，尝试双击 Boot 切换 AEC",[100,1725,1726,1729,1732],{},[115,1727,1728],{},"SD 卡无法挂载",[115,1730,1731],{},"未格式化 FAT32、接触不良、卡损坏",[115,1733,1734],{},"重新格式化，重新插拔，更换 SD 卡",[100,1736,1737,1740,1743],{},[115,1738,1739],{},"找不到 MP3",[115,1741,1742],{},"路径错误或文件格式不支持",[115,1744,1745,1746],{},"使用绝对路径，确认文件后缀为 ",[185,1747,1748],{},".mp3",[100,1750,1751,1754,1757],{},[115,1752,1753],{},"Smart Home MQTT 连接失败",[115,1755,1756],{},"broker 地址错误、端口错误、网络不可达或未启用",[115,1758,1759,1760,1762],{},"查询 ",[185,1761,1209],{},"，在 Settings > Advanced 或 MCP 工具中重新配置 broker",[100,1764,1765,1768,1771],{},[115,1766,1767],{},"NES 看不到游戏",[115,1769,1770],{},"SD 卡未挂载、目录不符合固件扫描规则或 ROM 后缀不正确",[115,1772,1773,1774,1776],{},"确认 SD 卡 FAT32 可读，并放入 ",[185,1775,964],{}," ROM",[100,1778,1779,1782,1785],{},[115,1780,1781],{},"Codex 状态无法连接",[115,1783,1784],{},"PC 端桥接服务未运行、桥接地址错误或不在同一局域网",[115,1786,1787],{},"确认设备和 PC 网络连通，并在 Codex 应用中配置正确桥接地址",[84,1789,1791],{"id":1790},"_15-硬件维护","15. 硬件维护",[166,1793,1794,1797,1800,1807],{},[169,1795,1796],{},"插拔屏幕、摄像头、麦克风板或其他排线前先断电。",[169,1798,1799],{},"使用电池供电时注意电池极性和充电安全。",[169,1801,1802,1803,1806],{},"外壳文件位于 ",[185,1804,1805],{},"enclosure\u002F","，修改结构时注意屏幕、按键、麦克风开孔和扬声器声腔。",[169,1808,1809,1810,1813],{},"二次开发新外设前，先查阅 ",[1811,1812,27],"a",{"href":28}," 避免 GPIO 冲突。",[84,1815,1817],{"id":1816},"_16-参考资料","16. 参考资料",[166,1819,1820],{},[169,1821,1822,1823],{},"本项目硬件说明：",[1811,1824,1825],{"href":28},"hardware.md",[1827,1828,1829],"style",{},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}",{"title":269,"searchDepth":648,"depth":648,"links":1831},[1832,1836,1839,1843,1847,1848,1852,1856,1860,1861,1862,1866,1867,1868,1869,1870],{"id":86,"depth":648,"text":87,"children":1833},[1834,1835],{"id":91,"depth":675,"text":92},{"id":163,"depth":675,"text":164},{"id":191,"depth":648,"text":192,"children":1837},[1838],{"id":195,"depth":675,"text":196},{"id":252,"depth":648,"text":253,"children":1840},[1841,1842],{"id":256,"depth":675,"text":257},{"id":309,"depth":675,"text":310},{"id":331,"depth":648,"text":332,"children":1844},[1845,1846],{"id":335,"depth":675,"text":336},{"id":360,"depth":675,"text":361},{"id":405,"depth":648,"text":406},{"id":474,"depth":648,"text":475,"children":1849},[1850,1851],{"id":478,"depth":675,"text":479},{"id":499,"depth":675,"text":500},{"id":506,"depth":648,"text":507,"children":1853},[1854,1855],{"id":510,"depth":675,"text":511},{"id":523,"depth":675,"text":524},{"id":538,"depth":648,"text":539,"children":1857},[1858,1859],{"id":542,"depth":675,"text":543},{"id":628,"depth":675,"text":629},{"id":794,"depth":648,"text":795},{"id":911,"depth":648,"text":912},{"id":973,"depth":648,"text":974,"children":1863},[1864,1865],{"id":977,"depth":675,"text":978},{"id":1129,"depth":675,"text":1130},{"id":1561,"depth":648,"text":1562},{"id":1629,"depth":648,"text":1630},{"id":1650,"depth":648,"text":1651},{"id":1790,"depth":648,"text":1791},{"id":1816,"depth":648,"text":1817},"BigSmart 开发环境、固件烧录、交互、SD 卡、媒体和外设使用手册。","md",[1874],{"label":1875,"icon":1876,"to":63},"English","i-lucide-languages",{},{"title":22,"icon":25},{"title":22,"description":1871},"CD1G_wnS2sF1m5si_bxuvGlBBta2qJKo1o-3wu3aQ2U",[1882,1884],{"title":17,"path":18,"stem":19,"description":1883,"icon":20},"BigSmart 产品定位、硬件组成、软件能力和典型应用。",{"title":27,"path":28,"stem":29,"description":1885,"icon":30},"BigSmart 硬件组件、接口、电源、外设和 GPIO 分配说明。",1785826457755]