Vraag

Hoofdletters bij LRC-AS key en AppSKey gaat fout?

  • 8 September 2017
  • 1 reactie
  • 519 keer bekeken

Hallo,

Ik ben bezig geweest met het volgen van de tutorials van iotacademy (https://github.com/iotacademy/NodeRed_KPN_LoRa/wiki) waarbij een Node-RED server wordt gebruikt als applicatieserver. De Node-RED server wordt hierbij gebruikt voor het ontvangen en verwerken van uplink berichten van een LoRa node. Daarnaast wordt Node-RED gebruikt voor het verzenden van een downlink bericht naar de LoRa node.

Na wat stoeien heb ik alles uiteindelijk werkend kunnen krijgen. Hierbij ben ik erachter gekomen dat het belangrijk is voor het controleren en genereren van de ‘SHA tokens’ dat de ‘SHA key’ geen hoofdletters bevat. Hiermee bedoel ik dat elke hoofdletter in de key als kleine letter moet worden ingevoerd. Dit is gek want bij het aanmaken van de applicatie server in KPN Thingspark heb ik de ‘LRC-AS key’ met hoofdletters (en zonder streepjes) ingevoerd. Het voorbeeld in het invulveld is echter met hoofdletters en met streepjes. Nu lijkt het niet uit te maken of er wel of niet streepjes worden gebruikt maar als je een key met hoofdletters in het veld kopieert wordt deze op de achtergrond waarschijnlijk naar kleine letters omgezet. Als er dus gebruik wordt gemaakt van hoofdletters op de applicatie server kan er dus geen goede token worden gegenereerd.

Hetzelfde probleem ben ik ook tegengekomen bij het gebruiken van een andere key namelijk, de ‘AppSkeys’ die ingevuld moeten worden wanneer er gebruik wordt gemaakt van Activation By Personalization’ (ABP). In eerste instantie had ik op Thingspark mijn node toegevoegd waarbij ik de ‘AppSKey’ in hoofdletters had ingevuld. Alles lijkt hiermee prima te werken, als ik een uplink stuur vanaf mijn LoRa node kan ik de data lezen m.b.v. de Wireless-logger van KPN. Ook als ik een downlink bericht stuur vanaf de Node-RED server kan ik de data in Wireless-logger lezen. Alles lijkt bij deze dus te werken. Het vreemde was alleen dat de data die door mijn LoRa node ontvangen werd volledig anders is dan de verzonden data. Toen moest ik al snel denken aan het feit dat hoofdletters bij de ‘SHA key’ ook een probleem was. Met deze gedachten heb ik het mijn LoRa node opnieuw toegevoegd in de device manager waarbij ik de ‘AppSKey’ met kleine letters heb ingevuld. Vervolgens was mijn LoRa module in staat om de juiste informatie te weergeven. De data die ik verzond vanaf de applicatieserver kon ik op deze manier correct op mijn LoRa node ontvangen. Alleen nu is het weer zo dat de Wireless-logger de data niet correct kan lezen en het lijkt alsof deze juist hoofdletters nodig heeft om de data correct te kunnen weergeven.

Zie (https://zakelijkforum.kpn.com/lora-forum-16/lora-class-c-otaa-9626) voor de reden waarom ik gebruik maak van ABP i.p.v. OTAA.

Mijn vraag uit dit verhaal luidt of het de bedoeling is van KPN om deze keys met kleine letters te gebruiken of het een bug is of dat ik mijn configuratie verkeerd heb uitgevoerd? Ik vind het in ieder geval raar dat alle voorbeelden in de in te vullen velden tijdens de configuratie gebruik maken van hoofdletters maar deze op de achtergrond dus lijken te veranderen naar kleine letters.

Ter informatie: de LoRa node wordt geactiveerd via ABP als klasse C.

1 reactie

Reputatie 7
Badge +11
Hallo @Xkottelaar, dat is een hele goede vraag. Bedankt voor de uitgebreide toelichting!

Bij mijn weten zijn de keys inderdaad hoofdletter gevoelig. Als ik naar andere keys kijk, zie ik namelijk ook keys met kleine letters en hoofdletters door elkaar. Zolang de keys in de device als op de portal precies gelijk zijn aan elkaar, moet alles goed gaan vermoed ik.

Het is daarom niet nodig om hoofdletters te gebruiken. Als de keys alleen in kleine letters zijn, dien je dat overal 1 op 1 overnemen. Na rondvraag gedaan te hebben bij mijn collega's, lijken er geen bugs bekend te zijn met betrekking tot hoofdletter gebruik. Bij de servicedesk komen hier geen meldingen voor binnen en wisten ze niet meteen een mogelijke oorzaak of verklaring te geven.

Gezien je OTAA nog niet werkend hebt, mogelijk vanwege verouderde firmware, is het een goed idee om er nogmaals naar te kijken als er nieuwe firmware beschikbaar blijkt? Dan heb je dat in ieder geval uitgesloten! 😉

Ik verneem het graag! Als je bevindingen blijven, wil ik dit voorleggen aan de technische dienst.

Reageer