How To Use A Helium Integration

Let’s start with the basics: What the heck is a Heli­um Inte­gra­tion, and why would you even need one? 

An “inte­gra­tion” is what allows the raw data that’s com­ing from your Heli­um sen­sors to be actu­al­ly used. Whether that’s show­ing a dash­board of soil mois­ture, or tem­per­a­ture, or if you’re track­ing the num­ber of peo­ple who park in a spot, you’ll need an inte­gra­tion to actu­al­ly under­stand that data.

Let’s do a quick review of how infor­ma­tion moves through a LoRaWAN:

It starts with the Device send­ing out a Pack­et over radio waves. That Pack­et is received by a Hotspot. The Hotspot sends it on to an LNS (LoRaWAN Net­work Serv­er), which will typ­i­cal­ly decode the pack­et and send it on to an Integration.

Now, an Inte­gra­tion does­n’t have to be a dis­play; it could be any use of that data. Let’s say you have a Heli­um sen­sor mon­i­tor­ing soil mois­ture under a sprin­kler man­i­fold. If that sen­sor sud­den­ly reports that it’s super wet, you may want to have your Inte­gra­tion just shut off any water to the manifold.

Of course, you might want to know if that soil mois­ture is because of a leak­ing pipe or just that it rained recent­ly, so you prob­a­bly want to tie in data from a local weath­er sta­tion, like this:

To see all that data, you need an Inte­gra­tion. In this case, we’ll be using the Meteo­Sci­en­tif­ic inte­gra­tion, which also has a Rules Engine that allows you to cre­ate rules and work­flows around what hap­pens when it rains, or gets too cold, or does any one of a num­ber of things that your sen­sors can report on. *Full dis­clo­sure: I own and run Meteo­Sci­en­tif­ic and invest­ed in the soft­ware it runs on, which is called UplinkEngine.

For now, I’ll walk you through how to con­nect your Con­sole to an Inte­gra­tion. We’ll get to actu­al­ly dis­play­ing the decod­ed data in the next post.

The Meteo­Sci­en­tif­ic App is free to sign up for, and the small­est device plan is $.50/month, which is com­pet­i­tive with any oth­er inte­gra­tion option out there. 

Integration Options

There are lots of oth­er inte­gra­tion ser­vices, like Dat­a­cake, Ubidots, Tag.io, and of course, Nova’s 1663 option for large com­mer­cial users. Each of them offers some­thing slight­ly dif­fer­ent, and depend­ing on what you want, they may be a good match for you. They all will have the same gen­er­al steps that we’ll fol­low below for MetSci. You’ll gen­er­ate an API key, add it to your LNS, fig­ure out how to read the incom­ing data, and then (for most of them), auto­mate actions based on that data. 

Relax, we won’t do ALL of that in this post. 🙂

I’ll make an assump­tion now in order to save us some time and space, and that’s that you already have your sen­sor up and con­nect­ed to the Heli­um net­work. If you don’t, start over here with the Meteo­Sci­en­tif­ic Con­sole.

Chirpstack Device Setup — Example

Once you have a device set up, it’ll look some­thing like this weath­er sta­tion, which is an exam­ple from the Chirp­stack LNS on console.meteoscientific.com:

You can see that the sen­sor is up and report­ing pack­ets con­sis­tent­ly, and the sig­nal strength is good enough. Now, this is just the Device. To cre­ate an Inte­gra­tion, start by find­ing your Appli­ca­tion in Chirp­stack. Click on the Appli­ca­tion, then look for the Inte­gra­tion tab, like this:

Click on the Inte­gra­tion tab, and then hit either the “plus” but­ton if you don’t cur­rent­ly have one, or the pen­cil icon if you already do (which is the case in this example.)

Once you’re in the inte­gra­tion, we’re going to tell Chirp­stack where to send the data from our sen­sor. This sends our data to the “Inte­gra­tion.”

To do that, we’re going to open anoth­er tab and for our Inte­gra­tion account. In this case, that’s the MetSci (Meteo­Sci­en­tif­ic) app. There we’ll gen­er­ate an API key, then copy and paste a few things back into the Chirp­stack Inte­gra­tion window. 

MeteoScientific App

So, over on app.meteoscientific.com, look for your account name, then API Keys, then go to the top right and hit the “Add API Key” blue but­ton, like this:

Once there, you’ll see the option to add an API key. API stands for Appli­ca­tion Pro­gram­ming Inter­face, and it’s the code that allows two pro­grams to talk to each other. 

Add the key and name it some­thing that makes sense, then save. You’ll need to add a “ver­i­fi­ca­tion code” which will be sent to the email you signed up for the App with. 

You could name it Super Duper Dou­ble Trou­ble Rad­i­cal Wiz­ard Key. The name does­n’t real­ly mat­ter, it just has to make sense to you. Once you see it in your API KEYS list, we’ll move on to the next step: Add the Device you have over on Chirp­stack to the MetSci App, then using the API key to con­nect the two.

Gath­er your DevEUI, AppEUI, and App­Key from your Chirp­stack account for the Device you want to add, then in the MetSci App, go to Core–>Devices and Add Device, like this:

It’ll dis­play a screen where you enter in all your var­i­ous EUIs and keys. Fill those in, then hit Save at the bottom.

For now, don’t wor­ry about Heart­beat Inter­val, Pub­lic View­ing, Para­me­ters or Posi­tion, we’ll fill that in lat­er. Hit Save, and you’ll see your Device. 

Look for the “How to Receive Uplinks” tab and expand that, then care­ful­ly fol­low the instruc­tions. It’ll look like this:

Use the copy/paste but­tons to grab your “End­point URL” and the HTTP Head­ers Autho­riza­tion. We’ll paste those in over on the MetSci Con­sole, back in the Inte­gra­tions tab we left open from before.

Go back to Chirpstack

In Con­sole, on the Inte­gra­tions –> HTTP edit box, start by choos­ing JSON, then fill in the Event End­point URL.

Now hit the “Add Head­er” but­ton, and add in a Head­er with a “key” of Autho­riza­tion and a “val­ue” past­ed in from your app. That will start with “Bear­er” and then have your API key in there. I’ve already done mine, but just for ref­er­ence, this is what it looks like:

You’re done!

That’s it! You’ve con­nect­ed your Con­sole with an Inte­gra­tion using an API Key. Wait for your sen­sor to send a pack­et, and you’ll see the pack­et show up in your MetSci app. I’ll save the next step (tak­ing the decod­ed data from the pack­et and dis­play­ing it in the app) for anoth­er post. For now, pat your­self on the back, you’ve made the last big con­nec­tion in a long set of geeky rules, well done!

If you’re dig­ging this set of instruc­tions, I’d love to have you as a MetSci Con­sole and App cus­tomer. How­ev­er, I’m more psy­ched to just have you using Heli­um in gen­er­al, so what­ev­er com­bo of LNS and Inte­gra­tion you use is fine with me. If you’re hav­ing trou­ble, drop me a note in the com­ments below and I’ll do my best to help you out!

Rock ‘n roll!


Comments

2 responses to “How To Use A Helium Integration”

  1. Hel­lo Nik. I am E. H. from Zeni­ca, which is locat­ed in Bosnia and Herze­gov­ina. Zeni­ca is a small town with a large iron­works. It is called Žel­jezara Zeni­ca (You can check it on this link — you will have to trans­late it into Eng­lish https://bs.wikipedia.org/wiki/Željezara_Zenica) It used to employ 20,000 peo­ple. A big war hap­pened in Bosnia and Herze­gov­ina 30 years ago, which you prob­a­bly know about. The coun­try nev­er recov­ered from that war. You can still see ruined build­ings, bul­let holes and rub­ble from explo­sions, unem­ploy­ment is huge and cor­rup­tion is flour­ish­ing. The coun­try is still divid­ed on nation­al and eth­nic lines. Now you are prob­a­bly won­der­ing what all this has to do with Heli­um and your blog. Well, I dis­cov­ered heli­um 3 years ago. Of course when I dis­cov­ered heli­um I also dis­cov­ered your blog. And I want to tell you that you are the biggest star in the heli­um world! I want­ed to use Heli­um to mon­i­tor the lev­el of air pol­lu­tion in my city. I want­ed to set up mea­sur­ing sta­tions all over the city that would post real-time data to a web­site or app so peo­ple could check the air qual­i­ty before going out­side. They would also final­ly have data that would be col­lect­ed over a peri­od of time so that they would have evi­dence that the steel plant is poi­son­ing my city. I already wrote to you that cor­rup­tion is flour­ish­ing, the Mit­tal Steel com­pa­ny that bought the iron­works does not com­ply with any reg­u­la­tions, it emits huge amounts of dust and smoke into the air at night when it is less vis­i­ble (I can send you pic­tures if you want), local cor­rupt politi­cians assure us that the pol­lu­tion does not orig­i­nate from the steel fac­to­ry but from peo­ple who use coal for heat­ing. Most­ly a long and sad sto­ry, and in the mean­time, peo­ple die en masse from can­cer. And back to heli­um, I ordered two hotspots 3 years ago. One sense­cap and one bob­cat. I installed them, I even installed one sen­sor sim­i­lar to what you wrote in this article. 

    You can check it at the fol­low­ing link: https://app.datacake.de/pd/ec69f339-95b6-4279–93e8-04d49ca24a8d
    One of the hotspots was added to the denylist a year ago for some unknown reason. 

    You can check it at this link: https://www.crowdspot.io/hotspots/112jFvxA6VL3eofEsTMA9f8Ge2KF85VYhXx9zGmWWiFbB2KARGMm?submissionId=5561

    Of course, I imme­di­ate­ly report­ed the incor­rect­ly added hotspot on Crowdspot, sent pic­tures and coor­di­nates of my set­up, and since then a year has passed and noth­ing has hap­pened. It still says sta­tus pend­ing. What can I do? The cost of a new hotspot is about the same as my month­ly salary. I can’t just buy a new hotspot. I haven’t even paid off the two hotspots I bought yet. Please help. You can con­tact me at [redact­ed]
    Sin­cere­ly, E.H.

  2. Hi EH,
    Thanks for writ­ing in and sor­ry to hear about Zeni­ca’s issues. It def­i­nite­ly sounds like Heli­um could help with pro­vid­ing cov­er­age for air qual­i­ty mon­i­tors, love that idea! As far as the Crowdspot issue, I don’t have any con­trol over that. It’s cur­rent­ly an issue being debat­ed and addressed by the com­mu­ni­ty at large in the Dis­cord serv­er. The most you could prob­a­bly do is ral­ly your Heli­um friends to vote it out of the denylist, but that’s not a guar­an­tee either. Sor­ry I don’t have bet­ter news!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.