TBEAMBACKPACK

Overview Video

 

18650 Battery Install Guide

Start off with getting a plastic pry tool or something similar.

Insert plastic pry tool into USB cut out and push up on the inside of the lid cover.

With the lid removed, do the same thing, but now with the underside of the T-Beam unit.

Be mindful of the cables running under the board.

Flip the board over. 
This is also a good time to WRITE DOWN the existing KEYS on the label located on the inside of the case.  These will be used in console.helium.com

BE MINDFUL OF THE + AND - ON THE BOARD; DAMAGE WILL OCCUR IF BATTERY IS INSERTED WRONG.
Using the the four corners of the board and your fingers as leverage, insert the battery.

Flip the board back over, and stick the GPS unit facing up, on a side wall, toward the direction of the sky, in orientation that you will be mainly using the unit.

 Place the bottom of the board up against the bottom of case, inside the groove that still leaves room for button movement.

Making sure the bottom is still within the groove, press down on the upper corners of the board to guide the whole board back into place.

If successful, the buttons will be clickable, and feel pretty smooth.

Click the lid back into place on the case.

 

Add device to Helium Network

Go to http://console.helium.com and create an account if you do not already have one.

Click the Devices tab, then the Devices button. 

On the Add New Device page, add the Dev EUI, App EUI, and App Key that is printed on the label from inside the case. By default, random keys are auto-populated, DELETE and override them with your own.  The Name can be anything you choose, but do not make it too personal.  Then click Save Device on the bottom right.

Next, we will need to add a Function that will "Decode" the data from the TBeam device into data that is readable.

 Next label the Function name, select Decoder, and Custom Script.

 

 Then put the following in the "Custom Script" field; delete the default text that appears:

 

function Decoder(bytes, port) {
    var decoded = {};

    decoded.latitude = ((bytes[0]<<16)>>>0) + ((bytes[1]<<8)>>>0) + bytes[2];
    decoded.latitude = (decoded.latitude / 16777215.0 * 180) - 90;

    decoded.longitude = ((bytes[3]<<16)>>>0) + ((bytes[4]<<8)>>>0) + bytes[5];
    decoded.longitude = (decoded.longitude / 16777215.0 * 360) - 180;

    var altValue = ((bytes[6]<<8)>>>0) + bytes[7];
    var sign = bytes[6] & (1 << 7);
    if(sign) decoded.altitude = 0xFFFF0000 | altValue;
    else decoded.altitude = altValue;

    decoded.accuracy = bytes[8] / 10.0;
    decoded.sats = bytes[9];

    return decoded;
}

 

 Now we will add an Integration, which will forward the data to another location.

We will be adding 2 integrations in total.  One for Mappers and another for Cargo.
First, we will start with Mappers.  For this, we will use "HTTP", so click on that.

The "Endpoint URL" you will use is:
https://mappers.helium.com/api/v1/ingest/uplink
Name your Integration: Mappers Integration, then click "Add Integration".

 

Next, we will add another Integration.  But this time will be for Cargo.  And you will select the appropriate "Helium Cargo" section and move through the prompt.
Name the Integration "Cargo Integration".
For more information on the integration, see:
https://docs.helium.com/use-the-network/console/integrations/cargo/

The last thing we will need to do on console is virtually connect the device to those integrations.
This can be done through viewing the device details in the Devices page, and using the Labels to connect them together.
or
By using the "Flows" area, when you can draw a flow from the Device, to the Decoder, to the Integration.
This example I have mine in separate flows for better control; but you can have yours split off to Cargo and Mappers at the end:

 That is it!  Time to start mapping!

 

If you need further help, please go to the mappers channel within the Official Helium Discord and @Fizzy