Coding the RAK811 LoRa Breakout Module

Hello,
I am new to the RakWireless family and have just set up my RAK7246 with a RAK811 breakout board. Now it is time to do some work. Can I code the RAK811 using PlatformIO or Arduino? Is there a setup guide? I saw that there is a library for the RAK811 Winsnode, but not the breakout board. Are they same when it comes to development? All I am looking to do is take read some sensors, send some data to the gateway and do a little IO.

Thanks!

Hi @megaplow,

We’ve supplied two ways for RAK811 coding:

  1. Arduino firmware
    You can run Arduino libraries on RAK811 (module/breakout boar/Wisnode), and you can find all of the source code and guide here:
    https://github.com/RAKWireless/RAK811_LoRaWAN_Arduino
    (But now, there is an issue in this project: when RAK811 want to join in OTAA mode, sometimes it will fail. It is caused by another Arduino liberary we used in this project, and we haven’t fixed it.)

  2. RUI firmware
    RUI firmware is our official firmware, and RUI firmware is developed based on RUI SDK. RUI SDK is not open source, but RUI SDK has supplied a set of APIs for users to do their customized application, finally, you can use RUI online compiler to compiler your customized application source code with RUI SDK togather to get a final customized firmware.
    More details, you can have a look at some links. This is RUI API reference:
    https://doc.rakwireless.com/developer-tools/developer-tools/-
    This is RUI online compiler:
    https://doc.rakwireless.com/rak811-lora---evaluation-board/rui-online-compiler
    This are some products practise source code which are developed by RAK based on RUI APIs:
    https://github.com/RAKWireless/Products_practice_based_on_RUI

2 Likes

Thank you for the info. I am having trouble with the TTN configuration. I will get that sorted out and circle back to the RAK811 portion.

Out of the box, I have been unable to join OTAA to TTN with my RAK7246 and RAK811 node. Using the serial tool I have tried msb and lsb for the Device EUI and the Application EUI. The Node tries to reconnect six times then goes to sleep.

Are there any examples available that use the onboard ADC/UARTs?
Trying to develop a application that will use both and a starting point is welcome

Using the ADC/UART of RAK811 Breakout Module is documented on RAK811 datasheet https://docs.rakwireless.com/Product-Categories/WisDuo/RAK811-Module/AT-Command-Manual/

RAK811 has 2 UARTs: UART1 and UART3. But on RAK811 Breakout Module, only UART1 is exposed. You can use UART1 for AT Commands and FW updated.

For ADC, you can check this AT Command at+get_config=device:adc:<pin_num> from the datasheet.

2 Likes

Thank you!
So i can´t really connect some custom logic behind it?
Only ADC and UART. For example how did RAK pair it with the BME680? For what i read it only supports SPI and I2C.

Or I can just pair it with a esp32 and send AT commands from there…

That wasn’t what was said. I2C and many GPIO, some with ADC, are available if you check the module docs.

Sure, I saw.
But if I want to use more complex sensors that use SPI for example how would the case be?

Using an external MCU is the easiest way since you only have to think of the at commands which is well documented.

If you want to use the internal STM32 of RAK811, you can check the RUI https://docs.rakwireless.com/RUI/#overview. Go the SPI section under RUI Interface General Format. That might be what you are looking for.

You also have an option to use Arduino platform. There’s a port for the STM32 https://github.com/RAKWireless/Evaluation_Boards/tree/master/RAK811

Lastly you can develop your own firmware for the STM32. If you need the schematic of RAK811, it’s here https://downloads.rakwireless.com/LoRa/RAK811/Hardware_Specification/

2 Likes

Perfect answer! Thank you very much @carlrowan
I will dive in to the links