Close
0%
0%

LoRaMessenger

LoRaMessenger is an off-grid chat between LoRa equipped ESP32 nodes with a simple wireless web interface.

Similar projects worth following
LoRaMessenger is an off-grid chat between LoRa equipped ESP32 nodes with a simple wireless web interface.

The ESP32 hosts a Wi-Fi network that will provide a simple chat-like interface that will display online nodes, received and sent messages, and some text boxes to set the node name, destination node, and message.

Since the LoRa communication protocol is used to send and receive messages, it is possible to set two or more modules to transmit and receive messages up to a distance of a few kilometers.

Most ESP32 LoRa modules, such as the TTGO LoRa32 or Heltec Wifi LoRa 32, are equipped with a display, so you can use them independently to receive messages like a pager.

A node can be easily installed inside a small box with a battery, thus creating a communication system that can communicate even in areas where there is no phone signal.

LoRaMessenger

LoRaMessenger is an off-grid chat between LoRa equipped ESP32 nodes with a simple wireless web interface.

The ESP32 hosts a Wi-Fi network that will provide a simple chat-like interface that will display online nodes, received and sent messages, and some text boxes to set the node name, destination node, and message.

Since the LoRa communication protocol is used to send and receive messages, it is possible to set two or more modules to transmit and receive messages up to a distance of a few kilometers.

Most ESP32 LoRa modules, such as the TTGO LoRa32 or Heltec Wifi LoRa 32, are equipped with a display, so you can use them independently to receive messages like a pager.

A node can be easily installed inside a small box with a battery, thus creating a communication system that can communicate even in areas where there is no phone signal.


Web interface

After the ESP32 is started, a new Wi-Fi network called LoRaMessenger [number] is created.

When a device connects to the network, the web interface should open automatically, if nothing happens, the interface can be accessed by opening a web browser and navigating to the ESP32 IP, which is by default 1.1.1.1.

On android, a wifi login page containing the web inteface is opened after connecting to the Wi-Fi network. This way, background 4g network connection is mantained even when using LoRaMessenger. A notification saying login to the network should stay into the notification panel and can be opened anytime to show the interface again.

The web interface is now presented on your browser, the chat has the following features:

  • At the top of the page, the node name can be entered so that the recipient knows who is writing. After pressing update, the name is saved and sent to all reachable nodes.
  • The online section shows all available nodes detected, with some additional information such as the relay node that is being used by the receiving node if present, the receiving RSSI, the number of hops between relays, and the time elapsed since the last contact.
  • The message section shows the last 5 (by default, user-settable) sent and received messages in chronological order.
    The name of all the nodes that have received the message correctly is indicated under each message....
Read more »

  • 2 × TTGO LoRa32 board Or similar
  • 2 × Li-ion battery Optional

  • Complete project overhaul

    Nicholas08/26/2020 at 17:25 0 comments

    The project has been completely redesigned and programmed from scratch.

    After an immense amount of work I am finally ready to share a new base on which to build and improve this project, everyting has been correctly structured in order to make it easier to work and understand. 

    Major updates:

    • All previous functionalities have been restored and improved. With LoRaMessenger you can now communicate between two or more compatible devices, in broadcast or private mode between nodes.
    • You can now chat between two devices even when there is no direct connection between the two devices. Each node acts as a relay, a routing feature has been implemented which is able to route messages in the shortest and best way to the destination node.

    Full changelog:

    • Full code overhaul, easier future development.
    • New custom LoRa protocol.
    • Added the possibility to route messages, expanding the reach of the network.
    • PlatformIO is now used to program boards, providing an easier experience with code, libraries and uploads.
    • Option to change node name via web interface.
    • List with all available nodes and further information such as signal strength, eventual routing information and last update.
    • Option to send messages in broadcast or private mode.
    • Per message received confirmation.

    The code is now in a relatively stable and usable state, all functions should work without too many problems. The routing part still needs to be fully tested as I haven't yet had the chance to test it with more than 3 nodes.

  • First release

    Nicholas06/27/2019 at 01:34 0 comments

    The first release of LoRaMessenger has been released with basic functionalities such as:

    • Sending and receiving of messages from the web interface
    • Changing sender name form the web interface
    • A received confirmation from other nodes
    • Display of WiFi name and last message on the integrated display
    • Automatic display shutdown after a minute to save power

    Other features that are planned for the future are:

    • Message encryption, as of right one all messages are sent unencrypted
    • Some sort of relaying to create a bigger network of nodes
    • Redesign of the web interface and automatic message refresh

    On the hardware side I would like to develop a case for the TTGO Lora32 with space for adding a battery and maybe a buzzer to notify a new message.

View all 2 project logs

Enjoy this project?

Share

Discussions

marazm wrote 01/08/2021 at 14:10 point

this device use different alphabets?

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates