Ubidots Community

Helium to Ubidots using CubeCell HTCC-AB02


I am using a CubeCell HTCC-AB02 (programming in the Arduino environment) to connect to the Helium network which then pushes the data to Ubidots. I have successfully transmitted the default data so I have confirmed the initial setup can connect as expected.

Below is the payload portion snipped from the following Git (link) example I am using to get up and running:

/* Prepares the payload of the frame */
static void prepareTxFrame( uint8_t port )
  /*appData size is LORAWAN_APP_DATA_MAX_SIZE which is defined in "commissioning.h".
  *appDataSize max value is LORAWAN_APP_DATA_MAX_SIZE.
  *if enabled AT, don't modify LORAWAN_APP_DATA_MAX_SIZE, it may cause system hanging or failure.
  *if disabled AT, LORAWAN_APP_DATA_MAX_SIZE can be modified, the max value is reference to lorawan region and SF.
  *for example, if use REGION_CN470, 
  *the max value for different DR can be found in MaxPayloadOfDatarateCN470 refer to DataratesCN470 and BandwidthsCN470 in "RegionCN470.h".
  appDataSize = 4;
  appData[0] = 0x00;
  appData[1] = 0x01;
  appData[2] = 0x02;
  appData[3] = 0x03;

I have three float values I need to send from my sensors:

  • pressure
  • temperature
  • humidity

I am struggling figuring out how to append these sensor values using the AppData structure especially since they are float values to begin with.

It appears that I also may need to use a decoder on the helium console side which I think may be the key to separating the AppData payload out to usable variables that are sent to Ubidots. I found this decoder sample and I created a flow in the helium console HTCC-AB02 → Decoder → Ubidots.

This resulted in a new variable “payload” showing up on the Ubidots side by I am still having trouble achieving my desired result of the three variables above being sent and ending up as floats on the Ubidots side.

Any help or advice would be greatly appreciate!

Thank you.

Hello, @Backpacker87

I hope this note finds you well,

Normally such integration and the decoding part are done via our Hellium plugin. There, you would find a decoding function that you can edit, also you would have a debugging console to which you can print the raw incoming data and the decoded one. Here you will find an article about it. In case you have already implemented it, I would appreciate you send me a private message with your Ubidots account’s username so we can verify the decoding function in your plugin. I’ll be attentive to your comments.



Hello, @Backpacker87

I hope you’re well,

I 've looked in your account and was able to see the variables with Floating values, I also noticed that the payload variable you mentioned is not there and the plugin decoder seems to be doing its job. I’ll be attentive to your comments.