spleenware / ripple

Arduino Firmware for Ripple LoRa mesh
Other
262 stars 33 forks source link

Can Heltec Esp32 Lora board be used as a tracker? #29

Closed SuperSeadog closed 1 year ago

SuperSeadog commented 3 years ago

I have Heltec V2.

If yes, which version of the firmware should i use?

Also, since the frequency is configurable, how do i adjust the frequency.

Thanks in advance.

spleenware commented 3 years ago

I have an experimental firmware version for the Heltec, actually. I'll clean it up and upload it soon so you can try it out. It has a slight caveat, in that the serial tx/rx pins are shared with the USB Uart, so you have to boot it up in two different modes, 1) holding down the PRG button will put it in 'config' mode, so you can attach USB to Android running Ripple Commander, 2) normal power up, will try to read the GPS receiver over serial. You set the frequency for the whole 'Group' in Ripple Commander (the pencil icon to the right of the group setting, eg. '0'). Then when you do the 'Program' steps with each node you define, the frequency setting gets sent (and saved) on the device(s)

spleenware commented 3 years ago

OK, I have a beta firmware version uploaded here: https://github.com/spleenware/ripple/blob/master/README.md#gps-tracker-node---433-to-915mhz-configurable

SuperSeadog commented 3 years ago

I only went as far as flashing the firmware. The LED doesn't turn on anymore. Is that normal?

Have not connected the GPS, or tried to program with ripple commander.

OTG cable can just be any cable with the correct end connectors?

BTW, if I uninstall Ripple Commander on my phone, can I reinstall on a different device?

Thank you!

spleenware commented 3 years ago

For connecting the GPS, you can wire one of the 'Vext' pins to the GPS VCC wire, and then you can take advantage of the 'Peripheral Enable' checkboxes in Commander app. ie. some low power modes can be configured to power down the GPS while sleeping. The RX/TX (just next to the 'Vext' pins) are wired to the TX/RX (crossed over) of the GPS. OTG cables are different to normal USB cables. You can get adapters that clip onto the large 'A' USB end, which converts it into an OTG cable. Ripple Commander now has 'Backup Data' and 'Restore Data' menus so that you can move everything over to another Android.

SuperSeadog commented 3 years ago

Sorry, I meant the LCD display doesn't turn on anymore, just stays dark after flashing. Is that normal?

"The RX/TX (just next to the 'Vext' pins) are wired to the TX/RX (crossed over) of the GPS." Do you mean connect RX (ESP board) to TX (GPS)?

Thanks!

spleenware commented 3 years ago

Yes, there's no OLED display defined for the GPS tracker (at present) so will stay off. Yes, RX(ESP) -> TX(GPS), TX(ESP) -> RX(GPS)

spleenware commented 3 years ago

Oh, also when you do the 'Program' step in Commander, you will need to do the power up of the Heltec like so:

spleenware commented 3 years ago

Ah, about the Heltec board's power. For the 'Program' step, you also need to Disconnect any Lipo battery first. The board must be powered by just the USB-OTG cable

SuperSeadog commented 3 years ago

I have setup the gps tracker. Anyway to test whether it's working?

Also, how do i setup the messenger device?

I flashed the second board with Ripple-USB-Heltec_v2 and connect it to Android with OTG.

I am getting an error message when I open the Device Provision app:

Device ID 1 already exists. Delete this first if you want to use this ID.

What should I do next?

SuperSeadog commented 3 years ago

Also on Ripple Commander, it only shows the gps tracker node, and when I go into the pencil icon, it will display RSSI: timed out.

Also, the tracking options are unselected.

spleenware commented 3 years ago

You need to launch the other icon, 'Ripple Commander' (not 'Device Provision'). The app has two main activities: 'Device Provision' -> this is for setting up the network 'Ripple Commander' -> this is for monitoring the network (you also connect the 'Home' radio here)

SuperSeadog commented 3 years ago

How do i connect the 'home' radio in commander? By entering the "exchange key" (where is this stored)?

Btw I have connected the board to the phone with the commander app using OTG.

SuperSeadog commented 3 years ago

Also set the frequency of the gps tracker to 915 using Device Provision. That's ok?

Thanks!

spleenware commented 3 years ago

From 'Device Provision' , there is a 'Preferences' menu under the top-right '...' menu. Make sure the 'USB On-The-Go' option is selected here. Exit this part of the app, then go back into the main 'RIpple Commander' activity, then connect the Home radio with the USB-OTG cable. If it connects properly, you should see the little Bluetooth-looking icon change to a solid white in the top toolbar (it's initially grayed out)

SuperSeadog commented 3 years ago

It's working now. I can get the RSSI and battery readout, but not the location/gps yet.

I took it outside for a little bit, but no luck.

It should work with any gps module? Simply connect to the pins labeled as TX and RX on the board?

Thanks much!

SuperSeadog commented 3 years ago

I'm using this gps: ATGM336H GPS Module

https://www.tinytronics.nl/shop/en/communication/gps/atgm336h-gps-module

SuperSeadog commented 3 years ago

Update: everything works now.

When I installed a lipo battery, the leds do not light up, and when i power is through the usb port, the leds will light. Is this normal?

When tracking is it possible to draw a line for the path taken by the tracked object?

SuperSeadog commented 3 years ago

Can i have 2 Android devices (and ripple commander) with home radio on the same network and tracking the same tracker node?

spleenware commented 3 years ago

I checke the specs of that GPS, and looks like it needs 5V to power it. Try soldering the GPS's VCC line to the 5V pin just next to the GND pin, rather than the Vext pin. I think the Vext pins only supply 3.3V

spleenware commented 3 years ago

No, currently can only have one Home node, and Commander app/device.

spleenware commented 3 years ago

BTW, use the 'label' option in Github issue tracker to submit a feature request, like the tracker 'path' you mentioned. I've just done this as an example: https://github.com/spleenware/ripple/issues/31

For your other question, about multiple Commander Androids being able to track a GPS tracker node, that could be a feature request (ie. label = 'enhancement')

The issue tracker is a nice way of doing this, so potentially others can view or even add to the discussion. Plus, if some resolution does eventuate, I will add to the issue conversation on how the new feature works.

SuperSeadog commented 3 years ago

Ok, thanks for your suggestion. Everything works great now. I'll add some feature requests and enhancements for consideration/discussion shortly.

Thanks for all the help!