Giter VIP home page Giter VIP logo

Comments (5)

gmag11 avatar gmag11 commented on June 21, 2024 1

In a3e0439 E've added an option to EnigmaIOTConfig.h to control status sending after data here

from enigmaiot.

dgcasana avatar dgcasana commented on June 21, 2024

if you are going to work with json objects I recommend you
enigmaiot_node_msgpack.ino
that example sends messages as you expect.
you can even send values ​​in array (for DHT22 for example).

float humidity = dht.getHumidity();
  float temperature = dht.getTemperature();

  String sensor = String(temperature) + ";" + String (humidity) + ";0"; // dummy data for domoticz

  json["idx"] = 5;
  json["nvalue"] = 0;
  json["svalue"] = sensor;

  int len = measureMsgPack (json) + 1;
	uint8_t* buffer = (uint8_t*)malloc (len);
	len = serializeMsgPack (json, (char*)buffer, len);
	Serial.printf ("Message Len %d\n", len);
	Serial.printf ("Trying to send: %s\n", printHexBuffer (buffer, len));
	// Send buffer data
	if (!EnigmaIOTNode.sendData (buffer, len, MSG_PACK)) {
		Serial.println ("---- Error sending data");
	} else {
		Serial.println ("---- Data DHT22 sent");
	}
	free (buffer);

The channel, type, etc is how CayenneLLP treats the messages, before the msgpack I used the channel as idx in domoticz.

About status messages I'm not sure but I think they can be disabled in
espnow_hall.h

from enigmaiot.

G2G2G2G avatar G2G2G2G commented on June 21, 2024

@dgcasana Yes I mentioned that in my post and asked about Cayenne encoding there as well.

Also DHT22 doesn't measure humidity correctly, can be off 3-20%, you should use SHT31, SHT35, SHT85 or BME280 (if you want pressure)
DHT and AHT sensors aren't usable for anything other than temperature. Do not buy them.

& thanks for the status message, I saw it in there but was hoping there was a better setting than commenting out code.
/e actually nvm I don't see where it can actually be disabled just in that file

from enigmaiot.

gmag11 avatar gmag11 commented on June 21, 2024

CayenneLPP to JSON conversion is done by CayenneLPP library so I've attached to its format. You can check an example here https://github.com/ElectronicCats/CayenneLPP/blob/master/examples/Decode/Decode.ino

You can use that and process it after receiving MQTT message.

EnigmaIOTNode example shows how to manage CayenneLPP data.

If you need specific JSON format, then it is better to use MsgPack.

I do not remember if status data can be disabled. Anyway you can subscribe to g/1/data instead g/1/# to get only data messages. I'll check if there is any setting in EnitmaIOTConfig.h to control that feature. I will add it if does not exist.

from enigmaiot.

G2G2G2G avatar G2G2G2G commented on June 21, 2024

Actually looks like the channel stuff is some specific design of cayenneLPP, some reason the extra messages are added (idc enough to check why) but it's just extra useless data so I guess I'll have to use msgpack.

from enigmaiot.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.