Open wemaxon opened 2 years ago
Hi,
I am trying to solve the same problem... Has anyone ever managed to get the Sparkfun LoRa Thing Plus working in OTAA mode?
I would appreciate if someone could point out a solution. Thanks!
Hi @tfeseker,
i remember getting it to work. I think the Arduino IDE Code Examples provided by Sparkfun didnt have the correct setup for the GPIO Connection to the Antenna RF Switch. Also I think I had to adjust a timing variable inside the library.
I have attached my final working firmware including that includes the changes necessary to libs to get it to work. lora-modul-firmware.zip
If you have any questions let me know. Ill try to remember.
Hello,
I am using the BasicMAC library with Arduino IDE on an Sparkfun LoRa Thing Plus. The Board features an NM180100 Module with an apollo3 microcontroller and sx1262 transceiver. I have set up my own chirpstack lora serverstack with a mikrotik gateway.
I am opening this issue because I am having problems with the Rx part. The module wont receive any frames sent from the gateway. The OTAA activation also takes lots of attempts until established. The Tx messages on the other hand do work, once the join is successfull.
The following is the serial debugging output when the device is trying to join and and then transmit:
This is the gateway traffic log of the exact same event:![gateway_join_log](https://user-images.githubusercontent.com/35545046/133165829-4e16659f-b832-4f8e-9c5c-72665439a1d4.jpg)
You can clearly see multiple join requests and accepts by the server stack until the join procedure is successful. Even then the device is not receiving any Rx Frames (Unconfirmed Data Down) sent by the server-stack.
The Error
WARNING: rxtime is 543 ticks in the past! (ramp-up time 5 ms / 365 ticks)
also happens in the Sparkfun example, it can be seen in the Sparkfun Hookup Guide mentioned below. This fix (changing RX_RAMPUP inoslmic.h
) proposed in the sparkfun forum gets rid of the warning but doesnt fix the other problems.I got the pinout from this Sparkfun Hookup Guide and included the most recent library version from this repository, which was generated as an arduino library with the export script. To get the library to compile I had to modify
hal.cpp
and comment out the calls to the arduino functionsnoInterrupts()
andinterrupts()
in the functionshal_disableIRQs
andhal_enableIRQs
, as they arent implemented in the Sparkfun apollo3 arduino core. I copied this change from the basicMAC library modified by Sparkfun which is provided by the Sparkfun Hookup Guide. The changes inhal.cpp
can be seen below:Could this be about timing or because of the missing interrupt functionality on my board?
This is my code: SFE_LoRa_Module_Firmware.zip
I'd be grateful for any help. thanks in advance!