Skip to content

Regions

By default MeshCore repeaters will repeat all messages they hear, regardless of the senders intention. Regions are a way for a sender to tag a message (or packet), with the intended region the message meant for. Then only repeaters that have that region configured, and set to repeat, will relay the message. The benefit of this is that automated tools like MeshMapper can be used safely to map the Island of Ireland's coverage and know that we aren't spamming our neighbors with our traffic, whose repeaters will ignore that traffic.

By scoping as much traffic as we can to the regions we are operating in (ioi being the default for the entire Island of Ireland), that will minimize unintentional crosstalk and keep the mesh capable of supporting more users. As MeshCore evolves as a technology it may become easier for new users to identify what regions are available in their area and this adoption will become easier.

FAQ

Why do these not match the ones listed by LocalMesh?

The LocalMesh regions weren't made with consideration of the people living on the Island of Ireland, and that they would be predominately communicating with each other across international boundaries. The current implementation of Regions means people have to pick one scope and only one scope for their message when sending, so someone in Belfast wanting to send messages that could be heard reliably in Ballycastle and Tipperary could only use the * scope, because LocalMesh's hierarchy does not include a scope that would transmit to both Northern Ireland and the Republic of Ireland.

The Island of Ireland was decided as the least worst option, with the name of ioi, to recognize the geographic boundary that all of us volunteering our time to operate the mesh are working with. Since we are more closely coordinating our efforts on the Island than across the Irish Sea, this makes sense. If we can come to an agreement with the LocalMesh team for a region for us to use that encompasses the Islands of Great Britain and Ireland as a scope name, if * is considered no longer appropriate, than we will also promote that.

Do I need to set a scope for my messages?

No, you do not today. We ask people to configure scopes during Repeater Setup so they are available. As of this writing (2026-04-06, MeshCore FW 1.14.1), Region Discoverability is a bit difficult - you can't tell which someone sending you a message is scoped for, and like MultiByte support, not every repeater and node across the Island has been updated to the point for us to say it is 100% ready to go.

We do ask that any Bots and other automation are configured to match the regions we list below, just to minimize the traffic those automated systems generate. That frees up airtime for new users to send messages and chat on the mesh (and learn about regions), instead of having such a poor experience they turn off their devices thinking that its either too silent or too unreliable to be worth joining the mesh.

Why these scopes?

This may seem reductive for those who live here on the Island of Ireland, but since this is read by people aren't: the history of the Island of Ireland is a complicated one. We could not find names in any one ISO document that satisfied all requirements, so ioi was borne. After that it was following IATA codes since that was how MeshMapper, our primary tool for laying out repeaters, used for naming regions. We then decided to use provinces as the boundary lines for the regions, since those are familiar for us here on the island, and predate the divisions that are reflected in ISO.

Scopes:

ioi: Island of Ireland, the parent for the following: - bhd: Ulster, from Belfast City Airport - snn: Munster, from Shannon International Airport - dub: Leinster, from Dublin Internation Airpot - noc: Connacht, from Ireland West Airport (Formerly Knock Airport)

the closest alternative to iata for the province names could be the ISO_3166-2:IE province IDs, but having ie is the opposite side of the problem that the LocalMesh solution that lists six of the nine counties of Ulster as GB-NIR

I would like to discuss this more

Please consider joining the Discord or email the website admin to be invited to the mailing list if you are not a discord person. We ask you follow our Code of Conduct in these spaces.

Adding regions to a repeater

Regions are now required for MeshMapper Wardriving to map your repeater

Region allows you to scope a message sent to a channel (public or private) to only be relayed by other repeaters that have that region on their list. If you follow the below scoping, one could set a region for the channel #norniron on their companion to be ioi and then messages will only be relayed by repeaters that have ioi set to be relayed. A repeater in Scotland that hears a message scoped for ioi won't relay the message.

Repeaters should at minimum allow the region ioi and the home province (bhd,dub,noc,snn) the repeater is in. You can optionally allow all provinces if you wish. MeshMapper is currently restricted so it will broadcast for the ioi Region, but as the mesh grows, active wardriving sessions will be restricted to the regions.

In order to add regions support to a repeater, and for it to be nested, it needs to be done via the cli. This is the suggested commands to crete the hierarchy that might be useful for the island of ireland, robot region is just a hypothetical 'do you want your repeater to relay bot messages'.

The commands everyone should use to setup their repeater are below:

region put ioi
region put bhd ioi
region put snn ioi
region put dub ioi
region put noc ioi
region put robot
region allowf ioi
region save
If the repeater is in Ulster:
region allowf bhd
region home bhd
Leinster:
region allowf dub
region home dub
Connacht:
region allowf noc
region home noc
Munster:
region allowf snn
region home snn
If the repeater is serving multiple regions, such as a hilltop repeater, it should allowf for the regions it is serving, not just where it is located. If in doubt, allowf each region and ask other admins for suggestions

Finally:

region save
region
region list allowed

You can see the structure is: - region put toplevel region : creates a top level region - region put nested region parent region : nests a region under another region (called parent here)

Then typing region again will list the regions, the F indicates that it will allow relaying messages for that region, * is anything without a region set. More details on region commands here.

* F
 ioi F
  bhd^ F # The ^ indicates the repeaters home region
  dub
  noc
  snn
 robot

region save will commit the changes. ** DO NOT REMOVE F from * AT THIS TIME **

You can edit which regions are enabled (which the repeater will relay messages scoped for) in the meshcore UI much easier than you can in the CLI after you've made these changes here.

Example screenshot