Help with interfacing Arduino Uno with RAK811

Hello there
I’m fairly new to LoRa/LoRaWAN and its part of my college internship, and in short, i need help with setting up a RAK811 with an arduino uno; i know this has probably been asked many times here - I’ve been checking the other topics about simillar issues, and even after following most of the tips/solutions it still does not work.
I have a V1.2 WisKey RAK811, it works fine by AT with the RAK Serial Port Tool, and it sends just fine, problem starts when i try with the arduino. I’ve tried:

  • Mounting the RAK on top of the arduino

  • Connecting both to the pc by cable and only connecting the TX/RX, to which i’ve done 2>RX / 3>TX, 0>RX / 1>TX (and the opposite 1>TX / 0>RX as some other topics suggested)

  • Connecting only the arduino and connecting the 5V to 5V of the RAK811 and GND to GND

I have the most recent firmware, and i’ve recently downloaded the new and improved arduino library (from a post not long ago). I’m just unsure that the problem is due to the code (i’m using one of the examples from the libraries) or from wiring. I’d also like to know if it’s possible to connect and program sensors directly to the RAK811
Any help would be greatly appreciated, thanks in advance :slight_smile:

Hi @Mplank,

Maybe you have looked this topic? I think it is useful for you.


Hello @Fomi
Yes i have followed that topic very closely and it still does not work with those connections and the library linked in the topic.
Even after altering the library a bit to my regions band (EU868) and the SoftwareSerial as in the post linked, i get no response from the RAK811; When i try and run a simple AT command such as getting the version (by sending it through arduino IDE serial) i get a blank return message

OK, please wait for several days, we’ll use an Arduino UNO board to connect with Wisnode-lora board and make a tutorial about how to use.

2 Likes

Thank you very much! I will patiently wait for the tutorial/guide :blush:
If possible, please mention when it is completed

1 Like

Hi Mplank,
I have WisNode-Lora and I followed the topic but no luck!
I tested the connections between RAK811 chip and the headers using AVO meter, but it appears there is no connection.
also there is no documentation at all about the header or the schematic.
Finally I was able to connect the node to ESP32 successfully by connecting the Rx,Tx directly to the jumper as in the photo, and I changed the UART baude rate to 9600
changing the baude rate will help you to avoid many problems.

1 Like

Hi all,

We’ve just use an Arduino board connecting with Wisnode-LoRa board to connect with LoRa gateway in OTAA mode successfully.
I will write a document to show more details about how to use it tomorrow. Please wait.

3 Likes

Thank you for the reply @Mustafa!
Unfortunately I dont have a ESP32, but I will try it with a ESP8266 tomorrow and test my luck :slight_smile:
May I ask what code did you upload to the ESP (is it one of the examples on the topic linked?), and if you powered both boards?

Hi Mplank,
You can use any micro-controller you want.
I’m using MicroPython, I wrote a code just to send AT commands to the WisNode and print the response for testing.
yes I powered both boards and make common GND, because me ESP32 is the cheap one, I don’t think it can supply both boards.

Hi all,

We’ve made an Arduino library repo on Github, and write a tutorial to show how to use Arduino board + WisNode RAK811 board.

Please have a look at this link for more details:

I have the same problem like the others here and I can’t get it working…

@Fomi: Have you tried your library with an Arduino UNO? It somehow feels like there is a difference.

I am using an Arduino UNO with a WisNode LoRa RAK811 board V1.2

Wiring
UNO GND <–> WisNode GND
UNO 5V <–> WisNode 5V
UNO 2 <–> WisNode RX
UNO 3 <–> WisNode TX

Jumpers (WisNode)
RXD <–> TX
TXD <–> RX

I tried it using your library and I tried doing it on my own by extracting the important parts from your library, but i am receiving an empty string after sending “at+version”…

at+version --> Firmware Version: RUI v3.0.0.12.H.T

Oh my god… I finally got it working :wink: I always used the wrong AT command to change the baudrate from 115200 to 9600!

I now used the RAK SERIAL PORT TOOL (v1.2.1) to set the baudrate:

at+set_config=device:uart:1:9600

After that I needed to switch the RX/TX jumpers to:

RXD <--> TX
TXD <--> RX

Now everything is working fine with your library :partying_face:

3 Likes

Well,that’s great. :smile: :smile:

Hey dude, I discovered in your comments that you could make a “combination” between Arduino Uno and RAK 811, how did you do it?

Seb my man, do you have a WisNode - a RAK811 on a board that can plug in as a shield, or are you like, rad enough to wire up a breakout board.

Hit me up with your reply!

1 Like

I have a question, I am quite new to this field, have you tried a sensor connected to arduino atmega and rak 811 with a sensor?

I’m trying to send a data from the sensor to display to TTN.

I have a gateway, rak 811 v1.2 and atmega.

I’m a bit confused on how to set it up. Like send the data. I’m using the temp sensor for example.

My rak811 can now be seen on TTN, problem now is how do I send the data into a readable format.

Thanks in advance!

What you need to do is program the Arduino to do EXACTLY the same thing as the Serial Tool when you issue commands.

So you need to connect the Arduino to the RAK811 serial port and use the RAK supplied library that will do most of the coding work for you:

There are three things to pay real attention to:

  1. You will need to MANUALLY set the Baud rate of the RAK811 to 9600 BEFORE you start - the Arduino can’t talk at 115200 - you aren’t sending much info over the serial link, so 9600 isn’t as slow as it sounds.
  2. The block that sets the working mode in the Arduino script needs to be removed - when you set the working mode, the RAK module will need restarting / resetting - which isn’t allowed for in the library so it will just stop there. Set this manually whilst you are setting the baud rate. You only need to do this once as the module will remember the settings you set.
  3. You will need some sort of level convertor if you have an Arduino Uno, Nano or indeed other that runs at 5V as the RAK811 runs at 3.3V and you don’t want to release the magic smoke.

If you have the Wisnode/Arduino Shield, the library provides all the information you need, including what jumpers to set depending on which version you have. If you just have a breakout modules, here’s mine:

You’ll see that I have in fact wired in a reset and that I’m so rich, I live life to the edge and don’t bother with a level converter. Please look at the RAK811 breakout module info and an Arduino Nano pinout to figure out the micro-details of the connections.

1 Like

I have a question. How do you this?
I mean, I only take out the #define WORK_MODE LoRaWAN from the code? or I have to modify something from the library?

“The block that sets the working mode in the Arduino script needs to be removed - when you set the working mode, the RAK module will need restarting / resetting - which isn’t allowed for in the library so it will just stop there. Set this manually whilst you are setting the baud rate. You only need to do this once as the module will remember the settings you set.”

Comment out the block that starts with the if statement or delete it?

Hello! Do u have a sample code of this that is merged w/ a sensor?