OpeniKair

来自Jack's Lab
(版本间的差异)
跳转到: 导航, 搜索
(TODO)
(TODO)
第127行: 第127行:
 
* <s>重启后 push 的第一条 light 数据为 -1</s>
 
* <s>重启后 push 的第一条 light 数据为 -1</s>
 
* <s>上传数据间隔不固定。需改为用固定的时间间隔上传数据(比如 1 min),2 s 监测一下热点传感器(比如温度、湿度或者光照),有大的变化就上传数据</s>
 
* <s>上传数据间隔不固定。需改为用固定的时间间隔上传数据(比如 1 min),2 s 监测一下热点传感器(比如温度、湿度或者光照),有大的变化就上传数据</s>
 +
* 动态开启/关闭 MQTT
  
 
<br>
 
<br>

2018年10月30日 (二) 20:30的版本

目录

1 Overview

每个可拆卸部件,内部都有一颗 STM8S105K6,模拟 i2c slave device

所有的部件通过一个 4 pin 的快拆口连接,从圆外往圆心数,其定义为:

  • 5V
  • SCL (测试点常常标为 15) <=== STM8S105K6_PIN12 (I2C_SCL)
  • SDA (测试点常常标为 14) <=== STM8S105K6_PIN11 (I2C_SDA)
  • GND


所有部件的 STM8S105K6 的 PIN11 (I2C_SDA) 都连到统一的 SDA; PIN12 (I2C_SCL) 都连到统一的 SCL


  • PM2.5 部件的 i2c address 是 0x30
  • 顶盖带触摸的 i2c address 是 0x10
  • BH1750 光照度传感器之 i2c address 是 0x5C
  • SHT2x 温湿度传感器的 i2c address 是 0x40



2 STM8S105K6

STM8S105K6 Datasheet

STM8S105K-QFP32-pinmap.jpg



3 Hacking

3.1 Dust Sensor

  • i2c address is 0x30
  • Type is PPD42NS, a STM8S105K6 MCU emulating a i2c slave device
l`▒▒▒Reading i2c device...
bytes: 34 34 00 00 00 00 34 00 00 00 00 00
Reading i2c device...
bytes: 34 34 00 00 00 00 34 00 00 00 00 00
Reading i2c device...
bytes: 34 34 00 00 00 00 34 00 00 00 00 00
Reading i2c device...
bytes: 34 34 00 00 00 00 34 00 00 00 00 00

Reading i2c device...
bytes: 34 AD 3E E0 45 45 61 01 5F 00 00 00
Reading i2c device...
bytes: 34 A1 A4 25 46 46 E6 08 C5 00 00 00

Reading i2c device...
bytes: 34 FC C6 52 46 46 E8 0C 50 00 00 00
Reading i2c device...
bytes: 34 C1 2F B9 46 46 20 0C 93 00 00 00
Reading i2c device...
bytes: 34 0A 05 82 46 46 4D 09 C4 00 00 00
Reading i2c device...
bytes: 34 C7 3A BF 46 46 80 09 6F 00 00 00
Reading i2c device...
bytes: 34 8D 97 ED 46 46 4C 07 F7 00 00 00
Reading i2c device...
bytes: 34 74 B9 38 46 46 94 08 C9 00 00 00


Reading i2c device...
bytes: 34 0F 09 7F 46 46 54 07 8B 00 00 00
Reading i2c device...
bytes: 34 19 EC 4F 46 46 D5 10 12 00 00 00
Reading i2c device...
bytes: 34 CC 0C A2 46 46 00 13 3C 00 00 00
Reading i2c device...
bytes: 34 D9 44 DD 46 46 9E 0D 25 00 00 00
Reading i2c device...
bytes: 34 15 0F 83 46 46 F5 0A B3 00 00 00
Reading i2c device...
bytes: 34 8C 84 FA 46 46 A4 08 54 00 00 00
......
concentration = 1292.44 pcs/L, 365.76 pcs/0.01cf, LowPulsOccu = 211526, Ratio = 0.71
concentration = 2019.79 pcs/L, 571.60 pcs/0.01cf, LowPulsOccu = 331231, Ratio = 1.10
concentration = 830.56 pcs/L, 235.05 pcs/0.01cf, LowPulsOccu = 135637, Ratio = 0.45
concentration = 2811.53 pcs/L, 795.66 pcs/0.01cf, LowPulsOccu = 461557, Ratio = 1.54
concentration = 1997.89 pcs/L, 565.40 pcs/0.01cf, LowPulsOccu = 327624, Ratio = 1.09
concentration = 1817.27 pcs/L, 514.29 pcs/0.01cf, LowPulsOccu = 297887, Ratio = 0.99

concentration = 13836.23 pcs/L, 3915.65 pcs/0.01cf, LowPulsOccu = 2139899, Ratio = 7.13
concentration = 3388.41 pcs/L, 958.92 pcs/0.01cf, LowPulsOccu = 556358, Ratio = 1.85
concentration = 4074.18 pcs/L, 1152.99 pcs/0.01cf, LowPulsOccu = 668694, Ratio = 2.23
concentration = 2964.61 pcs/L, 838.99 pcs/0.01cf, LowPulsOccu = 486733, Ratio = 1.62
concentration = 6126.22 pcs/L, 1733.72 pcs/0.01cf, LowPulsOccu = 100705, Ratio = 3.34
concentration = 4440.79 pcs/L, 1256.74 pcs/0.01cf, LowPulsOccu = 728527, Ratio = 2.43


3.2 Temp & Humi

  • Type is SHT21/SHT2x
  • i2c address is 0x40


3.3 HCHO Sensor

  • Type is Dart 2-FE5 , a STM8S105K6 MCU emulating a i2c slave device


3.4 Light Sensor

  • Type is BH1750
  • i2c address is 0x5C


  • BH1750:
    • ADDR-> LOW (Pull down), i2c address is 0x23
    • ADDR-> HIGH (Pull up), i2c address is 0x5C



4 TODO

  • 重启后 push 的第一条 light 数据为 -1
  • 上传数据间隔不固定。需改为用固定的时间间隔上传数据(比如 1 min),2 s 监测一下热点传感器(比如温度、湿度或者光照),有大的变化就上传数据
  • 动态开启/关闭 MQTT


5 Reference












个人工具
名字空间

变换
操作
导航
工具箱