Votes: 1
Views: 417

The Arduino is a widely used platform for lots of applications. Despite all its advantages, in some cases it is not very convenient to use - for changing some parameters in the program it always requires direct cable connection with your PC. For example: If you have an Arduino controlling or monitoring system placed distantly from your house and you want to update the software, to upload the new sketch you have to go there where the Arduino board is suited, connect it throw USB cable to your PC and update the software. The distance to your Arduino system can be kilometers... and it can be placed in the mountings, in the forest and etc. This project solves the mentioned problem. You can upload your sketch in the Arduino board without leaving you home or office. As additional gain for free you receive also the possibility to monitor your sensor data or send commands to your board using the serial monitor or plotter.

The new proposed board is based on the Arduino Uno revision 3, in which the USB to serial converter chip (ATMEGA16U2 ) is replaced by UART LORA module. The USB connector and the power monitoring circuitry become unnecessary. To make the whole system work you need also an USB to serial to LORA converter. My conversion board is based on the CH340G chip, but also other USB to serial converter chips like PL2303 or FTDI can be used. The main trick using LORA modules is that the transmission distance is inversely proportional to the transmission speed. To reach long distances you have to go to low transmission speeds.

Normally the LORA modules have limited size buffers and when they are full and the incoming data continues they can stuck and the only way to wake them is to switch off the power supply and to power it up. For that reason I set the aerial data transmission higher than the UART speed. The modules can be configured by software tool provided by the module producer.

I set UART speed 9600 bps. To be able Atmega328 to communicate with the module its bootloader must be set to communicate with this speed. New bootloader must be burned in. I used the optiboot bootloader. I compiled it with the command : "make atmega328 BAUD_RATE=9600". After burning the bootloader, you have to define a new board in the Arduino IDE. I called it LORADUINO.

In the movie linked here you can see how the blink sketch was loaded in the LORADUINO during sending its sensor data through the serial monitor.

This design works relatively good. It was not tested at distances bigger than 10 meters, but theoretically it should work at distances up to 10km.

LORADUINO can be based also on other Arduino boards - Mega, Due, Nano and others.



Voting is closed!


  • Name:
    Milen Penev
  • Type of entry:
  • Software used for this entry:
    Arduino IDE
  • Patent status: