Skip to main content
Solved

Decode IOT dataframe

  • March 16, 2020
  • 3 replies
  • 26 views

nielsgerrits
VIP
Forum|alt.badge.img+60

I think this can be done using FME, but I'm not sure where to start... I'm looking for a way to decode IOT dataframes. I attached the documentation, not sure what to do more because I really don't know where to start. Can anyone give me a pointer?

Best answer by jkr_wrk

I figured it out.

In the CSV is one field with a HexValue. This value can contain up to 4 messages of 16 bits long. The bit-length of the field is 64.

 

First we use the BaseConverter to show the binary value. Then figure out how much padding to use so all zerro's are restored. Then split the attribute to 4 messages. Each 16 bits long and explode them to indiviual messages.

 

These messages have a 2 bit header (00/01/10/11) and a 14 bit data value. The 14 Bit data value can be converted back to an integer with the BaseConverter.

 

 

hexdatatonumber.fmwt

This post is closed to further activity.
It may be an old question, an answered question, an implemented idea, or a notification-only post.
Please check post dates before relying on any information in a question or answer.
For follow-up or related questions, please post a new question or idea.
If there is a genuine update to be made, please contact us and request that the post is reopened.

3 replies

david_r
Celebrity
  • 8392 replies
  • March 16, 2020

I had a quick look at the pdf, and honestly it looks like a job for Python.


jkr_wrk
Influencer
Forum|alt.badge.img+35
  • 424 replies
  • Best Answer
  • March 18, 2020

I figured it out.

In the CSV is one field with a HexValue. This value can contain up to 4 messages of 16 bits long. The bit-length of the field is 64.

 

First we use the BaseConverter to show the binary value. Then figure out how much padding to use so all zerro's are restored. Then split the attribute to 4 messages. Each 16 bits long and explode them to indiviual messages.

 

These messages have a 2 bit header (00/01/10/11) and a 14 bit data value. The 14 Bit data value can be converted back to an integer with the BaseConverter.

 

 

hexdatatonumber.fmwt


nielsgerrits
VIP
Forum|alt.badge.img+60
  • Author
  • 2938 replies
  • March 20, 2020

I figured it out.

In the CSV is one field with a HexValue. This value can contain up to 4 messages of 16 bits long. The bit-length of the field is 64.

 

First we use the BaseConverter to show the binary value. Then figure out how much padding to use so all zerro's are restored. Then split the attribute to 4 messages. Each 16 bits long and explode them to indiviual messages.

 

These messages have a 2 bit header (00/01/10/11) and a 14 bit data value. The 14 Bit data value can be converted back to an integer with the BaseConverter.

 

 

hexdatatonumber.fmwt

Great! Thanks!