{"id":29584472,"url":"https://github.com/ypwhs/cp02_monitor","last_synced_at":"2025-07-20T00:34:30.748Z","repository":{"id":291078011,"uuid":"976503263","full_name":"ypwhs/cp02_monitor","owner":"ypwhs","description":"小电拼功率监控","archived":false,"fork":false,"pushed_at":"2025-06-11T13:30:13.000Z","size":27402,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-11T14:46:12.045Z","etag":null,"topics":["esp32","esp32-arduino","esp32-s3"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ypwhs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-05-02T08:16:06.000Z","updated_at":"2025-06-11T13:30:20.000Z","dependencies_parsed_at":"2025-05-02T09:45:12.543Z","dependency_job_id":"cde1b610-9b73-4140-84ec-9a51b2b09bc7","html_url":"https://github.com/ypwhs/cp02_monitor","commit_stats":null,"previous_names":["ypwhs/cp02_monitor"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ypwhs/cp02_monitor","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ypwhs%2Fcp02_monitor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ypwhs%2Fcp02_monitor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ypwhs%2Fcp02_monitor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ypwhs%2Fcp02_monitor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ypwhs","download_url":"https://codeload.github.com/ypwhs/cp02_monitor/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ypwhs%2Fcp02_monitor/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266048720,"owners_count":23868744,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["esp32","esp32-arduino","esp32-s3"],"created_at":"2025-07-20T00:34:30.156Z","updated_at":"2025-07-20T00:34:30.714Z","avatar_url":"https://github.com/ypwhs.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 小电拼功率监控\n\n实物图：\n\n![](resources/cp02_monitor.jpg)\n\n群友后续开发工作：https://github.com/Northwoodmy/ESP32C6_OpenPowerMonitor\n\n![1233f0b8f06e3f68cbc29e0570c9cb71](https://github.com/user-attachments/assets/de587772-2e57-4b6c-b482-10efbcfd7331)\n\n## 准备工作\n\n首先你需要准备一块 ESP32-S3 带屏开发板：[https://www.waveshare.net/shop/ESP32-S3-LCD-1.47.htm](https://www.waveshare.net/shop/ESP32-S3-LCD-1.47.htm)\n\n如下图：\n\n![](resources/ESP32-S3-LCD-1.47-1.jpg)\n\n![](resources/ESP32-S3-LCD-1.47-5.jpg)\n\n## 环境配置\n\n环境配置参考文档：\n\n[https://www.waveshare.net/wiki/ESP32-S3-LCD-1.47](https://www.waveshare.net/wiki/ESP32-S3-LCD-1.47)\n\n你需要：\n\n* 安装 Arduino IDE\n* 安装 esp32 by Espressif Systems\n* 安装 LVGL\t图形库\n\n建议先跑通官方的例程，确保环境配置正确。\n\n## 修改 LVGL 以支持浮点数\n\n在 `lv_conf.h` 中，修改如下：\n\n```c\n/*Change the built in (v)snprintf functions*/\n#define LV_SPRINTF_CUSTOM 1  // 这里改为 1 以支持浮点数输出\n#if LV_SPRINTF_CUSTOM\n    #define LV_SPRINTF_INCLUDE \u003cstdio.h\u003e\n    #define lv_snprintf  snprintf\n    #define lv_vsnprintf vsnprintf\n#else   /*LV_SPRINTF_CUSTOM*/\n    #define LV_SPRINTF_USE_FLOAT 0\n#endif  /*LV_SPRINTF_CUSTOM*/\n```\n\n在我的电脑上，`lv_conf.h` 在这个位置：\n\n\u003e C:\\Users\\Administrator\\AppData\\Local\\Arduino15\\libraries\\lvgl\\src\\lv_conf.h\n\n## 修改小电拼相关配置\n\n在 `CP02_Monitor.ino` 中，修改如下：\n\n```c\n// 电源监控配置\nconst int MAX_POWER_WATTS = 160;    // 最大总功率 160W\nconst int MAX_PORT_WATTS = 140;     // 每个端口最大功率 140W\nconst char* DATA_URL = \"http://192.168.1.19/metrics\";  // 修改成你的小电拼IP，后面的 /metrics 保留不变\nconst int REFRESH_INTERVAL = 500;   // 刷新间隔 (ms)\n\n// WiFi 配置\nconst char* WIFI_SSID = \"Apple\";          // 填写你的WiFi名称\nconst char* WIFI_PASSWORD = \"88888888\";   // 填写你的WiFi密码\n```\n\n## 编译运行\n\n使用 Arduino IDE 打开 [CP02_Monitor.ino](CP02_Monitor/CP02_Monitor.ino)，按照官方文档配置好开发板，选择正确的端口，编译上传。\n\n设置开发板：\n\n![](resources/ESP32-S3-LCD-1.47-Ar-demo-01.png)\n\n编译+上传：\n\n![](resources/compile_and_upload.png)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fypwhs%2Fcp02_monitor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fypwhs%2Fcp02_monitor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fypwhs%2Fcp02_monitor/lists"}