RAK 7204 LoRa environmental sensor


The RAK7204 is a LoRa node that serves as an indoor environmental monitoring station.
The high-precision sensor, can measure changes in temperature, humidity, gas pressure and provide an indoor air quality index.
The combination of the BME680 environmental unit and the LoRa radio make this device especially suited for deploying sensor networks of large size in tall buildings or ware houses.





getting started
RAK forum

1 Like

The enclosure is very solid and designed for easy installation.



- screw the backplate on a wall
- mount the (metal) inner base
- click on the lid

documents are updated - burning / testing installed firmware


need to remove the PCB from the backplate, or you can’t press the reset button.


check current firmware version
need to update the firmware, its and the latest is

check current bootloader version
check the bootloader version with STM32CubeProgrammer as described in the getting started document, V3.1 … that’s fine, no need to update :sunglasses:

update the firmware
Because the current firmware on this device is newer then V3.0.0.0 , we need to set the device in bootmode with an AT command.
You can do this with the RAK serial port tool


device is now in bootmode… we close this app and (download) start the RAK LoRaButton Upgrade Tool.


download and select latest firmware and press START

do a little dance pompom

close this app and recycle power, start the port tool again to see if your update was succesfull.

it was :sweat_smile: and we’re up to date.
next step to get the device connected to TTN

- to be continued

1 Like


Nice job. I have just received this sensor connected it to TTN but as i’m new on this can not find decoder for RAK 7204 maybe you have already found it or made one, and can share with me. Also i tried to connect it to cayenne but there is no such a device and cayenne do not recognize it tired register like RAK811.

Typically if device issues Cayenne compatible payload simply pick TTN LoRaWAN in Cayenne then for device simply select Cayenne LPP as device and it should auto recognise, decode and then populate dashboard as each package type message is received :slight_smile:

In the dashboard you may see odd names used such as Analog channel where you are expecting say a supply voltage or a battery level in which case simply chose settings for that widget and rename :wink: Also I find default often show to 2 dp - overkill for most info and likely meaningless so e.g. drop barometric pressure or RSSI say to 1 dp or even 0 as likley not of detailed intererst/accurate…temp to 1 dp likely best will acheive anyhow… :slight_smile:

1 Like


Hi @BoRRoZ,

Maybe you have figured out something about Indoor Air Quality (IAQ) as I understand there is not even present on payload.

uh no… :sunglasses:

Looks like RAK team still not finished this function.

They have well deserved holidays now… and next week first finish the tracker I guess :wink:

1 Like

has anybody the datasheet for decoding (for all values)?

Hello 2 all — is there any foolproofed description how to add this ready-to-use sensor to TTN ? As i am owner of multichannel gateway i have the chance to read data from sensor … but i would kindly ask to get a hint for that … thank you !

I tested the RAK7204 environmental sensor. You can see the pictures from Borroz posts.
It is based on an BME680 sensor and can measure temperature, humidity, air pressure and gas resistance. It is ideal to monitor the air quality in a room.
The design is nice and clean and the case feels very stable. Also the size is well-choosen for a qualitative look.
A RAK811 LoRa module is used as controller for the application and communication to a LoRaWAN concentrator. On the PCB is also a micro USB port for updating bootloader and firmware. One big advantage about the RAK811 module is the usage for most common LoRa-frequencies in a single chip. It is possible to change the same sensor between 433MHz, 868MHz and 915MHz (and even more, just have a look at the datasheet).
About temperature, humidity and air pressure is nothing to comment. Standard values with given accuracy from the manufacturer. But there is more to say about the ‚air quality index‘ promised on RAKs website:
First of all we should be clear, the BME680 doesn‘t measure CO2. It is a sensor for VOCs (volatile organic compounds). But the amount of VOCs in the air, is also a comparative value for the air-quality. It will be represented by a so called ‚gas resistance‘.
When I got the sensor, I was only able to receive temperature, humidity and air pressure from the sensor. No air quality. After a few messages with an engineer from RAK he told me, that there are still troubles with the air quality index. You should know that Bosch (the sensor manufacturer) doesn‘t provide the formula for air quality index calculation directly. Instead they have some pre-compiled libraries for specific controllers.
Since the update from 2019-10-17, RAK7204 provides the raw value from the sensor, the gas resistance. It‘s better than nothing, but it‘s not the promised ‚air quality index‘, which can be a simple value for indication of good or bad air quality.

All in all the sensor is a good product for a fair price. The problem with the air quality index will be hopefully fixed with the next update.

1 Like

I think like you, I’m using two of these sensors, but with the only value of gas resistance we don’t do much.
Instead, a code would be needed to derive the air quality index from the measured input values.

since 22 days my RAK7204 is running well and also integrated to my TTN account - there are several (more or less) good descriptions in the web - github is on of my favourites – its quite easy to setup !