Protocole » History » Version 46
Frédéric Blanc, 2024-06-04 12:54
1 | 1 | Frédéric Blanc | h1. Protocole |
---|---|---|---|
2 | |||
3 | 1er octet [4][4] |
||
4 | quatre premier bits type |
||
5 | 14 | Frédéric Blanc | |
6 | 1 | Frédéric Blanc | 0 ALARME |
7 | 1 température -43°C à +84.5°C -+0.5°C codé sur 8bits |
||
8 | 2 % de 0 à 100% -+0.5% codé sur 8 bits |
||
9 | 4 | Frédéric Blanc | 3 ADC brut sur 12bits [MSB LSB] concaténé sur 24bits |
10 | 4 entier sur 16 bits [MSB LSB] |
||
11 | 5 float simple précision IEEE754 sur 32bits |
||
12 | 6 ASCII chaine terminé par CRLF |
||
13 | 8 | Frédéric Blanc | 7 Switch binaire 8 données de 1bit codées sur 8bits |
14 | 1 | Frédéric Blanc | ... |
15 | F réservé |
||
16 | |||
17 | quatre octet suivant nombre de données ou numéro de capteur |
||
18 | 0 réservé ou numéro de capteur 0 |
||
19 | 13 | Frédéric Blanc | 1 à 9 nombre de données ou numéro de capteur |
20 | A à F réservé ou nombre de données |
||
21 | 1 | Frédéric Blanc | exemple |
22 | 0x02 0x11 0x8A |
||
23 | Alarme capteur n°2 température +26.5°C |
||
24 | |||
25 | 4 | Frédéric Blanc | 0x14 0x7A 0x79 0x7A 0x7B 0x24 0x33 0x32 0x33 0x32 0x34 0xBB 0x8B 0xB9 0xBB 0xAB 0xBB 0x51 0x40 0x49 0x0F 0xDA 0x6x OPEN 0x0D 0x0A |
26 | 1 | Frédéric Blanc | capteur n°0 température 18.5°C; 18,0°C; 18,5°C; 19,0°C |
27 | capteur n°1 humidité 64.5%; 64.0%; 64.5%; 64.0% |
||
28 | 3 | Frédéric Blanc | capteur n°2 ADC RAW 12bits 3000;3001;3002;3003 |
29 | 1 | Frédéric Blanc | Capteur n°3 float RAW 3.1415926 |
30 | 2 | Frédéric Blanc | capteur n°4 ASCII "OPEN" |
31 | 5 | Frédéric Blanc | |
32 | 14 | Frédéric Blanc | <notextile>0xF0 0x00 0x05 0x10 capteur n°0 est un capteur DHT de type température -43°C à +84.5°C -+0.5°C codé sur 8bits</notextile> |
33 | <notextile>0xF1 0x00 0x05 0x20 capteur n°1 est un capteur DHT de type humidité de 0 à 100% -+ 0.5%</notextile> |
||
34 | <notextile>0xF2 0x00 0x1C 0x10 capteur n°2 est un capteur BME280 de type température -43°C à +84.5°C -+0.5°C codé sur 8bits</notextile> |
||
35 | <notextile>0xF3 0x00 0x1C 0x20 capteur n°3 est un capteur BME280 de type humidité de 0 à 100% -+ 0.5%</notextile> |
||
36 | 1 | Frédéric Blanc | 0xF4 0x00 0x1C 0x50 capteur n°4 est un capteur BME280 de type Pression Barométrique mBAR en float simple précision 32bits |
37 | 8 | Frédéric Blanc | 0xF5 0x00 0x01 0x71 0x0A capteur n°5 type Switch sur GPIO 10 |
38 | 10 | Frédéric Blanc | 0xF6 0x00 0x02 0x33 0x24 0x0C 0x1E capteur n°6 type ADC sur GPIO 36; 12 bits; vref 3Volts |
39 | 14 | Frédéric Blanc | |
40 | 6 | Frédéric Blanc | |
41 | 12 | Frédéric Blanc | h2. Universally Unique IDentifier (UUID) |
42 | 1 | Frédéric Blanc | |
43 | 28 | Frédéric Blanc | - DevAddr: Un ID de l'appareil de 32 bits qui identifie de manière unique le dispositif final. Cet identifiant est fourni par l’entreprise qui l’a créée. |
44 | 1 | Frédéric Blanc | |
45 | 16 | Frédéric Blanc | h2. Commandes |
46 | |||
47 | 1 | Frédéric Blanc | |Commande||END DEVICE SERVER| |
48 | 33 | Frédéric Blanc | |_.0x6F *IDN? 0x0D 0x0A| demande identifiant |_.<-| |
49 | 19 | Frédéric Blanc | |\3=.reponse| |
50 | 33 | Frédéric Blanc | |0x6F "identifiant" 0x0D 0x0A| |_.->| |
51 | |_.0x6F *UUID? 0x0D 0x0A| demande UUID |_.<-| |
||
52 | 19 | Frédéric Blanc | |\3=.reponse| |
53 | 33 | Frédéric Blanc | |0x6F UUID 0x0D 0x0A| |_.->| |
54 | |_.0x6F *SENSOR? 0x0D 0x0A| demande SENSOR|_.<-| |
||
55 | 19 | Frédéric Blanc | |\3=.example de reponse| |
56 | 33 | Frédéric Blanc | |\2<.0xF0 0x00 0x05 0x10 0xF1 0x00 0x05 0x20 0xF2 0x00 0x1C 0x10 0xF3 0x00 0x1C 0x20 0xF4 0x00 0x1C 0x50 0xF5 0x00 0x01 0x71 0x0A 0xF6 0x00 0x02 0x33 0x24 0x0C 0x1E|_.->| |
57 | 19 | Frédéric Blanc | |\3=.explication| |
58 | 22 | Frédéric Blanc | |\3<.<notextile>capteur n°0 est un capteur DHT de type température -43°C à +84.5°C -+0.5°C codé sur 8bits</notextile>| |
59 | 23 | Frédéric Blanc | |\3<.<notextile>capteur n°1 est un capteur DHT de type humidité de 0 à 100% -+ 0.5%</notextile>| |
60 | |\3<.<notextile>capteur n°2 est un capteur BME280 de type température -43°C à +84.5°C -+0.5°C codé sur 8bits</notextile>| |
||
61 | |\3<.<notextile>capteur n°3 est un capteur BME280 de type humidité de 0 à 100% -+ 0.5%</notextile>| |
||
62 | |\3<.<notextile>capteur n°4 est un capteur BME280 de type Pression Barométrique mBAR en float simple précision 32bits</notextile>| |
||
63 | |\3<.<notextile>capteur n°5 type Switch sur GPIO 10</notextile>| |
||
64 | |\3<.<notextile>capteur n°6 type ADC sur GPIO 36; 12 bits; vref 3Volts</notextile>| |
||
65 | 33 | Frédéric Blanc | |_.0x6F *ALARM? 0x0D 0x0A| demande |_.<-| |
66 | 27 | Frédéric Blanc | |\3=.example de reponse| |
67 | 33 | Frédéric Blanc | |\2<.0xF0 0x00 0x05 0x00 0x11 0x8A 0xF1 0x00 0x00 0xF2 0x00 0x00 0xF3 0x00 0x00 0xF4 0x00 0x1C 0xFF 0x21 0x44 0x7A 0x00 0x00 0xF5 0x00 0x01 0x00 0x71 0xFF 0xF6 0x00 0x02 0x00 0x31 0xBB 0x80 0x00 |_.->| |
68 | 27 | Frédéric Blanc | |\3=.explication| |
69 | |\3<.<notextile>alarme capteur n°0 si température supérieure à +26.5°C</notextile>| |
||
70 | |\3<.<notextile>capteur n°1 pas d'alarme</notextile>| |
||
71 | |\3<.<notextile>capteur n°2 pas d'alarme</notextile>| |
||
72 | |\3<.<notextile>capteur n°3 pas d'alarme</notextile>| |
||
73 | |\3<.<notextile>alarme capteur n°4 si Pression Barométrique inférieure à 1000mBAR</notextile>| |
||
74 | |\3<.<notextile>alarme capteur n°5 si Switch sur GPIO 10 passe à 1</notextile>| |
||
75 | |\3<.<notextile>alarme capteur n°6 si ADC sur GPIO 36 dépasse 3000</notextile>| |
||
76 | 33 | Frédéric Blanc | |_.0x6F *SETALARM 0x0D 0x0A 0xF0 0x00 0x05 0x00 0x11 0x8A 0xF4 0x00 0x00 0xF6 0x00 0x02 0xFF 0x31 0xBB 0x80 0x00| demande |_.<-| |
77 | 29 | Frédéric Blanc | |\3=.explication| |
78 | |\3<.<notextile> set alarme capteur n°0 si température supérieure à +26.5°C</notextile>| |
||
79 | |\3<.<notextile>capteur n°4 pas d'alarme</notextile>| |
||
80 | |\3<.<notextile>set alarme capteur n°6 si ADC sur GPIO 36 inférieure à 3000</notextile>| |
||
81 | 41 | Frédéric Blanc | |_.0x6F *GPS? 0x0D 0x0A| demande |_.<-| |
82 | |\3=.example de reponse| |
||
83 | 42 | Frédéric Blanc | |0x22 ... |_.->| |
84 | 44 | Frédéric Blanc | |localisation physique| |
85 | |Pays| |
||
86 | |Code zip| |
||
87 | |Ville| |
||
88 | |Adresse| |
||
89 | |Batiment| |
||
90 | |Etage| |
||
91 | |Piece| |
||
92 | 30 | Frédéric Blanc | |
93 | 31 | Frédéric Blanc | h2. Annexe |
94 | |||
95 | 46 | Frédéric Blanc | type de capteur (inspiré de easymega https://espeasy.readthedocs.io/en/latest/Plugin/_Plugin.htm) |
96 | 1 | Frédéric Blanc | (ATTENTION CODE EN DECIMAL) |
97 | 35 | Frédéric Blanc | |
98 | 34 | Frédéric Blanc | |000|0x0000| réservé| |
99 | 43 | Frédéric Blanc | |001|0x0001| Switch|entrée Digitale|état| GPIO; PULL| |
100 | |002|0x0002| ADC|ADC interne|valeur|GPIO; BITS; VREF| |
||
101 | 34 | Frédéric Blanc | |003|0x0003| Pulse| |
102 | 43 | Frédéric Blanc | |004|0x0004| DS18b20| capteur de température OW|Temp (°C)|numéros de série OW| |
103 | |005|0x0005| DHT |capteur numérique de Température et Humidité|Temp (°C); HR (%)| |
||
104 | 34 | Frédéric Blanc | |006|0x0006| BMP085| |
105 | |007|0x0007| PCF8591| |
||
106 | |008|0x0008| RFID| |
||
107 | |009|0x0009| MCP| |
||
108 | |010|0x000A| BH1750| |
||
109 | |011|0x000B| PME| |
||
110 | |012|0x000C| LCD| |
||
111 | |013|0x000D| HCSR04| |
||
112 | |014|0x000E| SI7021| |
||
113 | |015|0x000F| TSL2561| |
||
114 | 35 | Frédéric Blanc | |
115 | 38 | Frédéric Blanc | |016|0x0010| IR| |
116 | |017|0x0011| PN532| |
||
117 | |018|0x0012| Dust| |
||
118 | |019|0x0013| PCF8574| |
||
119 | |020|0x0014| Ser2Net| |
||
120 | |021|0x0015| Level| |
||
121 | |022|0x0016| PCA9685| |
||
122 | |023|0x0017| OLED| |
||
123 | |024|0x0018| MLX90614| |
||
124 | |025|0x0019| ADS1115| ADC I2C QUAD| |
||
125 | |026|0x001A| SysInfo| |
||
126 | |027|0x001B| INA219| |
||
127 | 37 | Frédéric Blanc | |028|0x001C|BME280| BME280 I2C Temp/Hum/Barometric Pressure Sensor|Temp (°C); HR (%); Barometric (mBAR)| |
128 | 38 | Frédéric Blanc | |029|0x001D| Output| |
129 | |030|0x001E| BMP280 | (Made obsolete, now BME280 can handle both)| |
||
130 | |031|0x001F| SHT1X| |
||
131 | 5 | Frédéric Blanc | |
132 | 032 MS5611 |
||
133 | 033 Dummy |
||
134 | 034 DHT12 |
||
135 | 035 IRTX |
||
136 | 036 FrameOLED |
||
137 | 037 MQTTImport |
||
138 | 038 NeoPixel |
||
139 | 039 Environment - Thermocouple |
||
140 | 040 RFID - ID12LA/RDM6300 |
||
141 | 041 NeoClock |
||
142 | 042 Candle |
||
143 | 043 ClkOutput |
||
144 | 044 P1WifiGateway |
||
145 | 049 MHZ19 |
||
146 | 052 SenseAir |
||
147 | 056 SDS011-Dust |
||
148 | 059 Encoder |
||
149 | 063 TTP229_KeyPad |
||
150 | 079 Wemos Motoshield |
||
151 | 045 MPU6050 |
||
152 | 047 I2C_soil_misture |
||
153 | 048 Motoshield_v2 |
||
154 | 051 AM2320 |
||
155 | 053 PMSx003 |
||
156 | 054 DMX512 |
||
157 | 055 Chiming |
||
158 | 057 HT16K33_LED |
||
159 | 058 HT16K33_KeyPad |
||
160 | 060 MCP3221 |
||
161 | 061 Keypad |
||
162 | 062 MPR121_KeyPad |
||
163 | 064 APDS9960 |
||
164 | 065 DRF0299 |
||
165 | 066 VEML6040 |
||
166 | 067 HX711_Load_Cell |
||
167 | 068 SHT3x |
||
168 | 069 LM75A |
||
169 | 070 NeoPixel_Clock |
||
170 | 071 Kamstrup401 |
||
171 | 072 HDC1080 |
||
172 | 073 7DG |
||
173 | 074 TSL2561 |
||
174 | 075 Nextion |
||
175 | 076 HWL8012 cse7759 in POW r1 |
||
176 | 077 CSE7766 in POW R2 Needs HWL8012 cse7759B CSE7766 Energy sensor, via Serial RXD 4800 baud 8E1 (GPIO1), TXD (GPIO3) |
||
177 | 078 Eastron Modbus Energy meters |
||
178 | 080 iButton Sensor DS1990A |
||
179 | 081 Cron |
||
180 | 082 GPS |
||
181 | 083 SGP30 |
||
182 | 084 VEML6070 |
||
183 | |||
184 | 1 | Frédéric Blanc | 777 EXPERIMENTAL |
185 | 46 | Frédéric Blanc | |
186 | nouvelle liste |
||
187 | |||
188 | P004 Environment - 1-Wire Temperature |
||
189 | P005 Environment - DHT11/12/22 SONOFF2301/7021/MS01 |
||
190 | P006 Environment - BMP085/180 |
||
191 | P007 Analog input - PCF8591 |
||
192 | P008 RFID - Wiegand |
||
193 | P009 Switch Input - MCP23017 |
||
194 | P010 Light/Lux - BH1750 |
||
195 | P011 Extra IO - ProMini Extender |
||
196 | P012 Display - LCD2004 |
||
197 | P013 Distance - HC-SR04/RCW-0001/etc. |
||
198 | P014 Environment - SI7021/HTU21D |
||
199 | P015 Light/Lux - TSL2561 |
||
200 | P016 Communication - IR Receive (TSOP4838) |
||
201 | P017 RFID - PN532 |
||
202 | P018 Dust - Sharp GP2Y10 |
||
203 | P019 Switch input - PCF8574 |
||
204 | P020 Communication - Serial Server |
||
205 | P021 Regulator - Level Control |
||
206 | P022 Extra IO - PCA9685 |
||
207 | P023 Display - OLED SSD1306 |
||
208 | P024 Environment - MLX90614 |
||
209 | P025 Analog input - ADS1x15 |
||
210 | P026 Generic - System Info |
||
211 | P027 Energy (DC) - INA219 |
||
212 | P028 Environment - BMx280 |
||
213 | P029 Output - Domoticz MQTT Helper |
||
214 | P030 Environment - BMP280 |
||
215 | P031 Environment - SHT1x |
||
216 | P032 Environment - MS5611 (GY-63) |
||
217 | P033 Generic - Dummy Device |
||
218 | P034 Environment - DHT12 (I2C) |
||
219 | P035 Communication - IR Transmit |
||
220 | P036 Display - OLED SSD1306/SH1106 Framed |
||
221 | P037 Generic - MQTT Import |
||
222 | P038 Output - NeoPixel (Basic) |
||
223 | P039 Environment - Thermosensors |
||
224 | P040 RFID - ID12LA/RDM6300 |
||
225 | P041 Output - NeoPixel (Word Clock) |
||
226 | P042 Output - NeoPixel (Candle) |
||
227 | P043 Output - Clock |
||
228 | P044 Communication - P1 Wifi Gateway |
||
229 | P045 Gyro - MPU 6050 |
||
230 | P046 Hardware - Ventus W266 |
||
231 | P047 Environment - Soil moisture sensor |
||
232 | P048 Motor - Adafruit Motorshield v2 |
||
233 | P049 Gases - CO2 MH-Z19 |
||
234 | P050 Color - TCS34725 |
||
235 | P051 Environment - AM2320 |
||
236 | P052 Gases - CO2 Senseair |
||
237 | P053 Dust - PMSx003 / PMSx003ST |
||
238 | P054 Communication - DMX512 TX |
||
239 | P055 Notify - Chiming |
||
240 | P056 Dust - SDS011/018/198 |
||
241 | P057 Display - HT16K33 |
||
242 | P058 Keypad - HT16K33 |
||
243 | P059 Switch input - Rotary Encoder |
||
244 | P060 Analog input - MCP3221 |
||
245 | P061 Keypad - PCF8574 / MCP23017 / PCA8575 |
||
246 | P062 Keypad - MPR121 Touch |
||
247 | P063 Keypad - TTP229 Touch |
||
248 | P064 Gesture - APDS9960 |
||
249 | P065 Notify - DFPlayer-Mini MP3 |
||
250 | P066 Color - VEML6040 |
||
251 | P067 Weight - HX711 Load Cell |
||
252 | P068 Environment - SHT3x |
||
253 | P069 Environment - LM75A |
||
254 | P070 Output - NeoPixel Ring Clock |
||
255 | P071 Communication - Kamstrup Multical 401 |
||
256 | P072 Environment - HDC1000/HDC1008/HDC1010/HDC1050/HDC1080 (I2C) |
||
257 | P073 Display - 7-segment display |
||
258 | P074 Light/Lux - TSL2591 |
||
259 | P075 Display - Nextion |
||
260 | P076 Energy (AC) - HLW8012/BL0937 |
||
261 | P077 Energy (AC) - CSE7766 |
||
262 | P078 Energy (AC) - Eastron SDMxxx Modbus |
||
263 | P079 Motor - Wemos / Lolin Motorshield |
||
264 | P080 Switch input - iButton |
||
265 | P081 Generic - CRON |
||
266 | P082 Position - GPS |
||
267 | P083 Gases - SGP30 TVOC/eCO2 |
||
268 | P084 UV - VEML6070 |
||
269 | P085 Energy (DC) - AcuDC243 |
||
270 | P086 Generic - Homie receiver |
||
271 | P087 Communication - SerialProxy |
||
272 | P088 Energy (Heat) - HeatpumpIR |
||
273 | P089 Communication - Ping |
||
274 | P090 Gases - CCS811 TVOC/eCO2 |
||
275 | P091 Switch input - Serial MCU controlled switch |
||
276 | P092 Heating - DL-Bus (Technische Alternative) |
||
277 | P093 Energy (Heat) - Mitsubishi Heat Pump |
||
278 | P094 Communication - CUL Reader |
||
279 | P095 Display - TFT ILI934x/ILI948x |
||
280 | P097 Internal - Touch ESP32 |
||
281 | P098 Motor - PWM Motor |
||
282 | P099 Touch - XPT2046 touchscreen on TFT display |
||
283 | P100 Pulse Counter - DS2423 |
||
284 | P101 Communication - Wake On LAN |
||
285 | P102 Energy (AC) - PZEM-004Tv30-Multiple |
||
286 | P103 Environment - Atlas Scientific EZO pH |
||
287 | P104 Display - MAX7219 dot matrix |
||
288 | P105 Environment - AHT1x/AHT2x/DHT20/AM2301B |
||
289 | P106 Environment - BME68x |
||
290 | P107 UV - SI1145 |
||
291 | P108 Energy (AC) - DDS238-x |
||
292 | P109 Display - ThermoOLED |
||
293 | P110 Distance - VL53L0X (200cm) |
||
294 | P111 RFID - MFRC522 |
||
295 | P112 Color - AS7265X |
||
296 | P113 Distance - VL53L1X (400cm) |
||
297 | P114 UV - VEML6075 |
||
298 | P115 Energy - MAX1704x |
||
299 | P116 Display - ST77xx TFT |
||
300 | P117 Gases - SCD30 CO2, Humidity, Temperature |
||
301 | P118 Communication - Itho |
||
302 | P119 Gyro - ITG3205 |
||
303 | P120 Acceleration - ADXL345 (I2C) |
||
304 | P121 Position - HMC5883L |
||
305 | P122 Environment - SHT2x |
||
306 | P123 Touch - FT62x6 |
||
307 | P124 Output - I2C Multi Relay |
||
308 | P125 Acceleration - ADXL345 (SPI) |
||
309 | P126 Output - Shift registers (74HC595) |
||
310 | P127 Gases - CO2 CDM7160 |
||
311 | P128 Output - NeoPixel (BusFX) |
||
312 | P129 Input - Shift registers (74HC165) |
||
313 | P131 Display - NeoPixel Matrix |
||
314 | P132 Energy (DC) - INA3221 |
||
315 | P133 UV - LTR390 |
||
316 | P134 Distance - A02YYUW |
||
317 | P135 Gases - CO2 SCD4x |
||
318 | P137 Power mgt - AXP192 Power management ESP32 |
||
319 | P138 Power mgt - IP5306 Power management |
||
320 | P141 Display - PCD8544 Nokia 5110 LCD |
||
321 | P143 Switch input - I2C Rotary encoders |
||
322 | P144 Dust - PM1006(K) (Vindriktning) |
||
323 | P145 Gases - MQxxx (MQ135 CO2, MQ3 Alcohol) |
||
324 | P146 Generic - Cache Reader |
||
325 | P147 Gases - SGP4x VOC(/NOx) |
||
326 | P148 Display - POWR3xxD/THR3xxD |
||
327 | P150 Environment - TMP117 Temperature |
||
328 | P151 Environment - I2C Honeywell Pressure |
||
329 | P152 Output - ESP32 DAC |
||
330 | P153 Environment - SHT4x |
||
331 | P154 Environment - BMP3xx |
||
332 | P159 Presence - LD2410 |
||
333 | P162 Output - MCP42xxx Digipot |
||
334 | P164 Gases - ENS16x TVOC/eCO2 |
||
335 | P166 Output - GP8403 Dual channel DAC 0-10V |
||
336 | Environment - Sensirion SEN5x (IKEA Vindstyrka) |