RAK4631 WisBlock Core LPWAN Module does not connect to gateway

My setup consists of:

  • WisGate Developer RAK7246G/EU868
  • WisBlock Microphone Starter Kit RAK4631 LoRaWAN LoRa Nordic nRF52840 BLE with Arduino Open Source / 800MHz for EU868

The gateway is up and running, it is connected to a Chirpstack server. The RAK4631 sensor is technically running and I was able connect to it through USB, the Arduino IDE shows this message every couple of seconds when the sensor tries to connect to the gateway:

" [gpsReadDateTask:239] [TASK] gps read date.

[gpsReadDateTask:246] gps acquisition failed

OTAA join failed!

Check your EUI’s and Keys’s!

Check if a Gateway is in range! "

Gateway is in range and on. Im not sure how to write in a Key because in Arduino IDE the sensor doesn’t respond to any commands (like AT).

Welcome to the forum @LerEkler

What firmware did you flash on the RAK4631?

RAK4631 with Arduino Bootloader (that’s what comes with the starter kit), does not have AT commands or LoRaWAN connectivity. You have to add this in your application code.

We have many examples how to connect the device to a LoRaWAN server, but none of them combines the connectivity with audio applications. You will have to design that by yourself.

WisBlock Audio Examples
WisBlock LoRaWAN Examples (simple)
WisBlock LoRaWAN Examples (with AT commands)

Thank you for the reply! Your response restored hope in my little project. The main points are:

*I haven’t flashed any firmware on the RAK4631 just unpacked it and switched it on. Since it wasn’t responding to my commands I was unsure whether I could go on and flash something on it without damaging it. I will do this as soon as I understand which firmware is best in my case.
*My full sensor kit is: RAK4631, RAK4630 with a built-in LoRa and BLE antennas, RAK19007 Base Board, environment sensor RAK1906, and modules for audio processing: RAK18003, RAK18030 (microphone), RAK18080

To begin with, I would prefer to start with a suitable LoRaWAN example with AT commands to have my sensor kit connected to the gateway and sending RAK1906 data.

  1. Do I understand correctly that to flash an example on RAK4631 I need to copy the content of an .ino file into Arduino, modify it for my situation, and flash it?

  2. Is it possible to extract the example that is currently flashed on RAK4631, it would be much easier for me to start with this extraction and modify it.

  3. I found the newest of bootloader for RAK4631, do I need to flash the newest bootloader or is it not necessary?

Thank you for your support

It could be that your RAK4631 module is still in factory test mode.
Connect with serial terminal app and send at+user to the device.The command should be ending with a CR/LF (can be set in the terminal app).

If the module is stuck in factory mode, it should start-up in user mode after that and respond to AT commands.

The source code of the “default” application can be found in WisBlock-Sensor-For-LoRaWAN.
It is using the WisBlock-API-V2 library which has the LoRa/LoRaWAN handler and AT command handler integrated. But it might not be the easiest start if you are new to Arduino programming. It is an event driven application framework and you do not have the typical setup() and loop() functions available.

Thank you for the detailed reply! I have already overwritten the default factory application via Arduino with one of your examples, and the module works in user mode, it sends sensor readings via LoRaWAN!

In the meantime, with the help of your WisBlock-IO-Pin-Mapper I found the possible incompatibility in my setup:

Does it mean I will not be able to connect both the sensor RAK1906 and the audio module RAK18080 to one WisBase / WisCore? Or instead I will have to adjust in the Loop() the usage of both environmental sensor and audio board such that they are not read at the same time?

Thank you!

If the I2C bus is the only highlighted pins, you don’t need to worry.
I2C is a bus and accepts multiple devices. It is highlighted, because each I2C device has an address and sometimes there are conflicts (same address used by two modules).