M5Stack Tab5 ã SwitchBot 枩湿床èšã®åžžèšã¢ãã¿ã«ãããã¡ãŒã ãŠã§ã¢ã§ãã
BLE ã®ãããŒããã£ã¹ããåä¿¡ããŠæž©åºŠã»æ¹¿åºŠã»CO2ã»é»æ± æ®éãã¿ã€ã«è¡šç€ºããå±¥æŽã microSD ã«èšé²ããŠãæ©åšããšã®ã°ã©ããæããŸããGrove 端åã®ç°å¢ã»ã³ãµãšãæ¬äœã«ã¡ã©ã§æž¬ã£ãéšå±ã®æãããåãããã«æ±ããŸããSwitchBot ã®ã¯ã©ãŠããå ¬åŒã¢ããªãçµç±ããŸãããSwitchBot æ©åšåŽã®èšå®å€æŽããã¢ãªã³ã°ãäžèŠã§ãã黿± æ®éãèªãããã« BLE ã®ã¹ãã£ã³èŠæ±ïŒèŠæ Œäžã®å®åã®åãåããïŒã¯éããŸãããæ¥ç¶ãã³ãã³ãéä¿¡ãããªããããæ©åšã®èšå®ã¯äžåå€ãããŸããã
- ã¿ã€ã«è¡šç€º â ç»é²ããæ©åšã®çŸåšå€ãäžèŠ§ãæž©åºŠã»æ¹¿åºŠã»CO2ã»é»æ± æ®éãè²åã衚瀺ããéŸå€ãè¶ ãããšèŠåè²ã«ãªããŸã
- ã¿ã°ã§çµãèŸŒã¿ â æ©åšã«ã¿ã°ãä»ããŠéšå±å¥ãªã©ã«åãæ¿ãããèŠåéŸå€è¶ããã ãã䞊ã¹ãããšãã§ããŸã
- å±¥æŽã°ã©ã â 10å / æ / æ¥ / é± / æ / 幎ãé±ã»æã»å¹Žã¯æ¥ããšã®æäœã»æé«ã垯ã§è¡šç€ºããŸã
- ã°ã©ãã®æ·±æã â æ°ã«ãªããšãããã¿ãããããšããããå«ã1ã€äžã®æéãéããŸããæ â é± â æ¥ â æãšèŸ¿ããŸã
- ã¹ããããèšå® â åã Wi-Fi ã«ã€ãªãã ã¹ããã®ãã©ãŠã¶ã§ãæ©åšã®ç»é²ã»åœåã»ã¿ã°ä»ãã»äžŠã³æ¿ããã§ããŸã
- 瞊暪èªåå転 â å é床ã»ã³ãµã§ç»é¢ã®åããå€å®ããŸãïŒæååºå®ãå¯ïŒ
- Grove 端åã®ã»ã³ãµ â M5Stack UNIT ENV III ãã€ãªããšãæž©åºŠã»æ¹¿åºŠã»æ°å§ãæ©åšã®1å°ãšããŠäžŠã³ãŸã
- é¢ããå Žæã®ã»ã³ãµ â M5StickC ã M5AtomS3 ã«ã»ã³ãµãã€ãªãã ãã®ããSwitchBot æ©åšãšåãããã«åä¿¡ã§ããŸããENV PRO ãªãæž©åºŠã»æ¹¿åºŠã»æ°å§ã«å ããŠç©ºæ°è³ªã»CO2çžåœå€ã»åŒæ°VOCçžåœå€ïŒEnvProBeaconïŒãMH-Z19B/Cã»SCD30ã»SCD40 ãªã宿ž¬ã®CO2ãåãããŸãïŒCo2BeaconïŒ
- éšå±ã®æãã â æ¬äœã®ã«ã¡ã©ãç §åºŠèšãšããŠäœ¿ããæãããèšé²ããŸããæããªããšç»é¢ãæ¶ããè§Šãããšç¹ããŸã
- æå»ã®ä¿æ â æ¬äœã®RTCãšã¹ãŒããŒãã£ãã·ã¿ã§ã黿ºãåã£ãŠããéãæå»ãä¿ã¡ãŸã
- ç°åžžåèµ·åã®èšé² â ãããã¯ããŠã©ããããã°ã«ããåèµ·åãæ¬äœã«èšé²ããèšå®ç»é¢ã§ç¢ºèªã§ããŸã
ããŒããŠã§ã¢
- M5Stack Tab5ïŒESP32-P4 + ESP32-C6ã16MB Flash / 32MB PSRAMïŒ
- microSD ã«ãŒãïŒå±¥æŽèšé²çšãç¡ããŠãåäœããŸããå±¥æŽã¯ RAM äžã®24æéåã®ã¿ã«ãªããŸãïŒ
- SwitchBot 枩湿床èšïŒMeter / Outdoor Meter / Meter Pro CO2 ã§åäœç¢ºèªïŒ
- M5Stack UNIT ENV â ¢ïŒä»»æãGrove 端åã«æ¥ç¶ïŒ
- M5StickC ç³» / M5AtomS3 ç³» ïŒ M5Stack UNIT ENV PROïŒä»»æãé¢ããå Žæã®æž©æ¹¿åºŠã»æ°å§ã»ç©ºæ°è³ªã BLE ã§éããŸããEnvProBeacon ãæžã蟌ãã§äœ¿ããŸãïŒ
- M5StickCïŒç¡å° / Plus / Plus2ïŒïŒ MH-Z19B/Cã»SCD30ã»SCD40 ã®ããããïŒä»»æãé¢ããå Žæã® CO2 ã BLE ã§éããŸããCo2Beacon ãæžã蟌ãã§äœ¿ããŸããSCD40 㯠Grove æ¥ç¶ãªã®ã§ M5AtomS3 ç³»ã§ã䜿ããŸããM5StickS3 㯠HAT 端åã«ã»ã³ãµãæ¿ããªããã察象å€ã§ãïŒ
- 2.4GHz ã® Wi-FiïŒæå»åæãšã¹ããèšå®ã«å¿ èŠã5GHz å°çšã® SSID ã«ã¯æ¥ç¶ã§ããŸããïŒ
ãœãããŠã§ã¢
- Arduino IDE 2.x
- M5Stack ããŒãããã±ãŒãž 3.3.8ïŒããŒãéžæã¯ãM5Tab5ãïŒ
- ã©ã€ãã©ãªïŒæ¬åŒ§å
ã¯æ€èšŒæã®ããŒãžã§ã³ïŒ
- M5UnifiedïŒ0.2.20ïŒ
- M5GFXïŒ0.2.27ïŒ
- LVGLïŒ9.5.0ïŒ
- ArduinoJsonïŒ7.4.3ïŒ
- M5Unit-ENVïŒ1.7.1ïŒâ Grove 端åã® ENV III ã䜿ãå Žåã®ã¿
BLEã»Wi-Fiã»microSDã»LittleFSã»mDNSã»NVS ã¯ããããããŒãããã±ãŒãžå梱ã®ããã远å ã®ã€ã³ã¹ããŒã«ã¯äžèŠã§ãã
BLE ã¯ã³ã¢å梱ã®
BLEDevice.hïŒlibraries/BLEïŒã䜿ããŸãã
æ¥æ¬èªè¡šç€ºã« BIZ UDãŽã·ãã¯ã䜿ããŸããã©ã€ã»ã³ã¹ã®éœåã§ãªããžããªã«ã¯å«ããŠããªãã®ã§ãåèªã§çšæããŠãã ããããã®æé ãé£ã°ããšæ¥æ¬èªã衚瀺ãããŸããã
-
BIZ UDGothic ã®ãªãªãŒã¹ ZIP ãããŠã³ããŒãïŒGoogle Fonts ããã§ãåããã®ãå ¥æã§ããŸãïŒ
-
ZIP ã®äžã®
BIZUDGothic-Regular.ttfïŒçŽ4.6MBïŒã ãããã¹ã±ãããã©ã«ãå ã«dataãã©ã«ããäœã£ãŠãªããŒã ããã«çœ®ãSwitchBotSync/ â data/ â BIZUDGothic-Regular.ttf -
LittleFS ãžã¢ããããŒããããã©ã°ã€ã³ãå°å ¥ããïŒArduino IDE 2.x ã«ã¯æšæºã®ãSketch Data UploadãããããŸããïŒ
- arduino-littlefs-upload ãã
.vsixãããŠã³ããŒã %USERPROFILE%\.arduinoIDE\plugins\ã«çœ®ãïŒãã©ã«ããç¡ããã°äœæïŒ- Arduino IDE ãåèµ·å
- arduino-littlefs-upload ãã
-
ã¹ã±ãããéããç¶æ ã§
Ctrl+Shift+PâUpload LittleFSãå®è¡
å¥ã®ãã©ã³ãã«å€ãããå Žåã¯ãdata ã«çœ®ã㊠Config.h ã® FONT_FILE_PATH ããã®ãã¡ã€ã«åã«æžãæããŠãã ããã
partitions.csv ãã¹ã±ãããã©ã«ãã«å梱ããŠããŸããã¹ã±ãããã©ã«ãå
ã® partitions.csv ã¯ãPartition Schemeãã®èšå®ããåªå
ããããããIDE åŽã®èšå®ã¯äœãéžãã§ãæ§ããŸãããæå³ãæç¢ºã«ããæå³ã§ãCustomããéžãã§ããããšãæšå¥šããŸãã
| é å | ãµã€ãº | çšé |
|---|---|---|
| factory | 4MB | ããã°ã©ã æ¬äœ |
| littlefs | 6MB | ãã©ã³ãã»Webèšå®ã®ç»é¢ããŒã¿ |
| coredump | 64KB | ã¯ã©ãã·ã¥æã®è§£ææ å ± |
| nvs | 20KB | èšå®å€ã»æ©åšç»é²ã»ç°åžžåèµ·åã®èšé² |
lv_conf.h ãš build_opt.h ãã¹ã±ãããã©ã«ãã«å梱ããŠããŸããLVGL ã®èšå®ããã®ã¹ã±ããå
ã§å®çµããããã«ããŠããã®ã§ãä»ã® LVGL ãããžã§ã¯ããšå¹²æžããŸããã
ååã ãããã«ãåã« Arduino IDE ãåèµ·åããŠãã ããã build_opt.h 㯠IDE ããã£ãã·ã¥ããéœåäžã远å çŽåŸã®äžåºŠã ãåèµ·åãå¿
èŠã§ãã
M5Stack ããŒãããã±ãŒãž 3.3.8 ã«ã¯ãTab5 åããã«ãã§ã¹ã±ããã®å 容ã«é¢ãããå¿ ãçºçããã³ã³ãã€ã«ãšã©ãŒããããŸãã
esp32-hal-spi.c:299:32: error: 'BOARD_SDMMC_POWER_CHANNEL' undeclared
Arduino ã³ã¢æ¬äœããTab5 ã®ãã³å®çŸ©ã«ååšããªããã¯ãã #ifdef ç¡ãã§åç
§ããŠããããã§ããæ¬¡ã®ãã¡ã€ã«ãéããŠãã ããã
%LOCALAPPDATA%\Arduino15\packages\m5stack\hardware\esp32\3.3.8\cores\esp32\esp32-hal-spi.c
299è¡ç®ä»è¿ã®ãããã¯ã #ifdef ã§å²ã¿ãŸãã
#ifdef BOARD_SDMMC_POWER_CHANNEL // â ãã®è¡ã远å
sd_pwr_ctrl_ldo_config_t ldo_config;
ldo_config.ldo_chan_id = BOARD_SDMMC_POWER_CHANNEL;
sd_pwr_ctrl_handle_t pwr_ctrl_handle = NULL;
sd_pwr_ctrl_new_on_chip_ldo(&ldo_config, &pwr_ctrl_handle);
if (sd_pwr_ctrl_set_io_voltage(pwr_ctrl_handle, 3300)) {
log_e("Unable to set power control to 3V3");
return;
}
#endif // â ãã®è¡ã远å
break;åã颿°å
ã§ BOARD_SDMMC_POWER_PIN ã«å¯ŸããŠæ¢ã«äœ¿ãããŠããã®ãšåãæžãæ¹ã§ãããã®ç®æã¯ SOC_SDMMC_IO_POWER_EXTERNALïŒESP32-P4 ã§ã®ã¿å®çŸ©ïŒã®ãããã¯å
ã«ãããããä»ã® M5Stack 補ååãã®ãã«ãã«ã¯åœ±é¿ããŸããã
ããŒãããã±ãŒãžãæŽæ°ã»åã€ã³ã¹ããŒã«ãããšä¿®æ£ã¯å€±ãããŸããã³ã³ãã€ã«ãšã©ãŒãåºãå Žåã¯ãã®éœåºŠããçŽããŠãã ããã
ããŒãã«ãM5Tab5ããéžã³ãéåžžã©ããæžã蟌ã¿ãŸãã
M5StickC ã M5AtomS3 ã«ã»ã³ãµãã€ãªãã ãã®ããSwitchBot æ©åšãšåãããã«åä¿¡ã§ããŸããæ¬äœåŽã®èšå®ã¯äžèŠã§ãTab5 ã® Web èšå®ããæ®éã«æ©åšç»é²ããã ãã§ãã
éä¿¡åŽã®ããã°ã©ã ã¯çšéã§éžã³ãŸããæé ã¯ããããã® README ã«ãããŸãã
| ããã°ã©ã | ã»ã³ãµ | éããã® |
|---|---|---|
| EnvProBeacon | M5Stack UNIT ENV PRO | æž©åºŠã»æ¹¿åºŠã»æ°å§ã»ç©ºæ°è³ªã»CO2çžåœå€ã»åŒæ°VOCçžåœå€ |
| Co2Beacon | MH-Z19B/Cã»SCD30ã»SCD40 | CO2ïŒå®æž¬å€ïŒãSCD ã¯æž©åºŠã»æ¹¿åºŠã |
æ©åšã®ç»é²ã»ååä»ãã»ã¿ã°ã»äžŠã³é ã¯ãæ¬äœã®ç»é¢ã§ã¯ãªãã¹ããã®ãã©ãŠã¶ããè¡ããŸããèšå®ç»é¢ïŒâïŒã®äžã®ã»ãã«ãéå§çšã®ãã¿ã³ã2ã€ãããŸãã
| ãã¿ã³ | åäœ |
|---|---|
| Webèšå®ãéå§ | ä¿åæžã¿ã® Wi-Fi ã«æ¬æ©ãåå ããŸãïŒSTAã¢ãŒãïŒãåã Wi-Fi ã«ã€ãªãã ã¹ããããã¢ã¯ã»ã¹ããŸããWi-Fi ãæªèšå®ã®ãšãããåå ã«å€±æãããšãã¯ãèªåçã«äžã® APã¢ãŒãã«ãªããŸã |
| APã¢ãŒãïŒTab5-SetupïŒã§éå§ | æ¬æ©èªèº«ã Tab5-Setup ãšãã Wi-Fi ã¢ã¯ã»ã¹ãã€ã³ãã«ãªããŸãïŒãã¹ã¯ãŒãç¡ãïŒãã¹ãããããã«ã€ãªãæ¿ããŠã¢ã¯ã»ã¹ããŸã |
ãããã®å Žåããæ¥ç¶å ã® URL ã¯æ¬äœã®ç»é¢ã«å€§ãã衚瀺ãããŸãã
Tab5 ã®ç¡ç·ã¯ ESP32-C6 ãæ åœããŠããŸããããã®ç³ã¯ Wi-Fi ã®åæ©ãšããŠéä¿¡ããªãã BLE ãåä¿¡ããã®ã¯å®å®ããŠè¡ããäžæ¹ã§ãèªãã¢ã¯ã»ã¹ãã€ã³ãã«ãªããªãã BLE ãåä¿¡ããã®ã¯äžå®å®ã§ãããã®ãããå¯èœãªãããæ¢åã® Wi-Fi ã«åå ããåŽïŒSTAã¢ãŒãïŒãåªå ããŸãã
- STAã¢ãŒã â Webèšå®ãéããŠããéã BLE ã®åä¿¡ãç¶ããŸãããæ€åºãã¿ãã«æ°ããæ©åšã宿éã§åºãŠããŸããã¹ããåŽã®æ¥ç¶å ãå€ããå¿ èŠããããŸãã
- APã¢ãŒã â Webèšå®ãéãããŸã§ BLE ã®åä¿¡ãæ¢ããŸãããæ€åºãã¿ãã«ã¯ãWebèšå®ãéãåã«åä¿¡æžã¿ã®æ©åšã ãã䞊ã³ãŸã
æ®æ®µã¯ãWebèšå®ãéå§ãã ãã§æžã¿ãŸããAPã¢ãŒãã®ãã¿ã³ã¯ãååèšå®ãšãWi-Fi ã®èšå®ãä¿åããããšã§ STA åŽã«ã€ãªãããªããªã£ãå Žåã®éãéãšããŠçšæããŠããŸãïŒåŸè ãç¡ããšãWebèšå®ãéãææ®µãå®å šã«å€±ãããŠããŸããŸãïŒã
æžã蟌ã¿çŽåŸã¯ Wi-Fi ãæªèšå®ãªã®ã§ãæåã¯å¿ ã APã¢ãŒãã«ãªããŸãã
- 黿ºãå ¥ãããšããŸã æ©åšãç»é²ãããŠããªãã®ã§ç©ºã®ã¿ã€ã«ç»é¢ãåºãŸã
- å³äžã® â â ãWebèšå®ãéå§ãïŒWi-Fi æªèšå®ã®ãããèªåçã« APã¢ãŒãã«ãªããŸãïŒ
- ã¹ããã® Wi-Fi èšå®ã§
Tab5-Setupã«æ¥ç¶ãããã©ãŠã¶ã§http://192.168.4.1/ãéã - ãWi-Fi / SDãã¿ãã§èªå® ã® Wi-Fi ãç»é²ãã
- èšå®ç»é¢ã§ãã£ãã Webèšå®ãæ¢ããããäžåºŠ ãWebèšå®ãéå§ããä»åºŠã¯èªå® ã® Wi-Fi ã«åå ããŸãïŒSTAã¢ãŒãïŒ
- ã¹ãããèªå®
ã® Wi-Fi ã«æ»ããæ¬äœç»é¢ã«åºã URLïŒ
http://tab5.local/ãŸã㯠IP ã¢ãã¬ã¹ïŒãéã - ãæ€åºãã¿ãã«è¿ãã® SwitchBot æ©åšã䞊ã¶ã®ã§ãååãä»ããŠç»é²
- ãç»é²æžã¿ãã¿ãã§ã¿ã°ä»ãããã¬ã€ã¢ãŠããã¿ãã§äžŠã³é ã倿Ž
æé 4 ãŸã§æžãŸããŠããŸãã°ã次åãã㯠2 ãš 6ã8 ã ãã§ãã
ç»é²å å®¹ã¯æ¬äœã«ä¿åãããŸããCSV ã§æžãåºãã»åã蟌ã¿ãã§ããã®ã§ããã¡ãŒã ãŠã§ã¢æŽæ°ã®ãã³ã«ç»é²ãçŽãå¿ èŠã¯ãããŸããã
| æäœ | åäœ |
|---|---|
| ã¿ã€ã«ãã¿ãã | ãã®æ©åšã®ã°ã©ããéã |
| ã¿ã€ã«ç»é¢ãäžäžå·Šå³ã«ã¹ã¯ã€ã | ããŒãžéã |
| äžéšã®ã¿ã°ãã¿ãã | 衚瀺ããæ©åšãçµã蟌ã |
ã°ã©ãäžéšã® ⹠⺠|
ååŸã®æéãžç§»å |
| ã°ã©ããã¿ãã | ã¿ããããæ¥æãå«ãã1ã€äžã®æéãžç§»åïŒå¹Ž â æ â é± â æ¥ â æ â 10åïŒ |
| ã°ã©ãäžéšã®æéã¿ã | ãã®çްãããžåãæ¿ããèŠãŠããæ¥æã¯ãã®ãŸãŸ |
| éžãã§ããæéã¿ããããäžåºŠã¿ãã | çŸåšã®æéãžæ»ã |
| å³äžã® â | èšå®ç»é¢ |
ç»é¢ã®æãããç»é¢ã®åããmicroSD ãžã®æžã蟌ã¿ééãèŠåéŸå€ïŒæž©åºŠã»æ¹¿åºŠã»CO2ã»é»æ± æ®éïŒã倿Žã§ããŸããGrove 端åã«ã€ãªãã ENV â ¢ UNITã䜿ãããããã§éžã³ãŸããæäžéšã«ç°åžžåèµ·åã®èšé²ãããããã€ã»ã©ã®çç±ã§åèµ·åããããåŸãã確èªã§ããŸãã
ãèªåãã«ãããšãéšå±ãæããªã£ããšãã ãç»é¢ãæ¶ããŸããæãããšãã¯ã¹ã©ã€ããŒã§éžãã æããã«æ»ããŸãã
æ¶ããŠããç»é¢ã«è§Šãããšç¹ç¯ããŸãããã®ãšãã®ã¿ããã¯æäœãšããŠæ±ããŸããã äœã衚瀺ãããŠãããèŠããªãç¶æ ã§ã®æäœã¯ãã»ãŒç¢ºå®ã«èª€æäœã«ãªãããã§ããç¹ç¯ããŠãã 0.5 ç§ã¯åããåãä»ããããã®åŸã¯éåžžã©ããã«æäœã§ããŸãã30 ç§äœãããªããã°ãŸãæ¶ããŸãã
ãæããšå€æããæãããã§å¢ç®ã決ããŸããåãç»é¢ã«ä»ã®æãããåºãã®ã§ãå®éã®å€ãèŠãªããéžãã§ãã ããããæåãã«ãããšãæããã¯ã¹ã©ã€ããŒã®å€ã«åºå®ãããŸãã
- ååèµ·åæã¯ãæå»åæãæžããŸã§ã°ã©ããéããŸããã NTP åæïŒèµ·ååŸ10ç§çšåºŠïŒãåŸ ã£ãŠãã ãããåæã¯12æéããšã«ç¹°ãè¿ãããŸãã2åç®ä»¥éã¯æ¬äœã®RTCããæå»ã埩å ããã®ã§ãèµ·åçŽåŸããéããŸãã
- 黿± æ®éã®ååŸã«ã¯ã¢ã¯ãã£ãã¹ãã£ã³ãå¿ èŠã§ãã SwitchBot ã¯é»æ± æ®éã ããã¹ãã£ã³å¿çã«èŒããŠããããã§ããæ¬æ©ããåæ©åšãžã¹ãã£ã³èŠæ±ãéãããã®å¿çãåãåããŸãããã®ã¶ã SwitchBot æ©åšã®é»æ± ããããã«äœåã«æ¶è²»ããŸããïŒå¯Ÿè±¡ã¯é»æ³¢ã®å±ãç¯å²ã«ãã SwitchBot æ©åšãã¹ãŠã§ãæ¬æ©ãžã®ç»é²ã®æç¡ã¯åããŸããïŒ å°ãrev0.2.0ã§ã¯é»æ± æ®éãèªãããã®ã¢ã¯ãã£ãã¹ãã£ã³ã鿬 åããSwitchBot æ©åšã®é»æ± æ¶è²»ãæå¶ããŸããã
- 5å以äžåä¿¡ã§ããªãæ©åšã¯ãæªåä¿¡ãã«ãªããŸãã 黿³¢ãå±ãç¯å²ã«èšçœ®ããŠãã ããã
- æã»å¹Žã°ã©ãã¯å¯Ÿè±¡æ©åšã®èšé²å šäœãèªã¿èŸŒã¿ãŸãã èšé²ãæ°ã¶æåããŸããšæç»ã«æéããããå§ããŸããïŒãã®ãšãã¯ãããŒã¿èªã¿èŸŒã¿äžâŠããšè¡šç€ºãããŸãïŒ
- microSD ãç¡ããŠãåäœããŸãããå±¥æŽã¯ RAM äžã®24æéåã®ã¿ã§ã黿ºãåããšæ¶ããŸãã
- ç°åžžåèµ·åã®èšé²ã«ããŸãã«é»æºã®å/å ¥ãæ··ãããŸãã Tab5 ã§ã¯ USB ã®æãå·®ãã«ãã黿ºæãããŠã©ããããã°ã«ããåèµ·åãšåãçç±ã³ãŒãã§è¿ããŸããåºå¥ã§ããªãããããã®çç±ã¯èšé²ããªãããã«ããŠããŸããïŒæ¬ç©ã®ç°åžžã¯ãããã¯ãšã¿ã¹ã¯ïŒå²ã蟌ã¿ãŠã©ããããã°ã§æŸããŸãïŒ ãã ã黿ºã®èœã¡æ¹ã«ãã£ãŠã¯ãé»å§äœäžããšããŠè¿ãããšãããããã®å Žåã¯èšé²ã«æ®ããŸãã
- æããã¯ã«ã¯ã¹ã§ã¯ãããŸããã ã«ã¡ã©ãåãåã£ãå ã®éããé²åºãšã²ã€ã³ã§å²ã£ãçžå¯Ÿçãªæ°å€ã§ããåºæºã«ãªãç §åºŠèšãæã£ãŠããªãããæç®ããŠããŸãããåãéšå±ãªãåãå€ã«ãªããŸãããä»ã®ç §åºŠèšã®æ°å€ãšã¯æ¯ã¹ãããŸããã
- æããã¯ã«ã¡ã©ãåããŠããæ¹åã®æããã§ãã ç»é¢ãšåãåŽãåããŠããã®ã§ãæ¬äœã®çœ®ãæ¹ã§å€ãå€ãããŸããçäžãåããŠçœ®ããšå€©äºã®ç §æãèŠãããšã«ãªããå®éããæããåºãŸãã
- Grove 端åã«æ¿ããã»ã³ãµã¯1ã€ã ãã§ãã çŸåšå¯Ÿå¿ããŠããã®ã¯ ENV â ¢ UNIT ã§ãã
- CO2 ã®æå³ã¯æ©çš®ã§éããŸãã ENV PRO ã® CO2çžåœå€ã¯ã¬ã¹æµæå€ããã®æšå®ã§ãMH-Z19B/Cã»SCD30ã»SCD40 ã® CO2 ã¯å®æž¬ã§ããã°ã©ãã®é ç®åãåºãåããŠããŸãããåãã°ã©ãã«äžŠã¹ãŠæ¯ã¹ãããšã¯ã§ããŸããã
- ENV PRO 㯠Tab5 ã® Grove 端åã§ã¯äœ¿ããŸããã ã¬ã¹æµæå€ã空æ°è³ªã«æç®ãã Bosch ã® BSEC2 ã©ã€ãã©ãªã«ãESP32-P4 çãç¡ãããã§ããESP32 / ESP32-S3 çã¯ããã®ã§ãM5StickC ã M5AtomS3 ã«ç¹ãã§ BLE ã§éã圢ïŒEnvProBeaconïŒã§å¯Ÿå¿ããŠããŸãã
- CO2 ã»ã³ãµã Tab5 ã® Grove 端åã«ã¯å¯Ÿå¿ããŠããŸããã Co2Beacon ãæžã蟌ãã M5StickC / M5AtomS3 ãã BLE ã§åãåã圢ã«ãªããŸãã
- CO2 ã»ã³ãµã®æ ¡æ£ã«ã¯å€æ°ãèŠããŸãã èªå·±æ ¡æ£ã¯æ¢å®ã§ç¡å¹ã§ãïŒææ°ã®å°ãªãéšå±ã§ã¯åºæºãçãããïŒãå幎ã1幎ã«äžåºŠãå±å€ã§æåæ ¡æ£ããŠãã ãããæé 㯠Co2Beacon ã® README ã«ãããŸãã
- 空æ°è³ªã¯é»æºæå ¥çŽåŸã«ã¯åºãŸããã ã¬ã¹ã»ã³ãµã®èŒæ£ãæžããŸã§ãéä¿¡åŽãå€ãéããªãããã§ããèŒæ£ã¯æéã®çµéã ãã§ã¯é²ã¿ãŸããã ããããªç©ºæ°ãšæ±ãã空æ°ã®äž¡æ¹ã«ããããã30åçšåºŠãããããå¿ èŠããããŸãïŒBosch ã®è³æã«ããïŒãé²ã¿å ·åã¯éä¿¡åŽã®ç»é¢ã§åãããŸãã
- Rev 0.1.0 ã®å±¥æŽã¯èªããŸããã èšé²ã®åœ¢åŒãå€ãã£ããããRev 0.1.0 ããæŽæ°ããå Žåã¯ãèšå®ç»é¢ã®ãå±¥æŽããŒã¿ãæ¶å»ãã§æ¶ããŠãã䜿ã£ãŠãã ããã
SwitchBot ã®ãããŒããã£ã¹ãããŒã¿ã®è§£æäœçœ®ïŒæž©åºŠã»æ¹¿åºŠã»CO2ã»é»æ± æ®éãäœãã€ãç®ã«ãããïŒã¯ãTheengs decoder ã®ããã€ã¹å®çŸ©ã仿§æ å ±ãšããŠåç §ããŸãããè§£æã³ãŒããã®ãã®ã¯æ¬ãããžã§ã¯ãã§ç¬èªã«å®è£ ããŠããŸãã
MIT License. 詳现㯠LICENSE ãåç §ããŠãã ããã
忢±ã® lv_conf.h 㯠LVGLïŒMITïŒä»å±ã®ãã³ãã¬ãŒããæ¬ãããžã§ã¯ãçšã«æ¹å€ãããã®ã§ãã
ãã©ã³ããã¡ã€ã«ïŒBIZ UDãŽã·ãã¯ãSIL Open Font License 1.1ïŒã¯ãªããžããªã«å«ããŠããŸããã
ã«ã¡ã©ã®ã»ã³ãµïŒSC202CSïŒãåããããã®åæåã¬ãžã¹ã¿è¡šãšãé²åºã»ã²ã€ã³ã®èšå®å€ã¯ãEspressif ã® esp-cam-sensorïŒApache License 2.0ïŒã«å«ãŸããåã»ã³ãµçšãã©ã€ãããååŸããŠããŸãã該åœç®æã¯ CameraSensor.cpp ãš Config.h ã«ã³ã¡ã³ãã§ç€ºããŠãããŸãã
å€éšã©ã€ãã©ãªã¯å梱ããŠããŸããã æ¬äœã»éä¿¡åŽãšãã«ãå©çšè ã Arduino IDE ã®ã©ã€ãã©ãªãããŒãžã£ã§å°å ¥ãã圢ã§ãã䜿çšããŠããã©ã€ãã©ãªã¯å README ã®ãæºåãã«äžèЧããããŸããéä¿¡åŽã䜿ã BSEC2ïŒBosch SensortecïŒãš M5Unit-ENVïŒMITïŒãåæ§ã§ãããããã®ã©ã€ã»ã³ã¹ã«åŸããŸãã
ã°ã©ã
- ã°ã©ããã¿ãããããšããã®æ¥æãå«ã1ã€äžã®æéãžç§»åããŸããïŒå¹Ž â æ â é± â æ¥ â æ â 10åïŒ
- æéã¿ãã§çްãããå€ããŠããèŠãŠããæ¥æãä¿ã¡ãŸããéžãã§ããã¿ããããäžåºŠã¿ãããããšçŸåšãžæ»ããŸãã
- é ç®ã«ç©ºæ°è³ªãšåŒæ°VOCçžåœå€ã远å ã䞊ã³ã¯æž©åºŠã»æ¹¿åºŠã»æ°å§ã»ç©ºæ°è³ªã»CO2ã»VOC ã§ãã
- 空æ°è³ªã®ã°ã©ãã«ã¯ãæäžéšã«åŠç¿ç¶æ ïŒç¢ºããããïŒãè²ã®åž¯ã§éããŸããé ç®ã®ãã¿ã³ãå¢ãããã«ããã®åºéã®å€ãã©ãããã確ãããåãããŸãã
é¢ããå Žæã®ã»ã³ãµïŒç¬èª BLE ããŒã³ã³ïŒ
- M5StickC / M5AtomS3 ã«æž¬å®ãä»»ãããã®å€ã BLE ã§åãåããããã«ãªããŸãããéä¿¡åŽã®ããã°ã©ã ã¯2ã€ãããŸãã
- EnvProBeacon â ENV PROïŒBME688ïŒãæž©åºŠã»æ¹¿åºŠã»æ°å§ã»ç©ºæ°è³ªã»CO2çžåœå€ã»åŒæ°VOCçžåœå€
- Co2Beacon â MH-Z19B/Cã»SCD30ã»SCD40ãCO2 ã¯å®æž¬å€ïŒSCD ã¯æž©åºŠã»æ¹¿åºŠãïŒ
- ã©ã¡ãããã¿ã³ A é·æŒãã§ Web èšå®ã«å ¥ããå é床ã»ã³ãµã§ç»é¢ã®åããèªå調æŽããŸããBLE éä¿¡ãåãã°åäœã®è¡šç€ºåšãšããŠã䜿ããŸãïŒéä¿¡äžã¯ç»é¢å³äžã«ç·ã®äžžïŒã
- Web èšå®ãæããŠãåèµ·åããŸãããæž¬å®ãšéä¿¡ãéåãããMH-Z19 ã®äºç±ã空æ°è³ªã®åŠç¿ãããçŽããã«æžã¿ãŸããïŒãå šèšå®ã®åæåãã®ãšãã ãåèµ·åããŸãïŒ
- CO2 ã»ã³ãµã®èªå·±æ ¡æ£ã¯æ¢å®ã§ç¡å¹ã§ããææ°ã®å°ãªãéšå±ã§ã¯ããã®éšå±ã®æ¿åºŠã倿°ãšã¿ãªããŠåºæºãäžããããã§ããæåæ ¡æ£ã®æé ãšåºæºã®æ¿åºŠã¯ãã»ã³ãµããšã®ããŒã¿ã·ãŒãã®æ¡ä»¶ã«åŸããŸãã
衚瀺
- ç¬èªããŒã³ã³ã®ã¿ã€ã«ãšã°ã©ãã®é
ç®ã¯ãæ©çš®ãåãã£ãæç¹ã§ç¢ºå®ããŸããå€ãå±ãåã§ã䞊ã³ã¯å€ãããŸããã空æ°è³ªã®èŒæ£äžã¯
(0)ã®ããã«åŠç¿ç¶æ ã ããåºãŸãã - 空æ°è³ªã»CO2çžåœå€ã»åŒæ°VOCçžåœå€ãæã€æ©åšã®ã¿ã€ã«ã¯ãæž©åºŠã»æ¹¿åºŠãåºããããã®3ã€ã2段ã§è¡šç€ºããŸããäœçœ®ã¯ä»ã®2段ã¿ã€ã«ïŒCO2èšã»ENV IIIïŒãšåãé«ãã§ãã
- CO2 ãæã€æ©åšã¯ã宿ž¬ãæšå®ãã§ã°ã©ãã®é
ç®åãåºãåããŸãïŒ
CO2/CO2çžåœïŒã - ã°ã©ãç»é¢ã®æ©çš®ã®æ¬ã«ã¯ãç¬èªããŒã³ã³ã ãèªããååïŒ
ENV PRO/MH-Z19B/C/SCD30/SCD40ïŒãåºãŸããèšé²ã®äžã§ã¯æ©çš®ã衚ã1æåã®ãŸãŸã§ãã
èšé²
- 空æ°è³ªã»CO2çžåœå€ã»åŒæ°VOCçžåœå€ãå±¥æŽã«è¿œå ãèšé²ã®åœ¢åŒã¯å€ããŠããªãã®ã§ãRev 0.2.0 ã®å±¥æŽã¯ãã®ãŸãŸèªããŸãã
- æ¬äœã®RTCïŒRX8130CEïŒã«å¯Ÿå¿ã黿ºãåã£ãŠããéãæå»ãä¿æã
- Grove 端åã® M5Stack UNIT ENV III ã«å¯Ÿå¿ãïŒæž©åºŠã»æ¹¿åºŠã»æ°å§ïŒ
- æ¬äœã«ã¡ã©ãç §åºŠèšãšããŠäœ¿ããéšå±ã®æãããèšé²ãïŒæ åèšé²ã¯ããŠããŸããïŒ
- éšå±ãæããšãã«ç»é¢ãæ¶ããè§Šãããšç¹ãåäœã远å ã
- ããã¯ã©ã€ãèŒåºŠãã¹ã©ã€ããŒã§å€æŽã§ããããã«ã
- 黿± æ®éãèªãããã®ã¢ã¯ãã£ãã¹ãã£ã³ã鿬 åããSwitchBot æ©åšã®é»æ± æ¶è²»ãæå¶ã
- 黿ºã®å/å ¥ãç°åžžåèµ·åãšããŠèšé²ãããªãããä¿®æ£ã
- å±¥æŽã®èšé²åœ¢åŒã倿ŽãïŒåœ¢åŒã®ããŒãžã§ã³ãæãããæ¹¿åºŠã 0.1% å»ã¿ã«ãæ°å§ãšæããã®æ ã远å ïŒ
- èšé²ããåä¿¡ããé ç®ã ããã«å€æŽãåä¿¡ããŠããªãå€ãå€ããŸãŸæžãç¶ããªãããã«ã
- ã°ã©ãã®ç·ã现åãã«ãªãåé¡ãä¿®æ£ãïŒèšé²ã®ééãé·ãé ç®ã¯ååŸã®å®ããŒã¿ãçµã¶ïŒ
- 1æ¥ã°ã©ãã®æäœã»æé«ãæã°ã©ããšé£ãéãåé¡ãä¿®æ£ã
- åçãªãªãŒã¹
äœè : @rin_ofumi



