Meshtastic has been fun to mess with… er ‘mesh’ with — but after a couple weeks using a muzi.works H1/R1 as well as a separate Heltec V3 in it’s little plastic case, I have some questions and observations. I think some things I might just not get yet, but hopefully someone can at least help with a few of these:
Is there any way for me to put a node on WiFi, and still be able to use the node from the iOS app (does Android connect to nodes in the app over WiFi)? The browser-based UI kinda works, but is very kludgy to use on mobile, so the App would be preferable.
Does the node store messages / chat history at all? It seems like whenever I reconnect to the node I have on WiFi, the channels and DMs are all empty.
Related to the previous question: is it just a bug that when I open the app and reconnect to a node over Bluetooth, it doesn’t load in chat history (at least most of the time) until I send a message? (I have a lot of ‘ping’ or ‘test’ sent out, just to make sure any messages on the mesh get displayed in the app. It’s hard to tell if this is an iOS app bug, a node issue, or just ‘the way things work’
Is there any way for me to get my nodes to have better Bluetooth range with the Heltec nodes, or is 3-5’ about as good as it gets?
Is there any way I can make a node be tied only to one phone or one network? I’ve noticed things like WiFi passwords and keys are stored in a retrievable fashion, and if a friend walked up with the Meshtastic app, and connected to my node, they’d be able to extract that info (if, for example, I had switched it back to Bluetooth but not cleared out the WiFi password).
I ordered a T-Deck and want to see if that makes more sense as my separate little node—having to manage a bluetooth connection for my mobile nodes is a little painful, especially with the tiny amount of range I get (even if I turn around standing 2’ away, my body will block the connection sometimes!).
iOS does not support a network connection but Android does.
The node will store a limited number of received packets (~30) until full and then prioritizes text messages when full. There’s a module for devices with PSRAM that you can use Store & Forward to extend this. Overview | Meshtastic and Store & Forward Module Settings | Meshtastic
Both apps should display previous messages when you reconnect. iOS if you connect to a new device will wipe these though.
You should definitely be getting better range with BLE, I can get about 25’ with my V3s. Cases can impact this as well as walls and the like.
Hmm. That’s a good question. I’m not sure if there’s currently a method to prevent others from connecting via a TCP connection. Might be a good feature request. Although if you switch it back to BLE then you would be at least covered by the PIN (although unless you are using non-default and non-random they could still possibly connect.)
Message storage. Not normally. But (some) nodes can be turned into ‘Store and Forward Server’ Store & Forward Module Settings | Meshtastic which would allow retriving messages sent while disconnected.
… at least on Android, chat history is stored in the App, not the node.
Dont see that behaviour on Android, so seems like a bug in the app. But dont use iOS to say for sure.
I can get about 6m (20ft) range on heltec V3. Have had the node up a tall tree, and can connect even from inside a window. Also from another room inside the house (about 4m direct).
Check the little coil spring antenna (bt+wifi), hasn’t been damaged. I have another heltec (wireless-tracker) that I managed to snap off the antenna, using it without a case. That only gets about 3ft range on bluetooth now (not tried wifi).
You can turn a node into a ‘managed node’. Which will lock down some settings. Device Configuration | Meshtastic But it still not totally secure.
does Android connect to nodes in the app over WiFi
Can do - there is a place to enter the IP address. Wifi or Bluetooth is either/or not both and the boards I’ve used. I don’t know about ios
Does the node store messages / chat history at all?
Not that I’ve ever seen evidence of, the apps do seem to cache some
Is there any way I can make a node be tied only to one phone or one network?
you can set the BT pin on the nodes which might prevent random phones pairing with your nodes. If that’s not enough you need to get better friends if they’re hacking your kit
Is there any way for me to get my nodes to have better Bluetooth range with the Heltec nodes, or is 3-5’ about as good as it gets?
I have just tried my Heltec Wireless Tracker and it does fine on BT to my phone in another room through a wall, at least 15 feet, with an old Samsung S7, so maybe try a different phone?
Thanks for all the responses! I haven’t dug into it much yet, but does the T-Deck store more messages locally? I would assume since it’s more standalone, that comes out of the box, but it sounds like I might need to adjust some settings to do Store & Forward?
Just a couple extra thoughts: Almost all our supported devices use the same hardware to do BLE and WiFi, and as such it’s a hardware limitation that they can only do one or the other, but not both simultaneously.
That BLE range definitely seems wrong. Is it just a single device that has that problem, or are you seeing it on multiple Heltecs?
On the security front, you can set a custom BLE pin, though I believe it will still be displayed on screen when trying to connect. The security paradigm is essentially that physical access gives full control. There have been discussions about trying to lock that down to some extent, but we haven’t settled on an approach yet.
If you want to store more messages, you want to run on Native Linux. There, you can set the NodeDB to whatever you want, and the size of the stored packet queue is derived from the NodeDB size. (It’s on my todo list to make those independently configurable).
Thanks; sounds like I should set up a Pi Zero with a LoRa HAT sooner rather than later, then — I would like to get a node mounted more permanently, and higher up in my attic too. There’s now one other person within range, but I know a couple other people in STL who I might be able to reach with about 15’ of elevation!
Regarding the history not loading automatically: there was a bug where the phone didn’t get notified when the queue was full, but that should be fixed in 2.3.15. Although it still can take up to a minute after connecting.
A pi with a lora hat would work, but it’s a bit different setup. I am not familiar with it myself and have not spent time to dedicate a pi to this yet.
Another Heltec would be quickest and easiest (if you set it up where there you have power from the wall).
Heltec devices aren’t the most efficient (they use LDOs)… ESP32 based Lilygo devices that I am familiar with (tbeam and tbeam supreme) use switching power supplies so make better use of your 18650 or other battery of choice. nRF52xxx based devices are typically the most efficient.
Not an expert here but with any setup, there are usually possibilities to make them more efficient by configuration or other more drastic measures.