[Solved] Same data transmitted - Different data received (Encryption, FCnt)

LAST-EDIT [Solved] : My node had the disable frame-counter validation checked. I unchecked it.

As I’ve read in several topics, data displayed with mosquitto subscription are supposed to be decrypted but encoded in base-64.

I transmit a message (“ABC”) every X seconds from my end-device. This message is forwarded to my Lora App Server. The data displayed with mosquitto should be always the same. However, each time I am supposed to receive my B-64 encoded “ABC” message I have a new different data string compared to the previous data. When I reset my end-device, I receive the same loop of messages (see example below) :

Exemple :

Original message : “ABC”

1st data received : “CfGy”
2nd data received : “LutR”
3rd data received : “boOp”
–> Arduino (end-device) Reset
4th data received : “CfGy”
5th data received : “LutR”
6th data received : “boOp”

According to this thread https://github.com/matthijskooijman/arduino-lmic/issues/177, what I am reading on my mosquitto subscribed topic is some encrypted data which change every new frame because of the FCntUp included in the encryption algorithm. I am probably wrong somewhere but the question is: where ?

EDIT : I used the lorawan.go library to try to encode/decode data. The PHYPayload (decode) example works fine. I put my keys, devAddr and the Phypayload read on my gateway and it returns me the correct decryption of the framePayload with a good MIC.

Otherwise, for a “ABCD” transmission, I read “CAQ4SQ==” on mosquitto. “CAQ4SQ==” is supposed to be the decrypted FRMPayload in b-64. If I convert it in Hexa I have 0x08 0x04 0x38 0x49 which is not 0x65 0x66 0x67 0x68.