Join information storage issue with Helium Network

I am looking to find the join accept message information and where it is stored in cube cell products in particular NetID as this is needed to show which network you have joined . This is for 2 reasons:

  1. There is the growing potential to have fraudulent networks and so knowing which you ahve joined is important.
  2. In a multi-newtork area such as TTN and Helium have common coverage then you can join a node to a network and not know whih one you have joined.

Anyone know of a solution to the issue of finding the NetID in the join message . On TTGO Tbeam etc it is readily avalable, and works well . This is now stopping me using Cubecell even though these are nice boards.

Simon

Add a sentence to print above the source code to get the netid, as shown in the figure.

We will add examples later.

Hi Nav

Many thanks for that. It now prints to serial outputs the correct ID. I thought I had to use just NetID.

I now need to work out how to display it on the 1306 display ? My first attemps have not worked i.e add either to LoRaWan_APP or in the Sketch.

regards

Simon

Hi Welcome any help in ability to display LoRaMacNetID on the heltec 1306 display. The data is avalable in LoRaMac.c as can be seen above but I can not display on the 1306 display. Welcome pointer or code to help

Thanks Simon

I did something similar awhile back, grabbing status of ADR from the lower level via LoRaMacMibGetRequestConfirm().
The below is just a quick cut and paste, not intended to compile, but you should be able to get the idea. All contained within your sketch,

... Normal sketch global stuff

// access to the display object  as initialized by the LoRaWan object
extern SSD1306Wire  display;
// custom display function
void displayCustomString( char * custString);
// get Net Id
void getNetId();

setup()
{
... 
}

void loop()
{
... 
}

.... all your other stuff

void getNetId()
{

// check state of Net ID
  MibRequestConfirm_t mibReq;
  mibReq.Type = MIB_NET_ID;

  if( LoRaMacMibGetRequestConfirm( &mibReq ) == LORAMAC_STATUS_OK )
  {
    Serial.print("Net ID Results from MibGet: ");
    Serial.println(mibGet->Param.NetID);
    // convert net id to string and call 
    // displayCustomString()
  }

}

// Display a custom string, callable from the app level
void displayCustomString( char * custString)
{
    display.setFont(ArialMT_Plain_16);
    display.setTextAlignment(TEXT_ALIGN_LEFT);
    display.clear();
    display.drawStringMaxWidth(0, 1, 128, custString);
    display.display();
}

Hi many thanks for that. I had just finished doing a similar thing with in the LoraWan_App , when I received your email. I may now consider to move to Sketch.

I now have all the info ( Received RSSI, SNR, Path Loss, NetID, DevAddr on the display and I may add Up and Down link counter) on the serial port and on the display.

This and is really good for signal testing and checking which network I am on, such as Helium or TTN as both have coverage in the same area.

It as good as the Adeunis Field tester and gives the additional infor of NetID and DevAddr good when using OTTA.

Any Way many thanks for pointers and the push to put in skketch

BR Simon