Tell us about yourself!
OK, a couple of things I probably haven't documented properly:Sounds like you are attaching the Feather while the Commander's main screen is showing. (thus the 'not supported' error). To configure the tracker/feather radio, you need to launch the app from the 'Device Provision' icon. (Flash the V4 firmware again, the old one is prob not supported now).When you plug in the feather, when in the Device Provision screen, Android should ask you for the USB permission, then you should be prompted to Add the device, as Commander should detect it's new. For the Home/Gateway device, you can NOW use either the USB firmware, or the Bluetooth (Classic) firmware. I will create updated Heltec binaries right now, as I haven't updated for that board in some months :-( eg. the USB one is named: Ripple-USB…
OK, a couple of things I probably haven't documented properly:Sounds like you are attaching the Feather while the Commander's main screen is showing. (thus the 'not supported' error). To configure the tracker/feather radio, you need to launch the app from the 'Device Provision' icon. (Flash the V4 firmware again, the old one is prob not supported now).When you plug in the feather, when in the Device Provision screen, Android should ask you for the USB permission, then you should be prompted to Add the device, as Commander should detect it's new. For the Home/Gateway device, you can NOW use either the USB firmware, or the Bluetooth (Classic) firmware. I will create updated Heltec binaries right now, as I haven't updated for that board in some months :-( eg. the USB one is named: Ripple-USB-heltech_v2.bin
The Feather boards aren't ESP32 boards. They're in the SAMD21 Cortex family. You will need to use the command line command I have pasted into the readme. (I'll paste below). For these commands, you need to install the Arduino IDE and add in the Boards Manager the SAMD21 board support.~/Library/Arduino15/packages/arduino/tools/bossac/1.7.0/bossac -i -d --port=cu.usbmodem14101 -U true -i -e -w -v RippleTrackerV4-USB-feather.bin -R
DIY Flexible Printed Circuits
LoRa QWERTY PagerView Instructable »
no, it uses ECC 'Curve25519' encryption.
Hi,Yes, this system works without any internet access. You would use an Android tablet running Ripple Commander to do the coordination. The transmit frequency is configurable, but is transmitted when the device moves at least some 'x' meters and at least 'y' seconds have elapsed. The devices don't record track of location, but I could add this. Regarding range, the thing that would improve this the most is to have a repeater device attached to a tethered helium balloon.
Hi,If you are using the V2 TTGO LoRa board, then you need to attach buzzer to pin 13. For the older boards, and the Heltech ones, is still pin 25. Sorry for the confusion.
Yes, it's like a private network, where each user has their own handset and LoRa radio module. The Ripple app has its own 'contacts' list. You just scan other user's details from the app on their handset, to get their id and public key (for encryption).
AH, great to hear! It's been really difficult to cover the various board types/versions and then the three connection methods (USB, BLE, BT). Seem to be so many quirks between them all :-(
OK, I have prepared a new build for TTGO V2 board, for USB-OTG. Download latest files in the repo, and see here on how to flash : https://github.com/spleenware/ripple/blob/master/README.md#repeater-or-messenger---433-to-915mhz-configurable--usb-otg-only-5
You can put the bin files wherever you like on your local machine. When you open the command line (Terminal on OSX, or Command on Windows) make sure you change to this directory first. See this article on how to add Esp32 support to Arduino: https://randomnerdtutorials.com/installing-the-esp32-board-in-arduino-ide-windows-instructions/
The necessary tools are included in the Arduino IDE. See the Ripple github readme
I'm not sure what you are referring to? You can only use the Adafruit Feather board at present, and you flash it over the built-in USB port.
Ah, not yet, I'm afraid. I did a quick job on the front of the case (pictured), but I haven't finished it off yet. I'll try to get that done soon, then drop a comment here.
Try flashing the Bluethooth Classic firmware instead. There are still problems with the BLE code, unfortunately. For Classic, you need to do the pairing first, then go to Preferences screen and do CHOOSE DEVICE. Also, make sure only ONE of your Ripple devices is powered on at a time while doing this! They will all have the same BT name (Ripple Device).
On Windows you would typically be specifying a COM port, like "--port COM7"
The device needs to remain powered to be useful, ie. to receive messages, and transmit live location. The device can be configured, however, to optimise the location transmitting. There is a minimum interval time and minimum movement distance which can be set. If you increase both of these, then the device will transmit less often and increase battery life.
The commander Android device just needs a regular 'pager' radio connected, like in this article: https://www.instructables.com/LoRa-Mesh-Radio/
Range really varies a lot. From a high altitude balloon the current record (for LoRa) is about 700kms! I have gotten about 5kms with one node on a hill, but with trees and other obstacles in between.
About 4 hours with this 450mAh one. Would be a lot better with a single 18650 LiIon cell.
Hi Dave,That's encouraging, that you have 'some' success. The BT Classic firmware is a bit old now. It probably doesn't have support for the custom radio frequency, for instance. I'll try to rebuild the Heltec V2 firmware for BT Classic, in case that helps. (Classic does chew through the battery, by the way) I'm pretty sure the BLE firmware build is quite recent (for Heltec V2). I'll double check, and rebuild if not. In the app, none of the messaging will work until the handset can establish the serial link with the device, which the bluetooth icon in the top actionbar shows. There are three states: grayed out means no connection, solid white means 'connecting', and solid white with a 'transmitting' look (has round arcs next to the bluetooth icon) means connected and handshake successful.
Hi Dave,That's fine, whichever you think will be most useful. Yes, the Esp32 will work in a mesh, not just point to point.I have dug up an old Windows laptop and installed Arduino on it. Have started to try to replicate the install/flashing of the firmware. Hopefully by tomorrow I can get some WIndows-specific instructions up on github
Have now updated the BT Classic firmware: https://github.com/spleenware/ripple#repeater-or-messenger---433-to-915mhz-configurable--bluetooth-classic
Hi Dave,That's fine, whichever you think will be most useful. Yes, the Esp32 will work in a mesh, not just point to point.I have dug up an old Windows laptop and installed Arduino on it. Have started to try to replicate the install/flashing of the firmware. Hopefully by tomorrow I can get some WIndows-specific instructions up on github.Yes, the case study photos would be fantastic!
LoRa GPS Tracker/PagerView Instructable »
Hi Dave,Yes, those Heltec boards should be fine. I'll get back to you on instructions for Windows. I probably should update the readme for Windows users, so I'll try to get that out within the day.Also, I have just published a follow up article which I'm hoping is of interest to you (for SAR): https://www.hackster.io/scottpowell69/lora-tracker-pager-device-36bdb3
I'm not really sure what you mean by 'Arduino only'. This tracker node type is just one application for the Ripple mesh system. You can also chat with normal 'pager' nodes, as described in this article: https://www.instructables.com/LoRa-Mesh-Radio/
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:"
Also, I noticed it's a V2 Heltech board. I have just prepared a new firmware binary for that board, and uploaded to the github repo. Just look in the 'Ver 2' builds, for the "Heltech V2 boards - 433 to 915MHz (configurable), (USB-OTG only)" command
Hi,Technically, you could wire up the LoRa transceivers to the ESP32 boards, and flash the TTGO/Heltech Ripple firmware to the board, and it 'should' work. You would need to find the pin-out diagrams for each and identify the SPI pins. The firmware expects the following pins on the ESP32:For TTGO/Heltech:LORA_SCK = 5 // GPIO5 - SX1276 SCKLORA_MISO = 19 // GPIO19 - SX1276 MISOLORA_MOSI = 27 // GPIO27 - SX1276 MOSILORA_CS = 18 // GPIO18 - SX1276 CSLORA_RST = 14 // GPIO14 - SX1276 RSTLORA_IRQ = 26 // GPIO26 - SX1276 IRQ (interrupt request)For Sparkfun firmware:LORA_SCK = 14LORA_MISO = 12LORA_MOSI = 13LORA_CS = 16LORA_RST = 27LORA_IRQ = 26
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.
Foldable 3D Printed DroneView Instructable »
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.
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
I have now uploaded a new firmware binary for the TTGO T-Beam board (with integrated GPS). See the Github link for details.
I don't have that particular board, but I'll have a look into whether it needs any build config (compared to the TTGO/Heltech ESP32 boards and the required pins).The V2 firmware images now support user-configurable LoRa frequency, but I have yet to publish the updated Ripple Messenger app to Google Play. (there's now a Frequency field in the Preferences screen). I will be doing the update this weekend.
LoRa Mesh SensorsView Instructable »
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.
Installing via an APK file directly would give the same error. Your device must be incompaitlbe, eg. doesn't support USB host mode,.
Yes, you can place repeater nodes in between. You need to provision the nodes with the Ripple Commander app for this, though. https://play.google.com/store/apps/details?id=com.spleenware.deviceprovision&hl=en_AU
It weighs 25 grams without the battery, 38 with the 450mAh lipo. the case is 16x28x63mm. Range varies a lot. I did some tests driving around in my car with one radio up on a hill, and got about 5km. If you put even just one repeater somewhere elevated it increases the range enormously.
I don't have any hard data, but the little 450mAh lipo would be good for at least 4 hours (at a guess). You could attach an 18650 Li-Ion cell and get more than a day.
I'm quite busy, but you can drop me emails at admin AT spleenware.com
LoRa GPS TrackerView Instructable »
the TTGO ESP32 binary should work on that board. The LoRa radio uses the same pins. Just doesn't have the OLED display from what I can tell.
Just a sneak peek on what is coming up soon: https://drive.google.com/open?id=1n3-7toXSAJwzjuVe...There will be a new app for provisioning speciality device nodes, like repeaters and sensor nodes (including dedicated GPS tracker nodes).
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.
Ah, the '~' is a Mac/Unix thing. Means the user's home directory. You would probably need to find which directory Arduino was installed, and replace the '~/Library/Arduino15' with that.
No, not at this stage.
No, the sender's app will attempt a number of retries, but then timeout.
OK, will do. All the firmware images at present are for 915MHz, although I'll be preparing a 433MHz one soon for the Heltec boards.
Eventually, yes. But I don't have the time or resources to do it at this stage.
Yes, you can have a standalone node that just acts as a repeater, as long as you stay on the default group-id of zero, the standalone node should boot up and assume an ID of zero. Ideally, the repeaters should have some unique ID, but this isn't strictly necessary.The 'background' location gathering isn't possible at this stage. The underlying protocol actually has some packets defined for this, but it's not something I've implemented in the Android app yet.
A lot of things affect range. If you have line of site, you can get many Kms. But in either urban environments, or bush, the range is reduced a lot. I don't have any definitive data yet, but with the Feather board I've had over 2 Kms. The TTGO ESP32 board is a bit disappointing, range-wise. Furthest I've managed with that one is a little shy of 1 Km but with line of sight.
LoRa Mesh RadioView Instructable »
Yes. I also have that transmitter. The receiver should be able to fit under the canopy.
Android Motion Sensing Smart Mirror
I'd be interested in judging Tech entries.
Micro GPS QuadcopterView Instructable »
Micro Raspberry-Pi arcade cabinet
Make your own smart watch
Micro FPV Quad