-
-
Notifications
You must be signed in to change notification settings - Fork 3.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Loxone JSON parser doesn't handle lx=0 correctly #3809
Comments
I never used Loxone so bear with me. There is no logic within WLED to turn WLED off from Loxone and there never was (explicitly). // lx parser
#ifdef WLED_ENABLE_LOXONE
int lx = elem[F("lx")] | -1;
if (lx > 0) {
parseLxJson(lx, id, false);
}
int ly = elem[F("ly")] | -1;
if (ly > 0) {
parseLxJson(ly, id, true);
}
#endif So I do not know if this is a bug or not but the last change to Loxone code was 3 years ago. |
If you do think this will solve Loxone problem, open a PR, please. |
Hey! This issue has been open for quite some time without any new comments now. It will be closed automatically in a week if no further activity occurs. |
I've created the pull request, sorry that it took so long... |
Fixes #3809 Loxone JSON parser doesn't handle lx=0 correctly
Fixes Aircoookie#3809 Loxone JSON parser doesn't handle lx=0 correctly
What happened?
I connected WLED to Loxone using the UDP Jason API to control individual segments:
{"seg":[{"id":0,"lx":<v>}]}
However, when I tunred the stripe off in loxone, it never turned off... I then debuged it using CURL:
curl -X POST -H "Content-Type: application/json" -d '{"seg":[{"id":0,"lx":0}]}' 192.168.3.245/json
I got success, but nothing changed.
Using this command, the stripe looked off (change: "lx":1):
curl -X POST -H "Content-Type: application/json" -d '{"seg":[{"id":0,"lx":1}]}' 192.168.3.245/json
I checked the code and in the json.cpp in line 191 and 196 I saw:
but it mus be greater or equal, since loxone sends a 0 to turn everything off.
Changing the code to this works fine with loxone:
To Reproduce Bug
send
curl -X POST -H "Content-Type: application/json" -d '{"seg":[{"id":0,"lx":0}]}' 192.168.3.245/json
stripe won't turn offExpected Behavior
stripe should turn off
Install Method
Self-Compiled
What version of WLED?
0.14.2-b1
Which microcontroller/board are you seeing the problem on?
ESP32
Relevant log/trace output
No response
Anything else?
No response
Code of Conduct
The text was updated successfully, but these errors were encountered: