Professional Documents
Culture Documents
by sqij
This is a fairly simple add-on for mobile phones to enable SMS-like messaging in a group when outside cell
coverage, or in disaster scenarios. It utilises Semtech LoRa radios, for low-power/long-range communications.
There are a lot of hardware options, and I am still trying different devices and manufacturers, but for now this
tutorial will show how to assemble and setup one of the following boards:
Supplies:
This board is quite nice in that it includes a nice OLED screen and Bluetooth radio. Unfortunately, the LoRa radio
is not as good as the Feather, and only seems to get about half the range.
With this board you can choose whether to connect to handset via UDB OTG cable, Bluetooth Classic or
Bluetooth LE. You simply flash the board with the appropriate firmware image (there are three different firmware
binaries for each connection type).
Steps:
flash the board with the Ripple firmware image: Follow ReadMe on GitHub
wire up battery and switch
wire up the piezo buzzer to GND and Pin 25
optional: 3D print the case
I have also designed a 3D-printable case for this, which you can download from here:
https://www.thingiverse.com/thing:3865750
These boards are nice quality, but a bit more expensive. There is a bit more involved with these, as you need to do
some more soldering to install a LoRa antenna.
Steps:
flash the board with the Ripple firmware: Follow ReadMe on GitHub
wire up the piezo buzzer to GND and digital pin 11 . (EDIT: NOT pin 13 as previously stated)
solder a u.fl antenna connector to underside, connect antenna to u.fl
Optional: 3D print the case. See here for the files: https://www.thingiverse.com/thing:3879020
The 3D printable case is designed for use with this dipole antenna: https://www.banggood.com/T-Type-900MHz-
Long-Range-Receiver-Antenna-IPEX-4-for-FrSky-R9-Mini-R9-MM-p-1361029.html
It's a good antenna, but doesn't have the right connector, so you need to cut IPEX4 one off, then separate the coax
braids and solder to the antenna ground pads (see end pic above). To do this, you need to strip about 10mm of the
outer plastic off the end of the cable, then separate the very fine surrounding coax wire mesh then put some solder
onto this. Then remove about 1mm of the plastic from the inner active wire and put a small amount of solder on
this.
Next, pre-tin the antenna ground pads on the Feather, and the active antenna pad in the middle, then solder the
antenna to these pads (separated coax to ground pads, active inner wire to antenna pad).
You can also (optionally) organise into sub-groups by For Bluetooth LE you shouldn't need to pair. Just
assigning yourselves with different Group-IDs (again, make sure you select 'Ripple Service' in the 'Choose
between 1 and 254). By default you can all just stay Device' screen.
in group zero. The groups are like 'channels', and will
form separate mesh networks. Conversations
Adding Friends From the main screen you just tap on the friend you
want to chat with, which transitions to the
Once you have entered your own details in the Setup conversation screen (as pictured above). The action
screen and selected SAVE, you can then be added bar will show their name, and to the right is a signal
as a Friend to other user's handsets by scanning indicator which will show whether that user's device is
each other's QR codes. This exchanges public keys currently reachable, and how strong the nearest
so you can send messages to each other privately. signal is.
Other devices in your group will silently relay your
messages, but cannot 'open' them up. Just type messages, or tap on the 'pin' icon to the left
of the text box to send your current location.
Connecting Radio
When other users send their location you will see it
The radio board can be connected to the underlined, and with a calculation of how far away
tablet/handset either via USB OTG cable, or via they are and at roughly which compass heading. You
Bluetooth. You must set your preference for this by can tap on the link to see the location on Google
selecting the 'Preferences' menu from the top action Maps.
bar. There is an icon on the top action bar which will
go solid white when it has detected your radio board
This looks like a Great Leap Forward in LoRa communications. There are quite a few good starts
out there, but none seem to have developed. Very keen to make this work.
I've edited the install script and get a good-looking write into the Heltec white board
https://heltec.org/project/wifi-lora-32/
Can you check whether the icon on the titlebar is the 'connected' one? Looks like the Bluetooth
icon with an arc next to it. Also, the icon to the far right on the toolbar should be showing at least
one bar (uses the WiFi icon) to indicate the other node is reachable/online.
Hi, thanks for getting back to me on this.
No, both the left-hand 'Bluetooth-like' icon, and the right-hand WiFi-like 'fan' seen 'in' the entry for
the other unit are both faded, on both machines (Samsung A20 & Nexus 7), and any combination
of the 4 boards that I have your Ripple-USB.ttgo-heltech.bin on.
Should I be able to communicate with the boards via serial terminal? I saw that you had posted the
commands somewhere recently, but didn't notice anything about protocol, baud rate, etc?
Do you know if anyone has it working for these boards?
I'll see if I can dig up a schematic for these things and check the connex as you gave for
ConsinusJ yesterday.
Thanks
Greg
Probably the first thing to try to verify is if the USB serial interface is working. Open up the Serial
Monitor in Arduino IDE, select 9600 baud, just Newline option, then type in 'i0,0' (without the single
quotes) and press ENTER.
There should be a response starting with "I:"
Scott,
Yes, sending 'i0,0' now gets response 'I:126,1' from the Heltec_V2 with your new firmware, thanks!
No similar response from the TTGO boards. Should I try the earlier builds?
Also, the 'bluetooth-like' icon is now defined, and '0.3v' appears beside it. No joy on the 'WiFi-like'
icon, so the other boards aren't cooperating yet.
So maybe I'll just have to wait until the other hardware arrives - unless you're inclined to compile
for them too;)
Hello,
does your firmware be compatible with the ESP32 T-BEAM board ?
Europeans will love a 868mhz bluetooth version :D
Many thanks ,
Juan
Yes, it should be fine with that board. Use this V2 firmware, and the latest Messenger app, and you
can set the LoRa frequency in preferences: https://github.com/spleenware/ripple#repeater-or-
messenger---ttgoheltech-boards---433-to-915mhz-configurable--usb-otg-only
Any chance we could get a 868Mhz version? I have a lot of these TTGO LoRa32 boards, but they
are all 868 :/
Also, make sure you check your antennas on the TTGO boards, they are notorious for sending
really crap antennas or putting the same antenna for multiple frequencies.. Might account for the
range issue, but it might just be that it doesn't have a PA.
I have just published an update to the app, along with new V2 firmware binaires which not support
configurable LoRa frequency. You can now set it to any value between 433 to 915 MHz in the
Preferences screen.
OK, I've uploaded an 868MHz build to the github repo.
Sure, I'll try to get an 868MHz build out soon. Yeah, the TTGO stock antennas are rubbish! I put
some nice dipoles on, and got over 4km range.
Can you explain more about where to put the bin files and how to flash the firmware? I have the
board working in arduino ide (TTGO LoRa32-OLED v1) and can upload scripts, but there seems to
LoRa Mesh Radio: Page 8
be more prerequisites than specified. Looking at your command lines I gathered you need to have
esptools and espressif arduino-esp32 (which is not required for arduino ide to support this board)
and followed the instructions here https://github.com/espressif/arduino-
esp32/blob/master/docs/arduino-ide/windows.md.
But I still can't get past the first command line as I'm getting this error:
esptool write_flash: error: argument : Must be pairs of an address and the binary filename to write
there
Thanks for share this project.
I can't download android app, I tested with several phones, I get the following error:
Your device is not compatible with this item.
Can you share APK file directly?
Installing via an APK file directly would give the same error. Your device must be incompaitlbe, eg.
doesn't support USB host mode,.
Thanks, but my device is "Huawei Nova Plus 2" and support OTG !
Try downloading the "USB OTG Helper" app from Play, and see what it says about your device
and the OTG support. I know that 'actual' OTG support varies wildly, and is unfortunately
something that is hard to get definitive data on.
good prject!
.. possible to have all the code?
Hello,
My name is Jonathan Torres, I've reed your garage project and I find it fascinating. I would like to
talk to you about the project and ask some questions. Please tell me if you have time for a little
chat on the matter.
Thanks,
Jonathan Torres Rosario
I'm quite busy, but you can drop me emails at admin AT spleenware.com