ProMini LoRaWAN Node

From MakerVan Labs

ProMini LoRaWAN Node

Release status: stable [box doku]

Description A LoRaWAN node based on the Arduino ProMini and the RFM95 LoRa module.
Last Version  0.2 (2019-10-22)
Platform  Arduino ProMini
License  CC BY-SA 4.0
Download  GitHub
Buy  Tindie

A LoRaWAN node based on the Arduino ProMini and the RFM95 LoRa module. Based on the original design by Doug Larue, but with some additional options:

  • u.FL antenna connector
  • Grove connector for I2C (can also be used for analog or digital signals)
  • Circuitry to measure input voltage


Note: Antenna and LoRaWAN module are dependent on the local frequency band used for LoRaWAN. The selected items are meant for 868Mhz, which is the frequency band for Europe

Part Partnumber Source Notes
PCB ProMini LoRaWAN Node PCB v0.2 Tindie
Arduino Pro Mini, 3.3V, 8Mhz DigiKey
Amazon US
Amazon DE
Antenna 868Mhz SMA DigiKey
Amazon US
Amazon DE
Antenna Connector SMA Edge mount DigiKey
Amazon US
Amazon DE
u.FL surface mount DigiKey To connect an SMA antenna, you will need a matching pigtail
LoRa Module RFM95 868Mhz DigiKey
Amazon US
Amazon DE
Battery Holder 2x AA AliExpress
Case Abzweigdose 75x75 Hardware store [1], [2]
Input voltage measurement
MOSFET Q1: BSS 84 Reichelt
Resistors R1: 100k 0805 Reichelt
R2: 150k 0805 Reichelt max input voltage for this R2/R3 combination: 16V
R3: 10k 0805 Reichelt
Capacitor C1: 100nF Reichelt

Attention - Common mistakes

We’ve made our fair share of mistakes already, so you don’t have to. Keep the following things in mind:

  • If you want to use the I2C connector, make sure to solder pins A4 and A5 on the Arduino to the PCB. They are located a bit inside the module, not on the outside, and most Arduinos don’t ship with the necessary pin headers for these two pins, so they are easy to miss.
  • Put your FTDI programmer into 3.3V mode before programming your node.
  • Make sure you have an antenna connected to the board before powering it up. Otherwise your radio module might be damaged



To use the LMIC library with this PCB, use the following pin settings:

const lmic_pinmap lmic_pins = {
  .nss = 10,
  .rxtx = LMIC_UNUSED_PIN,
  .dio = {4, 5, LMIC_UNUSED_PIN}

Also, some cheap Arduino ProMini boards have somewhat inaccurate timing, so it's recommended to tell the library to compensate for that by adding the following line in your setup() routine:

LMIC_setClockError(MAX_CLOCK_ERROR * 1 / 100);

Project Ideas

Weather Station

Add a temperature and humidity sensor and watch the weather anywhere you like.

Example with a BME280 sensor (connected via I2C) to measure temperatue, humidity and atmospheric pressure: Source Code

Field Test Node

Add a display (I2C) and a few buttons to create a field test node similar to the Adeunis Field Test Device

Camper Van Monitor

Node with GPS, temperature and PIR sensor to "watch" your campervan while you're away. Powered from your start or solar battery, which you can also monitor while you're at it

Other examples

  • TijnOnlijn has created a few examples with different sensors and put the code up on GitHub
  • The folks at TTN Den Bosch created a sketch generator for ProMini-RFM95 LoRaWAN nodes. Make sure to choose the "RFM95 LMIC pins (10, 0, 4, 5, 7)" option for the radio: Code Generator, TTN Forums thread

Additional information



  • Licensed under Creative Commons Attribution-ShareAlike 4.0 Unported License (CC BY-SA 4.0)
  • Original work by Doug Larue