| ▲ | My First Meshtastic Network(rickcarlino.com) |
| 149 points by rickcarlino 16 hours ago | 65 comments |
| |
|
| ▲ | colanderman 4 hours ago | parent | next [-] |
| A gentle FYI for casuals interested in Meshtastic / MeshCore in the the USA: the default radio settings promoted by both these services are actually outside the parameters permitted by the FCC for unlicensed spread-spectrum operation, which require that such signals be spread over at least 500 kHz of spectrum [1]. Meshtastic "LongFast" spreads over only 250 kHz, and MeshCore "USA Recommended" over only 125 kHz. (500 kHz bandwidth is indeed a valid setting for the underlying LoRa protocol, and is used when the radios get certified.) Unfortunately the community meshes in most/all US metros have coalesced around these settings, meaning one is forced to choose between linking with "the" mesh, or operating legally. [1] https://www.ecfr.gov/current/title-47/part-15/section-15.247... |
| |
|
| ▲ | aeblyve 6 hours ago | parent | prev | next [-] |
| Nth for MeshCore, which the Boston Mesh has found to be a much more scalable solution for building an emplaced mesh network with hundreds of clients: https://analyzer.letsmesh.net/map?lat=42.00963&long=-70.9639... Separately: while it's cool to chat human-style over these networks, lately I've been thinking that the real value add is last-mile automations. Stuff that won't clog the network like remote-starting your car once or twice a day, and is normally built on top of LTE. |
| |
| ▲ | itsamario 5 hours ago | parent | next [-] | | Thats what helium and some iot manufacturers tried like Ring. A mesh that only routes out the least utilized egress node.
This is also convenient for backpackers and campers to request help, or get alerts, with their exact location | |
| ▲ | jtbaker 6 hours ago | parent | prev [-] | | From what I understand, Meshcore doesn't support the IOT/sensor types of use cases that Meshtastic does, right? | | |
| ▲ | aeblyve 3 hours ago | parent [-] | | It has some functionality of this type (you can see in the overall map a small number of "sensor" nodes), but it's not super well fleshed out or documented ATM. What I think you can do for sure today is poll a sensor over the mesh, unlike the meshtastic way where you generally automatically broadcast telemetry. |
|
|
|
| ▲ | laserb0y 11 hours ago | parent | prev | next [-] |
| I've seen several bigger Meshtastic networks in Europe that suffer from a dramatic unreliability. Everything beyond 1 Hop is often unusable. The public chat room only sees fragments of discussions. This causes big frustration within the community. MT clients are just too chatty. That most Roles can act as a (delayed) Router was IMHO a bad design decision. Also that they blocked the term "Meshcore" on their Reddit Sub leaves a bad taste. Both projects share similar problems - they should cooperate instead of fight each other. |
| |
| ▲ | the_gipsy 11 hours ago | parent | next [-] | | Blocking a "rival" standard isn't necessarily petty censorship, it can also be spam control. I check the sub once in a while and I definitely do not want to see the same "but meshcore" whining over and over and over again. | | |
| ▲ | NoiseBert69 11 hours ago | parent [-] | | Honestly .. MC is very successful in terms reliability doing it their way. Ignoring that will with full force doesn't make MT better. Hopefully MT catches up. Their GPLv3 license is much more attractive to me than the MC MIT. | | |
| ▲ | the_gipsy 10 hours ago | parent | next [-] | | The subreddit isn't the place where MT development happens - it's where users discuss stuff they do. If there was the occasional discussion of MC vs MT, that would be very healthy and helpful for both projects. But this is not what happens. The sub drowns in toxic flamewars. There's nothing to be learned from that in terms of development, and the subreddit just becomes noise i.e. spam. Re: licensing, last thing I read was the MC was... at least awkward: a "core" being "open", and then some "modules" that you need to pay for (to run on your device). I don't really care for a project like this, even if they backpaddled from this scenario. I'd rather wait for yet another third option, that is free open source and would have the supposed protocol improvements. The good thing is, after all, that the same LoRa radio devices can be flashed with one or the other, if I understood correctly. | |
| ▲ | wtallis 10 hours ago | parent | prev [-] | | I think both the Meshcore and Meshtastic communities have a problem with people being passive aggressive instead of being direct and upfront about the different tradeoffs chosen by those projects, and their consequences for various use cases. Unless those attitudes improve, keeping the forums separated is unfortunately one of the more straightforward ways to avoid flamewars and repetitive, circular arguments. There are significant downsides to the changes Meshcore made to achieve more reliability in some use cases; it's absolutely not an all-around improvement that Meshtastic necessarily needs to "catch up" to, and downplaying or hiding the downsides doesn't help anyone. At the same time, Meshtastic proponents should be more honest about the scalability limitations of their approach. | | |
|
| |
| ▲ | antirez 7 hours ago | parent | prev | next [-] | | I wanted to fix this with my FreakWAN but I was never able to find a user base willing to validate the ideas of the routing I implemented. All the code is open source and easy to modify. Write me if you are willing to experiment :) | | |
| ▲ | NoiseBert69 4 hours ago | parent [-] | | There are plenty of network simulators around. Why no simulating it offline? | | |
| ▲ | antirez 3 hours ago | parent [-] | | LoRa diverges too strongly when applied in the real world. There are quirks in the chip (Semtech in the latest revision did a few strange things), and in the way chirp modulation works (the one used by LoRa), that makes it a lot better to test in the field. |
|
| |
| ▲ | squarefoot 10 hours ago | parent | prev | next [-] | | I was just about to ask this: a non partisan honest comparison between Meshtastic and Meshcore for different use cases such as long/short range, congestion resistance with nodes growth, resilience against adverse condition, ease of integration with different software, etc. without fanboyism/hatred/shilling etc involved to form an opinion before starting buying hardware and diving into one of the technologies. | | | |
| ▲ | ajsnigrutin 8 hours ago | parent | prev [-] | | In slovenia and neigboring countries there's a huge mesh of probably hundreds of nodes, some connected via radio, some via mqtt with people only working on expending the mesh and nothing else.... the result is predictable... a few "test? can anyone see this?" every few days and most of the radio channel is used up by signalization between the nodes. Then somone adds a new node in some area further away (parents' place, work, whatever), sets up mqtt, connects two such meshes together, and we get the same 'test?' but now in italian. Making it smaller (city-wide) and have people actually talk there would be much better, but for now, everyone just wants to make it bigger. |
|
|
| ▲ | hedgeho 7 hours ago | parent | prev | next [-] |
| Reticulum (https://reticulum.network/) seems to have quite a community with global chatrooms and local communities (saw at least US, Germany, Italy), seems like a more scalable solution than meshtastic imo. |
| |
|
| ▲ | supernova87a 4 hours ago | parent | prev | next [-] |
| Has anyone come across a good semi-technical description of "how your node knows that its message got sent and reached its destination and can stop sending"? I'm interested in how this logic is executed when you can't be sure (I assume) that knowledge of the result will get back to you in a certain amount of time. |
| |
| ▲ | Evanito 3 hours ago | parent [-] | | You can find that here in the Layer 2 section: https://meshtastic.org/docs/overview/mesh-algo/ In short, all messages are sent within windows, which include waiting periods within which the broadcasting node listens for any other node to rebroadcast the same message. Upon seeing the message be rebroadcast, it stops attempting to send. |
|
|
| ▲ | meshtastictm 14 hours ago | parent | prev | next [-] |
| Yay! Now you can enjoy the 8543 device roles Meshtastic has to offer, and see the static position and battery level eating away at airtime utilization. How exciting! Meshtastic is a bad protocol developed by toxic people in way over their heads. Beware of using their trademark! They’ll send you a cease and desist letter. |
| |
| ▲ | u8080 11 hours ago | parent | next [-] | | Also Meshtastic codebase is the awful mess - one of the many examples when Arduinoslop became something bigger than quick prototype. | |
| ▲ | hexo 5 hours ago | parent | prev | next [-] | | I've also found meshtastic to be totally unusable in practice. Tried it, really really hard. It barely worked in a city i live in. Did not work at all when i took the node for 500km ride. Bad protocol, yes, it is. | |
| ▲ | xyx0826 13 hours ago | parent | prev | next [-] | | You seemed to have made an account just for this reply. Care to explain the cynicism? I’m out of the loop with the toxicity. | | |
| ▲ | bb88 13 hours ago | parent [-] | | I'm not OP, but there's a lot of criticism of meshtastic from people knowledgable about mesh networks. I also have been critical of meshtastic on this site. Here's an example of a good criticism: https://www.zeroretries.org/p/zero-retries-0215 I have no experience with the community, but if they couldn't have been bothered with understanding AlohaNet from several decades previous, than maybe it's not surprising. I myself have been fairly critical of meshtastic, you can probably search for bb88 and meshtastic to find more criticisms. To save you some time, I live in a fairly populous city with a bunch of meshtastic nodes, and can't get a message accross from me to my friend who lives one hop away. | | |
| ▲ | wtallis 13 hours ago | parent [-] | | It's not clear to me which portions of that very long newsletter are responding specifically to Meshtastic, but it seems like the most relevant section starts by listing some challenges but offers nothing in the way of solutions except to digress into talking about a wildly different class of radio hardware (SDRs that can monitor many channels at once). | | |
| ▲ | bb88 13 hours ago | parent [-] | | So you mean other than these sections right? "Thought experiments about mesh networking" "Hard Lessons Learned -- What not to do" "Meshtastic Is Rediscovering Lessons (Already Learned) of Amateur Radio Data Networking" Instead of actually trying to understand the arguments these days, it's easier to inject noise into the argument, proclaiming it's too "hard to find" or "too hard to understand." Mesh networking is a hard topic. Expect to expend some brain cells to understand it. I'm not here to spoon feed you tech that was well understood 3 decades ago. | | |
| ▲ | wtallis 12 hours ago | parent | next [-] | | How about you make an actual argument here in this thread, instead of vaguely gesturing at an excessively long newsletter and claiming there's relevant substance in there somewhere? Or at least tell me if I've incorrectly interpreted the "Meshtastic Is Rediscovering Lessons (Already Learned) of Amateur Radio Data Networking" section as listing problems but no solutions aside from buying a radically different (more expensive and power-hungry) type of radio? Try making some specific suggestions for what Meshtastic is doing wrong that could be done differently. That way, we can tell whether your beef is with the Meshtastic software and protocol, or with their choice of LoRa radio hardware, or if you're just trying to preach about your ideal mesh network design with unstated assumptions about the priorities and constraints of such a network. | | |
| ▲ | hedgehog 3 hours ago | parent | next [-] | | FWIW I have some background in this area and got curious how Meshtastic works so I read some of the docs and code. It seems like they are unaware of existing work even 20+ years ago, a specific suggestion is to study the state of single radio CSMA meshes in say 2005 and make a list of subjects to read on, then do that. There's a lot of stuff that happened later but in the early 2000s many people tried to make meshes out of 802.11b IBSS and a lot got written about those efforts. | |
| ▲ | immibis 6 hours ago | parent | prev [-] | | All the information you seek is found in the article you stubbornly refuse to read. | | |
| ▲ | Groxx 5 hours ago | parent [-] | | having read that meshtastic section: I mostly agree with their requests tbh. the only suggestions in there seem to be "use full duplex" (with approximately one reason why, though it's a good one) and "solve frequency discovery with SDR" which they've already addressed as somewhat ridiculous - because it is, for someone interested in a low power and low cost network. particularly the SDR stuff, which is the VAST majority of that section. this is not at all the same target audience as meshtastic: >A computer with “sufficient” compute power and RAM, to run the ka9q-radio software. KA9Q has stated that a Raspberry Pi 4 is sufficient, and now we have the Raspberry Pi 5 with up to 16 GB of RAM, for only $120. that's like suggesting the way to fix a wireless problem is to use a wire. otherwise the criticism seems to summarize as "it's slow and bad" and well. okay? that's hardly constructive, whether or not it's accurate. the whole thing reads like "the solution is left as an exercise to the reader ;)" because it sounds like it's written by and for people who are already experts and just want to read a cathartic list of flaws they already know. and/or "buy better hardware lol". it's not at all the logical slam-dunk that you seem to think it is. |
|
| |
| ▲ | mtlynch 7 hours ago | parent | prev [-] | | I've been spending a lot of time experimenting with and learning about Meshtastic and MeshCore recently,[0] and I'm also puzzled by the criticism of Meshtastic. In the article you linked, there are three paragraphs about Meshtastic in a 150-paragraph newsletter about several topics. The criticism seems to be that they they use digipeating, and then it refers to a Fedi thread[1] which is more coherent but still fairly vague. The upshot seems to be that flood routing doesn't scale, which is a fair criticism but feels disproportionate to the level of vitriol against the project. The Fedi thread also adds that the Meshtastic founders were rude or unprofessional to him but doesn't cite any specifics or evidence. I see this a lot with Meshtastic. People keep saying the founders are toxic and disrespectful of the community but it's always in these vague terms so I don't know what's driving it. But specifically in this thread, I agree with sibling poster that you're being disrespectful and arguing ineffectively by pointing to such poor resources and then blaming other people for being unconvinced or confused. [0] https://mtlynch.io/first-impressions-of-meshcore/ [1] https://partyon.xyz/@nullagent/113861754522594610 | | |
| ▲ | threemux 6 hours ago | parent | next [-] | | As I understand it, the section on "what not to do" features many things that Meshtastic does, though it does not say that explicitly. Perhaps the linked post wasn't clear to non hams (it is a newsletter targeted at hams), but the biggest issue is not flood routing, but using the same channel for networking and user access. It, by definition, cannot scale meaningfully. Many commercial networks solve this with either FDMA or TDMA. Elsewhere in the newsletter, the author advocates for a form of FDMA, where users operate on different, dynamically allocated frequencies and all of them are received at once. P25 trunked radios used by almost all law enforcement in the US operate on a system like this. I think the vitriol from those who are in the space either professionally or as an amateur comes from the fact Meshtastic is repeating mistakes we knew about in the 80s at the latest, for which reams if literature freely exists. | | |
| ▲ | wtallis 4 hours ago | parent | next [-] | | That's a reasonable take to an extent, but underlying all of that is the assumption that Meshtastic should be trying to scale up to support hundreds or thousands of active nodes on a single mesh. Since that's clearly almost impossible to achieve with an ad-hoc network of low-power LoRa radios, it's not entirely fair to criticize Meshtastic for not inventing a revolutionary solution to a very hard problem. It would be more fair to criticize Meshtastic for not being clear enough about the tradeoffs and limitations inherent in a low-speed ad-hoc mesh network, and for not actively encouraging people to seek other hardware and software if their use cases are not well-matched to what Meshtastic hardware is capable of. A one size fits all solution simply isn't possible, and Meshtastic can't be the right answer for everyone. | | |
| ▲ | threemux 2 hours ago | parent [-] | | This is also a fair response, however I'd argue that the current architecture, far from supporting hundreds or thousands, won't even support dozens in a small area with meaningful traffic being exchanged (e.g., not just heartbeats and routing data). The solutions exist and no revolutionary approach is needed. That's the crux of the complaints. Now, for the hobbyist these solutions are harder to implement and that's not nothing, but I don't even see a movement to switch over to something more robust. | | |
| ▲ | wtallis an hour ago | parent [-] | | > Now, for the hobbyist these solutions are harder to implement and that's not nothing, I'd argue it's everything. A network architecture that requires serious fixed infrastructure should probably be an entirely separate project from the ad-hoc mesh formed solely by cheap battery-powered portable/handheld gadgets. And everyone should be realistic about what "meaningful traffic" is for a network with a default data rate of ~1kbps; it's not reasonable to expect that to support the kind of chatter a busy IRC server would see. |
|
| |
| ▲ | mtlynch 5 hours ago | parent | prev [-] | | Thanks! I appreciate your more accessible explanation. |
| |
| ▲ | howcutend 5 hours ago | parent | prev [-] | | How cute that you’re “puzzled”. Cool story bro. Have YOU ever tried interacting with the developers? No? * They made incredibly poorly designed software — the firmware and the mobile apps — and then yell at you for “using it wrong”
* The refuse to admit they made a mistake with the 7 hop limit and call you an idiot for not believing in their garbage “simulator”
* They write nasty responses to app reviews and GitHub issues because they’re petulant children. Just go read the responses, and look at the hissyfit the of the primary app developer in discord.
* They’ve taken down multiple community groups because they decided they needed to be a business rather than an open-source project. Seriously just go look at the history in their discord #trademark channel. They’re on the verge of evil. All this stuff is available and just because YOU choose to put your head in the sand doesn’t mean it didn’t happen. | | |
| ▲ | mtlynch 4 hours ago | parent [-] | | > Have YOU ever tried interacting with the developers? No? I have. I emailed them a couple of weeks ago and they responded promptly and professionally. > All this stuff is available and just because YOU choose to put your head in the sand doesn’t mean it didn’t happen. You want me to read thousands of GitHub issue comments and discord messages in search of bad behavior? If you have examples of the Meshtastic team behaving badly, why not link to them? The burden of proof is on you, not me. I don't have a dog in this fight. I think LoRa messaging is neat but I have no investment or relationship with Meshtastic in particular. |
|
|
|
|
|
| |
| ▲ | the_gipsy 11 hours ago | parent | prev | next [-] | | It's much easier to call some protocol "bad design", after the fact, than to develop something yourself. | |
| ▲ | itomato 9 hours ago | parent | prev [-] | | And presumably rely on discord despite MQTT? |
|
|
| ▲ | russdill 14 hours ago | parent | prev | next [-] |
| (The two amazon links for the antenna upgrade and pair of radios is swapped, if you're looking for the one, click the other) |
| |
|
| ▲ | therobots927 6 hours ago | parent | prev | next [-] |
| Is encryption allowed over this network? I know it’s not allowed over HAM. Also is triangulation / message source identification possible? |
| |
| ▲ | aposm 6 hours ago | parent | next [-] | | Yes, it is enabled by default (in fact this caused problems earlier on). Licensed hams (in the US) can increase transmit power (and theoretically use additional spectrum outside of ISM) but even the default "public" channel was encrypted with a known, publicized key. There was some debate whether this ran afoul of amateur radio rules against encryption, even if the key is known, since it cannot be disabled. I believe there was some progress in fixing this and allowing truly unencrypted channels for licensed operators, but I haven't checked back recently. | |
| ▲ | NoiseBert69 4 hours ago | parent | prev | next [-] | | On ISM frequencies encryption is allowed. Triangulation will work as long as you transmit. But it will be difficult as LoRa works down to -145dBm which is an extremely weak signal. | | |
| ▲ | colanderman an hour ago | parent [-] | | I am pretty sure (though have not vetted) that triangulation of LoRa is possible even at very low SNR. The trick is understanding LoRa's trick, which is simply to "skew" the signal across time (via chirps), modulo a window of the configured bandwidth around the center frequency. The key is that the skew rate is purely a function of the spreading factor, bandwidth, and IQ polarity (= pol × BW² / 2^SF), so there's a small-ish finite number of skew rates. So you can just modulate raw IQ data with carriers at each of these skew rates to find one which gives you a bunch of carrier waves that hop around discretely at about twice the symbol rate, looking like an FSK signal. You can then bin this at a factor of, say 2^(SF-2) to correlate the signal and raise it up above the noise floor, on which you can apply any standard triangulation technique. I'll try vetting this soon and reply to this post with results. |
| |
| ▲ | xanderlewis 5 hours ago | parent | prev [-] | | Ham isn't an acronym. Just saying! |
|
|
| ▲ | bb88 13 hours ago | parent | prev | next [-] |
| Are meshtastic nodes still spamming their battery status over the network? Have they figured out that flood routing is a terrible routing mechanism? |
| |
| ▲ | 4ndrewl 12 hours ago | parent [-] | | Is it imperfect in an unusuable way? Do you have links to alternatives? | | |
|
|
| ▲ | VikingCoder 5 hours ago | parent | prev | next [-] |
| Did you grab lunch at Smitty's? I live 5 miles west of the maker space in the last photo, and I've been thinking about getting some Meshtastic nodes... |
|
| ▲ | spacebacon 14 hours ago | parent | prev | next [-] |
| The Meshtastic list of networks is nice, but it is missing several. For example, the lack of listings in North Carolina led me to find https://ncmesh.net/. |
|
| ▲ | kingkawn 6 hours ago | parent | prev | next [-] |
| I’ve done extensive mesh network testing in nyc and compared with notes from other big cities, and the number one thing you can do to dramatically improve mesh reliability is moving off of the default frequency. Staying on Longfast is fine, but find an alt freq and everything will suddenly work 10x better. |
|
| ▲ | clumsysmurf 13 hours ago | parent | prev | next [-] |
| I'm ignorant of mesh technologies, but can somebody explain to me why they are using MQTT in their stack? Topics and pub-sub over TCP doesn't sound like a mesh-y kind of thing. Does it work well in this context? |
| |
| ▲ | wtallis 13 hours ago | parent | next [-] | | The mesh isn't doing MQTT or TCP. They're using MQTT to bridge between meshes, with mesh nodes that have an internet connection or are paired to a smartphone with an internet connection relaying mesh traffic with an MQTT server. | |
| ▲ | the_gipsy 11 hours ago | parent | prev [-] | | MQTT is used for map reporting, and sometimes as a "fallback" or to connect distant meshes. | | |
| ▲ | hexo 5 hours ago | parent [-] | | Also very good way to instantly spend all your air time. Remember, legally you can only transmit at something like 10% of time. In some bands even less, afaik. | | |
|
|
|
| ▲ | aboardRat4 4 hours ago | parent | prev [-] |
| Would you be interested in a small commercial application of your node? I need a few messages transmitted to as many peers as possible once in a while. Nothing illegal, just a small contribution to the economy. We're selling pure herbal organic medicine which helps males perform better, and our product announcement will fit perfectly in you 200 characters limit. |
| |
| ▲ | mcdonje 3 hours ago | parent [-] | | Are ads a thing on meshtastic? If a node is spamming ads, would I have the ability to block it? |
|