Custom payload formatter for the 8in1 Seeed weather station with TheThingsNetwork and TheThingsSpeak

Marco le 17 Avr 2023
Dernière activité Réponse par Marco le 19 Avr 2023

I have purchased an 8in1 weather station from Seed (see Link here), added it to TheThingsStack v3 and changed the payload formatter such that I receive following payload:
{
"barometric_pressure": 96920,
"battery": 0,
"humidity": 92,
"light_intensity": 11848,
"rain_gauge": 0,
"temperature": 6.8,
"uv_index": 0.6,
"wind_direction": 60,
"wind_speed": 0
}
I have followed the ThingSpeak manual here, which seems pretty straight forward to me: just add channel ID and Write Api Key.
However, on TheThingsStack, I see following error:
"data": {
"@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
"namespace": "pkg/applicationserver/io/web",
"name": "request",
"message_format": "request",
"correlation_id": "XXXXprivate",
"code": 14,
"details": [
{
"@type": "type.googleapis.com/google.protobuf.Struct",
"value": {
"body": "error_too_many_requests",
"status_code": 429,
"url": "https://api.thingspeak.com/things_network/v3/update/",
"webhook_id": "loraweatherstation"
}
}
]
},
[...]
"visibility": {
"rights": [
"RIGHT_APPLICATION_TRAFFIC_READ"
]
TheThingSpeak reports entries without the actual data. I think the entries are generated with all get requests.
Christopher Stapels
Christopher Stapels le 17 Avr 2023 (modifié(e) le 17 Avr 2023)
You will need your payload fields to contain field1=xnn etc.
But the 429 means you are posting too frequently. If you have a free license you can only post once every 15 seconds. Reduce the frequency and try with the explicit field identifiers. Please let us know how it goes.
Marco
Marco le 19 Avr 2023
Thank you Christopher, I was able to resolve the issue with your help. Best, Marco.