TABS nodes from Tracknet (now Semtech)

Remember this?

Also, I know someone in this forum sees an awful lot of data on their gateway from occupancy-detection devices from a nearby office building. I trust them not to try to mess with those devices, but: if they would (and could, by determining the AppKey for a range of DevEUIs), then your devices may be affected too.

This is my payload decoder:

function Decoder(bytes, port) {
// Decode an uplink message from a buffer
// (array) of bytes to an object of fields.
var decoded = {};

// if (port === 1) decoded.led = bytes[0];
if (port==100) { //window door sensor
decoded.status=bytes[0];
decoded.battery=((bytes[1] & 0x0f)+25)/10;
decoded.temp=(bytes[2] & 0x7f)-32;
decoded.interval=bytes[3]+256bytes[4];
decoded.counter=bytes[5]+256
bytes[6]+65536bytes[7];
} else if (port==136) { //object locator TBOL100
decoded.status=bytes[0];
decoded.buttontrigger = bytes[0] & 0x01;
decoded.movingmode = (bytes[0] & 0x02)>>1;
decoded.nognssfix = (bytes[0] & 0x08)>>3;
decoded.gnsserror = (bytes[0] & 0x016)>>4;
decoded.battery=((bytes[1] & 0x0f)+25)/10;
decoded.temp=(bytes[2] & 0x7f)-32;
decoded.lat=(bytes[3]+256
bytes[4]+65536bytes[5]+16777216(bytes[6]&0x0F))/1000000;
decoded.long=(bytes[7]+256bytes[8]+65536bytes[9]+16777216*(bytes[10]&0x1F))/1000000;
decoded.precision=Math.pow(2,((bytes[10] & 0xE0)>>5)+2);
}
return decoded;
}

1 Like

It looks like the forum mangled your decoder…

I got a decoder for all the tabs devices (yeah every 7 different devices in one decoder) for the The Things Stack V3 ready. I did take a look at the one provided by Sensational Systems for the v2 stack and changed it for V3, did a bit ob clean up and added all the other tabs devices as well… now the variables have descriptive names and use camelCase, the battery and temperature is only decoded in one place (because every tabs is providing these information), etc.

You can find the decoder for v3 stack here on github: https://github.com/dasdigidings/the_things_stack_v3_tabs_decoder

4 Likes

Thanks for this lib have found a wee issue when using object tracker details in Git issue.

Thank you @iiLaw for finding the error! I fixed it the way you did and there is a new commit now with the working code. I was only able to test the sound level, humidity, presence detection, light and window&door sensor beforehand because these are in my possession. So i couldn*t test the object locator, water level and iaq sensors with real sensors on my desk.

1 Like

Has anyone migrated these from v2 to v3 already?

There are now a couple of TBMS100/TBHV100 monitoring movement/temperature/humidity in bat boxes in the city of Delft, Netherlands and it would be nice to get them migrated to v3 (before the owner of the gateway they’re now connected to decides to upgrade their gateway). Preferably I would like to reset them remotely so triggering another OTAA. They are difficult for me to access physically.

I checked the manual, to see if there is perhaps a downlink command I can send to trigger them to reboot and do another OTAA, but found no such information. Perhaps someone knows more, maybe even an undocumented command?

Replying to myself: I got a friendly answer from Browan support.

There is indeed a downlink command to trigger a remote reboot of the node, which also performs the OTAA join again. I’ve tested this and it works, I see a new join, with an OTAA performed against v3 and the device receives a new device address, data coming in, etc. This mechanism can be used to migrate nodes from v2 to v3, as described in Migrating OTAA Devices from V2 to V3
specifically if physical access to reboot each sensor is difficult.

I’ll post about this in the https://www.thethingsnetwork.org/forum/c/v2-to-v3-upgrade/migrating-devices-to-v3/104 category later today or tomorrow.

1 Like

Excellent news because after 4 days I’m still waiting for a VOC node to decide the session is gone and a new join is required. ADR moved it from SF9 to SF12 in two days (so the firmware has detected it isn’t getting the anticipated responses) but it hasn’t hit the point where it rejoins yet.

1 Like

Just wondering if someone here uses TBOL100 Browan Object Locator devices.

I try one to track a moving object, and while TBOL100 does what I expect it to do - start sending locations every 2 minutes, when moves - it does always send GNSS fix that has been 2-3-4 minutes ago. So while roundtrip time from the sensor via my own gateway, then through TTN to HTTP hook of my service, then to the app is 1-2 seconds, position reflected in the app is 2-4 minutes from the past.
This kind of defies the purpose of real-time object tracking, and the end device is the culprit.

I wonder whether this is by design, or there is some parameters in TBOL100 I can tune? This doesn’t seem logical, other sensors do send realtime fixes but this is the lightest one and hence preferable. Firmware upgrade?

There are a couple of downlink commands you can send to tune the behaviour, see the manual at (for example), from page 12 on:

Well, I did send 00 1E 00 on port 204, as described in manual, but it doesn’t seem to have any effect on the device.
Now it still sends every 2 minutes and 30 seconds.
image

I believe the commands have to be sent as confirmed downlink messages. I’ve seen a TBMS100 respond with a configuration settings uplink message each time a configuration command was sent. Do you also see that?
If it isn’t working for you, I think you should contact the manufacturer.

I tried with confirmed too, same effect. And yes I’ve written to BroWAN, no response yet…
The problem is not in the frequency of the updates as such, the problem is that each update comes with a fix (real position) that has been 2-4 minutes ago - as seen visually and on another trackers.

I wonder if there are any other similar devices, LoRaWAN GNSS and <50 g weight… that one fits my case quite good, be it not for real-time fixes…

two weeks and still lost my MCF88 :frowning:

Got response from Browan, even had a call with them. Seems like the sensor I bought was older version that just didn’t have all these features. Ordered two new tabs, works like a charm.

1 Like

Documented my journey with BroWAN nodes.

Server-side + frontend app (Scala + TypeScript):

TTN Decoder function working with latest TBOL100

2 Likes

Hi,

i used your uplink payload formatter on TTN for the Browan Object Locator but i am not getting correct location information.
I am using the Browan Object Locator.
I don’t understand where is the error in the code? Looking at the manual I believe the code is correct.

Please do not double post - which thread should the volunteers answer - it will split the responses and it may never come to a conclusion.

1 Like