Public Meshtastic channels for metropol areas


The Meshtastic Node Map and the Where are you? Add your locations threads show that people want to connect with other people in their area. This would be easy with a public shared channel but currently we are limited to a single channel that we configure. In my opinion it would be a good idea to have a list of public channels people can join in their area to become part of a public mesh.

I think in the current stage it only makes sense for cities or areas where you have at least 3 or more nodes already on the map and the distance is close, so there is an actual chance of the nodes connecting.

This could be the channel for Berlin, Germany:

We could build a list containing the Country, Area/City, QR-Code, and number of Nodes using that channel and add it to the documentation.

What do you think?


This is a idee what i‘like and what i was say also in the past, there should be some channel what is default for join, first for test and meet other person in him area … this bring also the project forward, if a user start with this project, maybe he can found fast some other member, and feel, yes this work … for that case its need, only two channels what is fix programming … „Area“ and „Global“

If you come with the device in range, you get automatic this messages in this channel … and if someone make new friendships, they will create there privat channel …

And maybe in the APP will it be possible to create a channel and store and delete and small notiz for this channel … so you can qiuck join and leave and must not remember what was the privat channel.

A simple web service could keep a list of published geo centered channels.

Alternatively, if public or private channels could be identified over the radio link, the application layer could just keep a list of the public ones observed.

For example, bring up your radio for a while, and see what’s around you.


Good Idea. I did my first Meshtastic device a few days ago, and also I’m looking for public channels for example for test my device, and I found this thread. I don’t know, I’m very new with LoRa but I’m Android developer and ESP32 developer, maybe I could help to you with that, if you want.


Welcome @hpsaturn!

I believe all help is more than welcome. Just ask @geeksville for guidance. :slightly_smiling_face:

Most of the development discussions are on Slack.

@geeksville can you point me into a direction on how to generate the QR codes used by the app so I can generate them with another library? What is the exact format? Where can I look it up?

Sure! The QR code is just a special URL. The first part of the URL must start with:

The rest of the string is a base64 encoding of the “ChannelSettings” protobuf bytes. For an example implementation see the code used for the --qr option in the command line python tool.

    def channelURL(self):
        """The sharable URL that describes the current channel
        bytes = self.radioConfig.channel_settings.SerializeToString()
        s = base64.urlsafe_b64encode(bytes).decode('ascii')
        return f"{s}"

you can run it like this

meshtastic --qr
Connected to radio
Channel URL
< graphical qr code here>

Does that help? (this is hopefully documented in mesh.proto but it might not be :slight_smile: )

1 Like

btw - the android version of this method is a little bit smarter. Because (apparently - I recently learned this). QR codes are more compact for uppercase encodings. So it makes the first part of the URL uppercase (the ‘payload’ portion has to be mixed case of course because base64)

I wanted to bump this topic as I think it would help tremendously with testing purposes if there was a channel setting for “public” which would be a fixed channel url no matter what (think about channel 16 VHF). This would be great for areas like the bay area where people are living in different locations and would like to distance test (or just talk with other people without knowing what channel to be on). Could be used in variety of different applications such as backpacking where people don’t know each other’s channel codes but are trying to communicate.


I think the default channel settings could serve that purpose. In the latest versions of the android app on the channel screen there is now a button with a globe icon that says something like “Set to default”


Would the best practice be making the primary channel a meshtastic default unencrypted channel and then having a private/secondary encrypted channel for personal use for router nodes?

This way if anyone is roaming in an area there’s capability to communicate to all meshtastic users in an emergency?

besides encryption, other settings need to match in order to route traffic (frequency, bandwidth, etc, etc). so there is no “capability to communicate to all meshtastic users” by removing (or using the same) encryption alone.

also keep in mind multi-channel is still experimental.

1 Like

Thanks @AndreK I’ll try to test out the mutli channel feature.

1 Like

I tried creating a channel and generating the qr code but it just gives error

Error : Something happened

Please go to Android Usage for more information.

can whoever get this fixed asap and also create some test channels so ppl can just connect and test regardless of area or country please thanks! also the reporting bug feature in android app not working!

I made a public Channel for Southampton
Feel free to join and help me test it out


1 Like