SlimLoRa library for arduino - EU863 basic functionality - testers wanted

Hello there, after two years of absence the last month I think I resurrected the SlimLoRa library.

ADR works and other MAC commands like RX1 delay.

You have a featrher32u4? I would like verification of what works or better try some stuff I didn’t tested.

The device always connects to my TTN gateway (nfuse-sx1308 via usb1 on a server) with RX1 delay of 5 secs SF7 and 0 power of dBm. It is a nice surprise to me, that if I try to join with SF9 in different room TTN server immediately requests SF7* and the SlimLoRa adapts.

* I was expecting after many uplinks for the server to request lower SF.

Details of what I tested and what help I need you can see on the github.

Ironically I have not tested ABP. I think it’s very easy to add support for other boards and regions. Currently only EU863 is supported, although I copied from TinyLoRa the frequencies for other regions, some work needs to be done to be usable in other regions and I don’t have access to other region.

Also I only tested KEEP_SESSION. I don’t find a meaning to test to not keep MAC session.

The examples also use Deep Sleep so you can easily build your low power node if you remove the Voltage Regulator of Feather.

Full credits must go to novag since I did little things (but it took me time):

  1. Modified the code to arduino environment.
  2. Added SetPower function (I need to change to LoRaWAN style. novag already did the work.
  3. Added battery report (but not tested)
  4. And testing of ADR, ACK_LIMIT and joins.
  5. I also did many silly stuff to be deleted :stuck_out_tongue:

SlimLoRa currently uses 12240 bytes (42% of ‘disk space’) and 218 bytes of RAM with battery reporting and Deep Sleep sketch.

With DEBUG Serial.prints 17912 bytes (62% of space) and 357 bytes of RAM.

Also thanks to the TTN guys for the valuable knowledge.

I think I created the device like that.

ttn-lw-cli d create APPID DEVID --dev-eui EUI --frequency-plan-id EU_863_870_TTN --lorawan-version 1.0.3 --lorawan-phy-version 1.0.3-a APPKEY --join-eui JOINEUI --mac-settings.rx1-delay RX_DELAY_5 --mac-settings.status-count-periodicity 0 --mac-settings.status-time-periodicity 0s --join-server-address

I just realized that I need to re-do everything for a complete test. Phew!

1 Like

Added a helper function to report Transmission duration. The application after every transmission have to issue the GetTXms() function to get the duration of transmission.

Small fix. Now it joins on 3 frequencies instead of 2.

Just re-tested today. It joins from the first join message on 1st window in different room at SF7 at 0 dBm power.