I found the line that prints the bold bit. It is part of the sendData function. So has nothing to do with the request:
serializeJson(root, Serial);
I commented this line out and also alternate between state "open" and "close" to see if I get updates in the "update/delta".
void loop()
{
if (!client.connected())
{
checkWiFiThenMQTT();
}
else
{
client.loop();
if (millis() - lastMillis > 5000)
{
lastMillis = millis();
sendData("closed");
delay(2000);
sendData("open");
}
}
}
I get the following output:
Attempting to connect to SSID: dehei.local...ok!
MQTT connecting connected!
Requesting Shadow [$aws/things/chicken-door/shadow/name/door/get]:
Sending {"state":{"reported":{"value":"closed"}}} to $aws/things/chicken-door/shadow/name/door/update:
Sending {"state":{"reported":{"value":"open"}}} to $aws/things/chicken-door/shadow/name/door/update:
Received [$aws/things/chicken-door/shadow/name/door/update/accepted]: {"state":{"reported":{"value":"closed"}},"metadata":{"reported":{"value":{"timestamp":1638440442}}},"version":628,"timestamp":1638440442}
Received [$aws/things/chicken-door/shadow/name/door/update]: {"state":{"reported":{"value":"open"}}}
Received [$aws/things/chicken-door/shadow/name/door/update/accepted]: {"state":{"reported":{"value":"open"}},"metadata":{"reported":{"value":{"timestamp":1638440444}}},"version":629,"timestamp":1638440444}
Sending {"state":{"reported":{"value":"closed"}}} to $aws/things/chicken-door/shadow/name/door/update:
Sending {"state":{"reported":{"value":"open"}}} to $aws/things/chicken-door/shadow/name/door/update:
Received [$aws/things/chicken-door/shadow/name/door/update]: {"state":{"reported":{"value":"closed"}}}
Received [$aws/things/chicken-door/shadow/name/door/update/accepted]: {"state":{"reported":{"value":"closed"}},"metadata":{"reported":{"value":{"timestamp":1638440447}}},"version":630,"timestamp":1638440447}
Received [$aws/things/chicken-door/shadow/name/door/update]: {"state":{"reported":{"value":"open"}}}
Received [$aws/things/chicken-door/shadow/name/door/update/accepted]: {"state":{"reported":{"value":"open"}},"metadata":{"reported":{"value":{"timestamp":1638440449}}},"version":631,"timestamp":1638440449}
Sending {"state":{"reported":{"value":"closed"}}} to $aws/things/chicken-door/shadow/name/door/update:
Sending {"state":{"reported":{"value":"open"}}} to $aws/things/chicken-door/shadow/name/door/update:
Received [$aws/things/chicken-door/shadow/name/door/update]: {"state":{"reported":{"value":"closed"}}}
Received [$aws/things/chicken-door/shadow/name/door/update/accepted]: {"state":{"reported":{"value":"closed"}},"metadata":{"reported":{"value":{"timestamp":1638440452}}},"version":632,"timestamp":1638440452}
Received [$aws/things/chicken-door/shadow/name/door/update]: {"state":{"reported":{"value":"open"}}}
Received [$aws/things/chicken-door/shadow/name/door/update/accepted]: {"state":{"reported":{"value":"open"}},"metadata":{"reported":{"value":{"timestamp":1638440454}}},"version":633,"timestamp":1638440454}
What I take from this is:
- get shadow does not work
- update/delta does not work (Device Shadow MQTT topics - AWS IoT Core)
- update/accepted works as expected