Uplink MIC error --- PostgreSQL shows keys all good?

I have seen many posts regarding this and have gone over the details at this end and I am convinced keys are good. I have two nodes both are OTAA. At one point (a week or so ago) both were communicating but now only one of them comes up. I have configured Chirpstack APP_KEY, JOIN_EUI and DEV_EUI and then verified this with postgreSQL table …Chirpstack - Applications - Device eui- Events shows error. What else can I do?


image

You may messed up the keys in Postgres and Redis.
MIC error is 99.99% incorrect keys in PostGres and Redis.
You may click save again in the Device keys to sync the keys.

Have you changed the LoRaWAN MAC 1.0.x to 1.1.x?

I reflashed the node device with a new APP_KEY and changed the APP_KEY on chirpstack. I get the same issue.

Postgres database reveals new key and JOIN_EUI are correct.
Docker logs indicate the node is sending join request packets.
Chirpstack web page indicates incoming join requests with correct JOIN_EUI and DEV_EUI along with continued MIC error.

I am using LoRaWAN MAC 1.0.3 on both ends. Could it be something with DevNonce?

Problem solved.
Turns out the ST FW on the end node somehow somewhere was retaining bad info. I was using CubeIDE to reload. I changed to Cube Programmer and first erased ALL of flash then reprogrammed and board immediately came up and was recognized by chirpstack!

So it is confirmed to be wrong Keys at node.

Maybe…strange that postgresql was logging good appkey joineui and deveui and chirp stack was logging good joineui and deveui

For sure it was node related and something retained in flash

Some firmware of the node will retain the keys into flash after one successful join.
Then it will keep trying to use the saving keys for a while.
Either re-flash or force the node to do rejoin.

1 Like

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.