DollaTek / Heltec LoRa devices & meshtastic

Well, totally not unexpectedly, the Lora ECHO devices were "cancelled due to security concerns", so I got a refund from AliExpress.... no cheap devices for me there then.

However, remember those 3 x "DollaTek" devices that were basically a very good visual clone of the Heltec v3 WiFi/BLE/LoRa/OLED devices - well, they arrived & they were really well done, you would think they were the originals - the box was branded, the PCB was branded exactly the same, the same components (from what I could tell), so as far as I was concerned that's what I was now going to treat them as.

After receiving the devices from Mr(s).Postman-person, I then had to head out to Glastonbury to get my haircut - 'cos, y'know I'm a really hippy and all that.  As you can see 11am on a Monday is NOT a busy time:

and the actual place I get my luscious locks trimmed is actually HERE - yep the shop with the mural:
Rock and Roll!

I then spent far too much time on a Monday afternoon/evening (hey, it's my week off, I'm allowed to do personal stuff) getting libraries / code samples etc... in an attempt to get the devices to work from Arduino 2 IDE. I was confusing myself because although there was a little [V3] above the antenna, the listing led me to believe I had a hybrid, ie. a v3 USB-C board but with the "older" LoRa chip.  Anyway, the device came pre-flashed with a WiFi scanner app that output nicely to the 0.96" OLED screen that is actually really nice and clear and bright.  I had the "fun" then of attempting to select the right board within the Arduinno IDE in order to deploy some code and test that I had the config setup correctly.  This is the bit that took far too long.  Whilst I accepted that the device was the V3, as all other selections informed me that they were ESP32 and not ESP32-S3 - which is what the new board is, the code would execute but refused to show anything on the OLED.  I could Serial Monitor and see output no problem, I could execute code with WiFi, no problem.

I eventually, through some combinations of using the Board Manager / manually installing "stuff" managed to get something to work.

However, as I say, I was being especially stupid in the lead up to this and I ass-u-me'd that these were the same devices:

https://randomnerdtutorials.com/ttgo-lora32-sx1276-arduino-ide/

Clearly, once you've noticed the finer details you see that, ignoring the branding, this is actually the V2 board and not the V3 board.

What it does introduce you to though is: the LoRa Frequency that you want to work with / use is set in CODE.  Now, that is brilliant.  As I've just had to "throw away" (of course I didn't, that merely means they went into the "can I steal bit of this later" box) several 915Mhz LoRa devices as they were hardware "hardcoded" to that frequency, this is really nice to see - let the code dictate what frequency to use.

After realising my blunder above, I then found this page:

https://www.sabulo.com/sb/esp32-development-board/how-to-use-the-heltec-oled-display-on-the-esp32/

that then helped me to get to grips with the heltec library itself.... ah, and then I noticed within the Arduino IDE I now had the "extra" Examples

and that then looped me back to the Heltec website:

https://heltec.org/project/wifi-lora-32-v3/

that then re-enforced that I was using the V3 device and you could see the differences to the TTGO V2 devices I was looking at earlier.

I'll keep this image here for future reference:


So, Arduino 2.0 IDE....


No matter what code I tried, all I was getting was "LoRa failed starting"... I then went down into debugging mode for myself and thought maybe I'd broken the device, so I switched out for a different one (hence buying 3!), same experience...Hmmmm

And then I thought, why am I burning time on this? The T-Deck is running Meshtastic and all I really want to do, for now, is just test that the devices can communicate with each other - d'oh! so why don't I just see if i can set them up with Meshtastic?

I then thought, "hey, I can use the online flasher for this". No.  Still doesn't work, even though the USB-C is recognised as a USB, so back to the manual flashing from the CLI.  As you can see, I could see the chip information from this command:


and then it was just a case of running the flashing command with the right firmware reference:


and about 2 minutes later, the device reboots itself, flashes the Meshtastic logo, and then flips between two text screens telling you that you need to BLE connect to it in order to configure it.

Out with the same phone I used a few days ago - BLE PAIR the two, then the phone can "see" the device:


My phone camera is awful, it will NOT do close photo's in focus, that's as good as it gets.


I then pressed the UNSET word to set the region to EU_868, another reboot later and there we have the familiar UI and a flashing LED on the board - well, that was pretty simple!

As it is default, it is using the LongFast channel - I might reset that back on the T-Deck just for testing and then add custom channel for myself later on.

Next step is to repeat the same thing on the other 2 devices and then find enough USB-C cables to power the devices and then test sending comms. between them.


Why am I doing this on a Tuesday morning? Well, as mentioned, I'm off work this week, but more specific than that I'm also waiting for a recovery truck to come and pick up my Kustom Vanguard - yep, the custom car is broken (again), but that's the nature of the beast.  I've only done 1500 miles in it, so it's still in "snagging" mode, ironing out the kinks / loose bolts, literally giving it a "shake-down".  What's wrong with it this time?  I literally shook the prop-shaft and gearbox mounts off the car!  I think.  Well, I'll know more once she's gone back to Valley Gas and is up on a 4-poster to check out exactly what went wrong and what subsequent damage I did and then how to fix her back up again - and then I'll be driving the car at LEAST once a week to rack up that mileage and to iron out any other issues.  I'm already aware that it gets "hot" under that bonnet, so some form of extra cooling, potentially a remote electric water-pump to help with cooling, cutting out airflow vents in the inner-wings, who knows, this is the "fun" of having "code in the shape of a vehicle".  It's the same thing as doing the above electronics / coding work - just on a bigger scale that costs more ££££.


Oh, it's also pi$$ing it down with rain, so that's going to be fun getting the car up onto the low-loader in the rain... and then off to the ear Doctor.... and then back to more LoRa fun!


Well, I should really be digging out stuff in the garden so we can have a proper water "runaway" (awesome movie from the mid-80s!) "soakaway" so that with this excessive amount of rain we're having, I end up with more water around the outside of the hot-tub than inside it.  That is a tomorrow task...with proper wellies and a shovel time.

The LoRa devices are actually for the garden and for that mentioned hot-tub, so I can monitor the "levels" of the water quality, temp, etc... as well as manage the greenhouse, opening/closing the roof window for airflow / temp control and a variety of other "gardenBot" related things.  The LoRa devices might be overkill for what I want to use them for atm but I'll learn.  Then when the world goes to sh!t and we hit the apocalypse I can then re-purpose the devices for end-of-the-world comms devices. nice.


UPDATE:

okay, so I hooked up 2 devices.  Different callsigns obviously.  However, I used the same phone BLE to connect to each one.

As you can see there are 2 devices detected and 'cos I turned on Location on the phone, it knows the geo co-ords.  This did actually settle down and the last digit for one of the devices changed to a 7, which is pretty much spot on as I moved it to the other end of the sofa, about 1mtr away.

The power settings are interesting, as they are both plugged into USB-C fixed power and not battery, so not sure why that mis-reads, but will test further when I find my LiPo batteries and plug them in.

What is slightly annoying is that I cannot photograph the actual devices - darn you cheap camera phones.  However, I can confirm that when using the phone BLE to connect to a device and send a text message it appears on the "other" device screen.

In fact, as there are now 2 devices, there are initially 3 small dots at the bottom of the device OLED that indicates 3 screens.  If you press the BOOTSEL button for a second it switches between the screens.  The first screen now shows a circle on the right hand side, indicates where N(orth) is and has a pointer that I believe is pointing me towards the other device?  I'll need to test this further.

Now, from the phone, as mentioned, you can connect to each device and send out messages.  The success indicator in the phone UI is that the cloud has a little tick in it.  On the device itself a new screen (now we have 4 dots) is created and the message is displayed.  It only shows the last message, there is no history - you only get the history on the phone device itself.


As you can see above, I connected as the 84f8 device sent 2 messages, then connected as the 9080 device and sent a reply message.  Both these messages are visible on the devices themselves, as well as showing up on the connected BLE phone.  This is "ok" for testing to make sure the comms. works, it's not really how you would use this in real life.

I should really connect 1 BLE phone to one device, such as mine, and then connect another one to my missus's BLE tablet/phone and then we can control each device.  However, huge overkill just for that scenario - but at least it'd isolate the BLE connections.

I'd be interested to get the Meshtastic github repo code and take a look to see if I could modify it to keep the last 2-5 messages on the device and a bit like the 3/4 dots horizontal scroll, handle a simple vertical scroll just on that screen - don't know, might get tricky, but worth a potential fiddle at some point.

It's 11:15 and still no recovery truck..... am glad I've got a distraction to pass the time until 1pm when I have to leave for ear Dr.....

UPDATE:

12:15 the truck arrived!  Time for some Jenga - always fun to get the car onto a recovery truck.


I managed to get a look underneath and could see that the main problem was/is the propshaft having a falling out (literally) with the back of the gearbox:


You can see at the end of the propshaft, that circular thing with the shiny bit in the middle - that's the back of the gearbox that is meant to be connected to that propshaft.  If you zoom in, you can see the metal has been ripped off the gearbox mounting / fixings.  Too much power?!  anyway, out of my scope of expertise, over to the experts to fix it and improve it.

all up on the back of the truck and off to the "fix me up" shop....



.

Comments