First LoRa node in the real world

Batterie + Solar + 3D Gehäuse + Arduino Pro Mini + RFM95W + DHT22

Finally a real application

Hello friends,

apologize for the rare posts, I’ve been employed in a makerspace for a few weeks now and I’m not coming to write something. Great fun, but documenting here in the blog…

So, as mentioned in the headline: The first node is running 🙂 Sending every 10 Minutes.








The board from the post  “My first own TTN node with self designed PCB” certainly known to you, otherwise read the article;)

The structure is thus very simple. The board has everything we need, the DHT22 temperature sensor is simply soldered to the Arduino and ready.

The solar cell is very small, the battery also only in AA (14500) format. No problem with sunshine. We will see how the combination works in winter! I’m curious! However, the battery should last long enough so that winter should not be a problem.

Data processing

The Things Network -> Payload -> NodeRed -> Thingspeak / own Database / …


Technical specifications

  • Arduino Pro Mini 3.3V (LowPower mods)
  • RFM95W
  • 0.15W 5V solar cell
  • 900mAh 3.7V LiPo
  • Running time about 2 years without sun?
  • 5 days sun to fully charge


Runtime Bill

As we learned in the LowPower article here we can expect self-discharge, now and then, deep sleep to consume about 0.04mA.

At 900mAh battery and 0.04mA consumption we come to 900 days. Therefore, winter should not be a problem! Top!

Here’s how the real consumption showed up after 5 months.



Affiliate links:

If you order through any of the following AliExpress links, I get about 8% commission 😉

Soshine 4pc 3.7V ICR 14500 900mAh Li-ion
Mini 0.15W 5V Solar Panel
DHT22 single-bus digital temperature and humidity sensor

9 thoughts on “First LoRa node in the real world”

  1. Mario, el código que propones para Arduino no compila. Tienes que tener en cuenta los pines del SPI

  2. Hey Mario,
    mega interessantes Projekt und genau das, was ich gerade suche! Allerdings habe ich das Problem, wenn ich deinen Code per Copy and Paste ausprobiere, dass mir der Fehler für den Arduino Pro Mini angezeigt wird: “Der Sketch verwendet 25280 Bytes (82%) des Programmspeicherplatzes. Das Maximum sind 30720 Bytes.
    Globale Variablen verwenden 2329 Bytes (113%) des dynamischen Speichers, -281 Bytes für lokale Variablen verbleiben. Das Maximum sind 2048 Bytes.”

    Ich hab mit dem RFM95 noch überhaupt keine Erfahrung gesammelt und keine Ahnung, wie ich libraries ausdünnen kann. Wie hat das bei dir geklappt? Wäre dir wirklich sehr für eine Idee dankbar, was ich falsch mache 😀

  3. Hallo Mario,
    hat sich erledigt, ich habe den Fehler gefunden! Die Libraries haben sich nicht korrekt installiert oder so..

    1. function Decoder(bytes, port) {
      var t = (bytes[0] & 0x80 ? 0xFFFF<<16 : 0) | bytes[0]<<8 | bytes[1]; var h = bytes[2]<<8 | bytes[3]; var b = bytes[4]<<8 | bytes[5]; var p = (bytes[6]<<8 | bytes[7]) * 100 + (bytes[8]<<8 | bytes[9]) / 100; return { temperature: t / 100, humidity: h / 100, battery: b / 100, pressure: p } }

  4. Tolle Idee!
    Habe mir zwei Boards nachgebaut, aber anscheinend sendet keines von beiden…
    Weshalb hast du DIO9 des Arduino nochmal verkabelt?

    Gruß – Sven

    1. Komisch. D9 ist der Reset Pin zum Arduino. Ich habe inzwischen das 10 Board oder so verbaut. I.d.R. klappt alles. Kommst du aus der Nähe Oberhausen?

Leave a Comment

Your email address will not be published. Required fields are marked *

%d bloggers like this: