@@ -185,7 +185,7 @@ void strupp(char* beg) {
185185}
186186
187187# ifdef ZmqttDiscovery
188- void MiFloraDiscovery (char * mac) {
188+ void MiFloraDiscovery (char * mac, char * sensorModel ) {
189189# define MiFloraparametersCount 4
190190 Log.trace (F (" MiFloraDiscovery" CR));
191191 char * MiFlorasensor[MiFloraparametersCount][8 ] = {
@@ -196,10 +196,10 @@ void MiFloraDiscovery(char* mac) {
196196 // component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement
197197 };
198198
199- createDiscoveryFromList (mac, MiFlorasensor, MiFloraparametersCount);
199+ createDiscoveryFromList (mac, MiFlorasensor, MiFloraparametersCount, " Mi-Flora " , " Xiaomi " , sensorModel );
200200}
201201
202- void VegTrugDiscovery (char * mac) {
202+ void VegTrugDiscovery (char * mac, char * sensorModel ) {
203203# define VegTrugparametersCount 4
204204 Log.trace (F (" VegTrugDiscovery" CR));
205205 char * VegTrugsensor[VegTrugparametersCount][8 ] = {
@@ -210,10 +210,10 @@ void VegTrugDiscovery(char* mac) {
210210 // component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement
211211 };
212212
213- createDiscoveryFromList (mac, VegTrugsensor, VegTrugparametersCount);
213+ createDiscoveryFromList (mac, VegTrugsensor, VegTrugparametersCount, " VegTrug " , " VEGTRUG " , sensorModel );
214214}
215215
216- void MiJiaDiscovery (char * mac) {
216+ void MiJiaDiscovery (char * mac, char * sensorModel ) {
217217# define MiJiaparametersCount 3
218218 Log.trace (F (" MiJiaDiscovery" CR));
219219 char * MiJiasensor[MiJiaparametersCount][8 ] = {
@@ -223,10 +223,10 @@ void MiJiaDiscovery(char* mac) {
223223 // component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement
224224 };
225225
226- createDiscoveryFromList (mac, MiJiasensor, MiJiaparametersCount);
226+ createDiscoveryFromList (mac, MiJiasensor, MiJiaparametersCount, " MiJia " , " " , sensorModel );
227227}
228228
229- void FormalDiscovery (char * mac) {
229+ void FormalDiscovery (char * mac, char * sensorModel ) {
230230# define FormalparametersCount 4
231231 Log.trace (F (" FormalDiscovery" CR));
232232 char * Formalsensor[FormalparametersCount][8 ] = {
@@ -237,10 +237,10 @@ void FormalDiscovery(char* mac) {
237237 // component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement
238238 };
239239
240- createDiscoveryFromList (mac, Formalsensor, FormalparametersCount);
240+ createDiscoveryFromList (mac, Formalsensor, FormalparametersCount, " Formal " , " " , sensorModel );
241241}
242242
243- void LYWSD02Discovery (char * mac) {
243+ void LYWSD02Discovery (char * mac, char * sensorModel ) {
244244# define LYWSD02parametersCount 3
245245 Log.trace (F (" LYWSD02Discovery" CR));
246246 char * LYWSD02sensor[LYWSD02parametersCount][8 ] = {
@@ -250,10 +250,10 @@ void LYWSD02Discovery(char* mac) {
250250 // component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement
251251 };
252252
253- createDiscoveryFromList (mac, LYWSD02sensor, LYWSD02parametersCount);
253+ createDiscoveryFromList (mac, LYWSD02sensor, LYWSD02parametersCount, " LYWSD02 " , " Xiaomi " , sensorModel );
254254}
255255
256- void CLEARGRASSTRHDiscovery (char * mac) {
256+ void CLEARGRASSTRHDiscovery (char * mac, char * sensorModel ) {
257257# define CLEARGRASSTRHparametersCount 3
258258 Log.trace (F (" CLEARGRASSTRHDiscovery" CR));
259259 char * CLEARGRASSTRHsensor[CLEARGRASSTRHparametersCount][8 ] = {
@@ -263,10 +263,10 @@ void CLEARGRASSTRHDiscovery(char* mac) {
263263 // component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement
264264 };
265265
266- createDiscoveryFromList (mac, CLEARGRASSTRHsensor, CLEARGRASSTRHparametersCount);
266+ createDiscoveryFromList (mac, CLEARGRASSTRHsensor, CLEARGRASSTRHparametersCount, " CLEARGRASSTRH " , " ClearGrass " , sensorModel );
267267}
268268
269- void CLEARGRASSCGD1Discovery (char * mac) {
269+ void CLEARGRASSCGD1Discovery (char * mac, char * sensorModel ) {
270270# define CLEARGRASSCGD1parametersCount 3
271271 Log.trace (F (" CLEARGRASSCGD1Discovery" CR));
272272 char * CLEARGRASSCGD1sensor[CLEARGRASSCGD1parametersCount][8 ] = {
@@ -276,10 +276,10 @@ void CLEARGRASSCGD1Discovery(char* mac) {
276276 // component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement
277277 };
278278
279- createDiscoveryFromList (mac, CLEARGRASSCGD1sensor, CLEARGRASSCGD1parametersCount);
279+ createDiscoveryFromList (mac, CLEARGRASSCGD1sensor, CLEARGRASSCGD1parametersCount, " CLEARGRASSCGD1 " , " ClearGrass " , sensorModel );
280280}
281281
282- void CLEARGRASSTRHKPADiscovery (char * mac) {
282+ void CLEARGRASSTRHKPADiscovery (char * mac, char * sensorModel ) {
283283# define CLEARGRASSTRHKPAparametersCount 3
284284 Log.trace (F (" CLEARGRASSTRHKPADiscovery" CR));
285285 char * CLEARGRASSTRHKPAsensor[CLEARGRASSTRHKPAparametersCount][8 ] = {
@@ -289,43 +289,44 @@ void CLEARGRASSTRHKPADiscovery(char* mac) {
289289 // component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement
290290 };
291291
292- createDiscoveryFromList (mac, CLEARGRASSTRHKPAsensor, CLEARGRASSTRHKPAparametersCount);
292+ Log.trace (F (" CLEARGRASSTRHKPADiscovery %s" CR), sensorModel);
293+ createDiscoveryFromList (mac, CLEARGRASSTRHKPAsensor, CLEARGRASSTRHKPAparametersCount, " CLEARGRASSTRHKPA" , " ClearGrass" , sensorModel);
293294}
294295
295- void MiScaleDiscovery (char * mac) {
296+ void MiScaleDiscovery (char * mac, char * sensorModel ) {
296297# define MiScaleparametersCount 1
297298 Log.trace (F (" MiScaleDiscovery" CR));
298299 char * MiScalesensor[MiScaleparametersCount][8 ] = {
299300 {" sensor" , " MiScale-weight" , mac, " " , jsonWeight, " " , " " , " kg" },
300301 // component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement
301302 };
302303
303- createDiscoveryFromList (mac, MiScalesensor, MiScaleparametersCount);
304+ createDiscoveryFromList (mac, MiScalesensor, MiScaleparametersCount, " MiScale " , " Xiaomi " , sensorModel );
304305}
305306
306- void MiLampDiscovery (char * mac) {
307+ void MiLampDiscovery (char * mac, char * sensorModel ) {
307308# define MiLampparametersCount 1
308309 Log.trace (F (" MiLampDiscovery" CR));
309310 char * MiLampsensor[MiLampparametersCount][8 ] = {
310311 {" sensor" , " MiLamp-presence" , mac, " " , jsonPresence, " " , " " , " d" },
311312 // component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement
312313 };
313314
314- createDiscoveryFromList (mac, MiLampsensor, MiLampparametersCount);
315+ createDiscoveryFromList (mac, MiLampsensor, MiLampparametersCount, " MiLamp " , " Xiaomi " , sensorModel );
315316}
316317
317- void MiBandDiscovery (char * mac) {
318+ void MiBandDiscovery (char * mac, char * sensorModel ) {
318319# define MiBandparametersCount 1
319320 Log.trace (F (" MiBandDiscovery" CR));
320321 char * MiBandsensor[MiBandparametersCount][8 ] = {
321322 {" sensor" , " MiBand-steps" , mac, " " , jsonStep, " " , " " , " nb" },
322323 // component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement
323324 };
324325
325- createDiscoveryFromList (mac, MiBandsensor, MiBandparametersCount);
326+ createDiscoveryFromList (mac, MiBandsensor, MiBandparametersCount, " MiBand " , " Xiaomi " , sensorModel );
326327}
327328
328- void InkBirdDiscovery (char * mac) {
329+ void InkBirdDiscovery (char * mac, char * sensorModel ) {
329330# define InkBirdparametersCount 3
330331 Log.trace (F (" InkBirdDiscovery" CR));
331332 char * InkBirdsensor[InkBirdparametersCount][8 ] = {
@@ -335,10 +336,10 @@ void InkBirdDiscovery(char* mac) {
335336 // component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement
336337 };
337338
338- createDiscoveryFromList (mac, InkBirdsensor, InkBirdparametersCount);
339+ createDiscoveryFromList (mac, InkBirdsensor, InkBirdparametersCount, " " , " InkBird " , sensorModel );
339340}
340341
341- void LYWSD03MMCDiscovery (char * mac) {
342+ void LYWSD03MMCDiscovery (char * mac, char * sensorModel ) {
342343# define LYWSD03MMCparametersCount 4
343344 Log.trace (F (" LYWSD03MMCDiscovery" CR));
344345 char * LYWSD03MMCsensor[LYWSD03MMCparametersCount][8 ] = {
@@ -349,10 +350,10 @@ void LYWSD03MMCDiscovery(char* mac) {
349350 // component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement
350351 };
351352
352- createDiscoveryFromList (mac, LYWSD03MMCsensor, LYWSD03MMCparametersCount);
353+ createDiscoveryFromList (mac, LYWSD03MMCsensor, LYWSD03MMCparametersCount, " LYWSD03MMC " , " Xiaomi " , sensorModel );
353354}
354355
355- void MHO_C401Discovery (char * mac) {
356+ void MHO_C401Discovery (char * mac, char * sensorModel ) {
356357# define MHO_C401parametersCount 4
357358 Log.trace (F (" MHO_C401Discovery" CR));
358359 char * MHO_C401sensor[MHO_C401parametersCount][8 ] = {
@@ -363,10 +364,10 @@ void MHO_C401Discovery(char* mac) {
363364 // component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement
364365 };
365366
366- createDiscoveryFromList (mac, MHO_C401sensor, MHO_C401parametersCount);
367+ createDiscoveryFromList (mac, MHO_C401sensor, MHO_C401parametersCount, " MHO_C401 " , " Xiaomi " , sensorModel );
367368}
368369
369- void INodeEMDiscovery (char * mac) {
370+ void INodeEMDiscovery (char * mac, char * sensorModel ) {
370371# define INodeEMparametersCount 3
371372 Log.trace (F (" INodeEMDiscovery" CR));
372373 char * INodeEMsensor[INodeEMparametersCount][8 ] = {
@@ -376,25 +377,25 @@ void INodeEMDiscovery(char* mac) {
376377 // component type,name,availability topic,device class,value template,payload on, payload off, unit of measurement
377378 };
378379
379- createDiscoveryFromList (mac, INodeEMsensor, INodeEMparametersCount);
380+ createDiscoveryFromList (mac, INodeEMsensor, INodeEMparametersCount, " INode-Energy-Meter " , " INode " , sensorModel );
380381}
381382
382383# else
383- void MiFloraDiscovery (char * mac) {}
384- void VegTrugDiscovery (char * mac) {}
385- void MiJiaDiscovery (char * mac) {}
386- void FormalDiscovery (char * mac) {}
387- void LYWSD02Discovery (char * mac) {}
388- void CLEARGRASSTRHDiscovery (char * mac) {}
389- void CLEARGRASSCGD1Discovery (char * mac) {}
390- void CLEARGRASSTRHKPADiscovery (char * mac) {}
391- void MiScaleDiscovery (char * mac) {}
392- void MiLampDiscovery (char * mac) {}
393- void MiBandDiscovery (char * mac) {}
394- void InkBirdDiscovery (char * mac) {}
395- void LYWSD03MMCDiscovery (char * mac) {}
396- void MHO_C401Discovery (char * mac) {}
397- void INodeEMDiscovery (char * mac) {}
384+ void MiFloraDiscovery (char * mac, char * sensorModel ) {}
385+ void VegTrugDiscovery (char * mac, char * sensorModel ) {}
386+ void MiJiaDiscovery (char * mac, char * sensorModel ) {}
387+ void FormalDiscovery (char * mac, char * sensorModel ) {}
388+ void LYWSD02Discovery (char * mac, char * sensorModel ) {}
389+ void CLEARGRASSTRHDiscovery (char * mac, char * sensorModel ) {}
390+ void CLEARGRASSCGD1Discovery (char * mac, char * sensorModel ) {}
391+ void CLEARGRASSTRHKPADiscovery (char * mac, char * sensorModel ) {}
392+ void MiScaleDiscovery (char * mac, char * sensorModel ) {}
393+ void MiLampDiscovery (char * mac, char * sensorModel ) {}
394+ void MiBandDiscovery (char * mac, char * sensorModel ) {}
395+ void InkBirdDiscovery (char * mac, char * sensorModel ) {}
396+ void LYWSD03MMCDiscovery (char * mac, char * sensorModel ) {}
397+ void MHO_C401Discovery (char * mac, char * sensorModel ) {}
398+ void INodeEMDiscovery (char * mac, char * sensorModel ) {}
398399# endif
399400
400401# ifdef ESP32
@@ -834,22 +835,22 @@ void launchDiscovery() {
834835 String macWOdots = String (p->macAdr );
835836 macWOdots.replace (" :" , " " );
836837 Log.trace (F (" Launching discovery of %s" CR), p->macAdr );
837- if (p->sensorModel == HHCCJCY01HHCC) MiFloraDiscovery ((char *)macWOdots.c_str ());
838- if (p->sensorModel == VEGTRUG) VegTrugDiscovery ((char *)macWOdots.c_str ());
839- if (p->sensorModel == LYWSDCGQ) MiJiaDiscovery ((char *)macWOdots.c_str ());
840- if (p->sensorModel == JQJCY01YM) FormalDiscovery ((char *)macWOdots.c_str ());
841- if (p->sensorModel == LYWSD02) LYWSD02Discovery ((char *)macWOdots.c_str ());
842- if (p->sensorModel == CGG1) CLEARGRASSTRHDiscovery ((char *)macWOdots.c_str ());
843- if (p->sensorModel == CGP1W) CLEARGRASSTRHKPADiscovery ((char *)macWOdots.c_str ());
844- if (p->sensorModel == MUE4094RT) MiLampDiscovery ((char *)macWOdots.c_str ());
845- if (p->sensorModel == CGD1) CLEARGRASSCGD1Discovery ((char *)macWOdots.c_str ());
846- if (p->sensorModel == MIBAND) MiBandDiscovery ((char *)macWOdots.c_str ());
838+ if (p->sensorModel == HHCCJCY01HHCC) MiFloraDiscovery ((char *)macWOdots.c_str (), " HHCCJCY01HHCC " );
839+ if (p->sensorModel == VEGTRUG) VegTrugDiscovery ((char *)macWOdots.c_str (), " VEGTRUG " );
840+ if (p->sensorModel == LYWSDCGQ) MiJiaDiscovery ((char *)macWOdots.c_str (), " LYWSDCGQ " );
841+ if (p->sensorModel == JQJCY01YM) FormalDiscovery ((char *)macWOdots.c_str (), " JQJCY01YM " );
842+ if (p->sensorModel == LYWSD02) LYWSD02Discovery ((char *)macWOdots.c_str (), " LYWSD02 " );
843+ if (p->sensorModel == CGG1) CLEARGRASSTRHDiscovery ((char *)macWOdots.c_str (), " CGG1 " );
844+ if (p->sensorModel == CGP1W) CLEARGRASSTRHKPADiscovery ((char *)macWOdots.c_str (), " CGP1W " );
845+ if (p->sensorModel == MUE4094RT) MiLampDiscovery ((char *)macWOdots.c_str (), " MUE4094RT " );
846+ if (p->sensorModel == CGD1) CLEARGRASSCGD1Discovery ((char *)macWOdots.c_str (), " CGD1 " );
847+ if (p->sensorModel == MIBAND) MiBandDiscovery ((char *)macWOdots.c_str (), " MIBAND " );
847848 if ((p->sensorModel == XMTZC04HM) ||
848- (p->sensorModel == XMTZC05HM)) MiScaleDiscovery ((char *)macWOdots.c_str ());
849- if (p->sensorModel == INKBIRD) InkBirdDiscovery ((char *)macWOdots.c_str ());
850- if (p->sensorModel == LYWSD03MMC || p->sensorModel == LYWSD03MMC_ATC) LYWSD03MMCDiscovery ((char *)macWOdots.c_str ());
851- if (p->sensorModel == MHO_C401) MHO_C401Discovery ((char *)macWOdots.c_str ());
852- if (p->sensorModel == INODE_EM) INodeEMDiscovery ((char *)macWOdots.c_str ());
849+ (p->sensorModel == XMTZC05HM)) MiScaleDiscovery ((char *)macWOdots.c_str (), " XMTZC0xHM " );
850+ if (p->sensorModel == INKBIRD) InkBirdDiscovery ((char *)macWOdots.c_str (), " INKBIRD " );
851+ if (p->sensorModel == LYWSD03MMC || p->sensorModel == LYWSD03MMC_ATC) LYWSD03MMCDiscovery ((char *)macWOdots.c_str (), " LYWSD03MMC " );
852+ if (p->sensorModel == MHO_C401) MHO_C401Discovery ((char *)macWOdots.c_str (), " MHO_C401 " );
853+ if (p->sensorModel == INODE_EM) INodeEMDiscovery ((char *)macWOdots.c_str (), " INODE_EM " );
853854 createOrUpdateDevice (p->macAdr , device_flags_isDisc, p->sensorModel );
854855 } else {
855856 Log.trace (F (" Device already discovered or UNKNOWN_MODEL" CR));
0 commit comments