Skip to content

Your cart is empty

Continue shopping

Have an account?

Log in to check out faster.

Your cart

Loading...

Estimated total

€0,00 EUR

Tax included and shipping and discounts calculated at checkout

NEW - CM/DM Filter for Analog Hotspot

  • New
  • Swag
  • HotSpot
  • Repeater
    • Build Your Own Repeater
    • ON0ORA
  • BalUn/UnUn
    • Balun/LineIsolator/Choke
    • Unun/Transformers
    • Lightning & Surge Protection
    • AC/DC Choke/LineIsolator
    • Grounding
    • Anti-Corrosion
  • Filters
    • VHF-UHF Filter
    • Line Filters
  • Antenna
    • HF Active RX Antenna
    • HF End Fed Wire Antenna
    • HF Verticals - V-Dipoles
    • HF Rigid Loops
    • HF Doublets - Inverted Vs
    • HF Stealth POTA/SOTA Antennas
    • UHF Antenna
    • VHF Antenna
    • Dualband VHF-UHF
    • Grounding
    • Masts
    • Guy Ropes & Accessories
    • GPS Antenna
    • Mobile Antenna
    • Handheld Antenna
    • ISM Antenna 433/868
    • Antenna Tools
    • Anti-Corrosion Lubricants
    • Dummy Load
  • Coax
    • Coaxial Seal
    • Coax Connectors
    • Panel Mount Connectors
    • Coax Adaptors
    • Coax Tools
    • Coax Cable
    • Coax Surge protection
    • Jumper - Patch cable
  • 19"
  • 13.8 V
    • DC-DC
    • AC-DC
    • Powerpole
    • 13.8 V Cable
  • PA
    • VHF Power Amplifiers
    • UHF Power Amplifiers
  • Parts
    • Ferrite
    • Pi
    • Routers
    • Enclosures
  • PCB
  • SDR
  • APRS
  • KB
    • Why we started RF.Guru
    • Mission Statement
    • Product Whitepapers
    • Knowledge Base
    • Transmit Antennas
    • Baluns and Ununs
    • Receive Antennas & Arrays
    • Technical Deep Dives
    • Debunking Myths
    • Transmission lines
    • Radio Interference
    • Grounding and safety
    • Ham Radio 101
    • Calculators
    • Ham Florida Man
    • Errata & Modern Context
    • The Scientists Who Built RF
    • %λΦ#@!Ω
  • ON6URE
    • on the road ...
    • collaborations ...
    • on4aow ...
    • on4pra ...
Log in

Country/region

  • Belgium EUR €
  • Germany EUR €
  • Italy EUR €
  • Sweden EUR €
  • Australia EUR €
  • Austria EUR €
  • Belgium EUR €
  • Bulgaria EUR €
  • Canada EUR €
  • Croatia EUR €
  • Czechia EUR €
  • Denmark EUR €
  • Estonia EUR €
  • Finland EUR €
  • France EUR €
  • Germany EUR €
  • Greece EUR €
  • Hungary EUR €
  • Ireland EUR €
  • Italy EUR €
  • Latvia EUR €
  • Lithuania EUR €
  • Luxembourg EUR €
  • Netherlands EUR €
  • New Zealand EUR €
  • Norway EUR €
  • Poland EUR €
  • Portugal EUR €
  • Romania EUR €
  • Slovakia EUR €
  • Slovenia EUR €
  • Spain EUR €
  • Sweden EUR €
  • Switzerland EUR €
  • United Kingdom EUR €
  • United States USD $
  • YouTube
RF.Guru Logo
  • New
  • Swag
  • HotSpot
  • Repeater
    • Build Your Own Repeater
    • ON0ORA
  • BalUn/UnUn
    • Balun/LineIsolator/Choke
    • Unun/Transformers
    • Lightning & Surge Protection
    • AC/DC Choke/LineIsolator
    • Grounding
    • Anti-Corrosion
  • Filters
    • VHF-UHF Filter
    • Line Filters
  • Antenna
    • HF Active RX Antenna
    • HF End Fed Wire Antenna
    • HF Verticals - V-Dipoles
    • HF Rigid Loops
    • HF Doublets - Inverted Vs
    • HF Stealth POTA/SOTA Antennas
    • UHF Antenna
    • VHF Antenna
    • Dualband VHF-UHF
    • Grounding
    • Masts
    • Guy Ropes & Accessories
    • GPS Antenna
    • Mobile Antenna
    • Handheld Antenna
    • ISM Antenna 433/868
    • Antenna Tools
    • Anti-Corrosion Lubricants
    • Dummy Load
  • Coax
    • Coaxial Seal
    • Coax Connectors
    • Panel Mount Connectors
    • Coax Adaptors
    • Coax Tools
    • Coax Cable
    • Coax Surge protection
    • Jumper - Patch cable
  • 19"
  • 13.8 V
    • DC-DC
    • AC-DC
    • Powerpole
    • 13.8 V Cable
  • PA
    • VHF Power Amplifiers
    • UHF Power Amplifiers
  • Parts
    • Ferrite
    • Pi
    • Routers
    • Enclosures
  • PCB
  • SDR
  • APRS
  • KB
    • Why we started RF.Guru
    • Mission Statement
    • Product Whitepapers
    • Knowledge Base
    • Transmit Antennas
    • Baluns and Ununs
    • Receive Antennas & Arrays
    • Technical Deep Dives
    • Debunking Myths
    • Transmission lines
    • Radio Interference
    • Grounding and safety
    • Ham Radio 101
    • Calculators
    • Ham Florida Man
    • Errata & Modern Context
    • The Scientists Who Built RF
    • %λΦ#@!Ω
  • ON6URE
    • on the road ...
    • collaborations ...
    • on4aow ...
    • on4pra ...
Log in Cart

MeshCore illegal by default

MeshCore is booming in Europe and the UK — deservedly. But the firmware ships with a default airtime budget of roughly 50%, while the EU/UK 868 MHz sub-band it runs on allows a maximum of 10%. Newer firmware lets you fix this with one command. Almost nobody does. Which means that, out of the box, most MeshCore nodes on this side of the Atlantic are operating outside the law — and most of their owners have no idea.

Let's start with a compliment, because it is deserved.

MeshCore is a genuinely elegant piece of firmware. It is fast, it is efficient, its routing is clever, and it has earned its explosive popularity across Europe and the UK.

Now the uncomfortable part.

Flash it, pick the EU/UK preset, power it up — and you are, in all likelihood, transmitting illegally.

Not because you are a bad person.

Not because MeshCore is a bad project.

Because of a single default setting that almost nobody knows exists.

Related reading: Tragedy of the Commons Licence-Free Is Not Rule-Free: PMR, ISM, CB and Mesh Rules

The number that matters: 50 versus 10

MeshCore's transmit behaviour is governed by an airtime budget. The firmware ships with that budget at its default value — which works out to roughly a 50% duty cycle.

In plain language: out of the box, a MeshCore node is allowed to spend up to half its time transmitting.

That default is perfectly reasonable where it was born. On the US 902–928 MHz band there is no fixed duty-cycle limit, so 50% is fine.

Europe and the UK are a different planet.

The 868 MHz sub-band that the EU/UK MeshCore presets live in (869.4–869.65 MHz) allows a maximum duty cycle of 10%. Most of the neighbouring 868 sub-bands are stricter still: 1%, or even 0.1%.

So the default setting permits five times the legal airtime budget — on the most generous sub-band available.

And here is the crucial legal mechanic, familiar to readers of our licence-free article: license-exempt operation is only lawful while the technical conditions are met. Duty cycle is one of those conditions. Exceed it and you are not "a mesh user bending a guideline". You are, legally speaking, transmitting without authorisation.

Illegal by default is not a rhetorical flourish. It is a factual description of the configuration state.

To be fair: newer firmware lets you fix it

Credit where credit is due.

Recent MeshCore firmware (v1.15.0 and later) implements duty-cycle limiting properly and exposes a clean command for it. One line at the CLI:

The one-line fix:

set dutycycle 10 — caps your node at a 10% duty cycle, the legal maximum for the EU/UK 869.4–869.65 MHz sub-band. After each transmission the firmware enforces a proportional silent period, keeping long-run airtime under the cap. If you operate in a stricter sub-band or jurisdiction, set it lower (set dutycycle 1 for the strictest EU requirements). On firmware older than v1.15.0: update first — the older airtime-factor mechanism is deprecated and easy to get wrong.

So the tools exist. The problem is not capability.

The problem is that compliance is opt-in.

The node does not ask. The flasher does not warn. The preset sets your frequency, bandwidth and spreading factor — and quietly leaves the duty cycle at 50%, waiting for you to know better.

And defaults are destiny. Decades of software experience say the same thing: the overwhelming majority of users never change a default they do not know exists. Why would they? The node works. Messages flow. The app says "sent". Nothing anywhere hints that the device is spending five times its legal airtime allowance.

Three kinds of operators, one shared problem

Walk through any EU or UK MeshCore community and you will meet three groups.

The unaware majority. They flashed via the webflasher, picked the regional preset like the guide said, gave the node a funny name, and joined the mesh. They have never heard of a duty cycle. They are breaking the law in complete good faith, which is a strange sentence to write but an accurate one.

The aware but dismissive. They know about the 10% limit. They consider it a suggestion. "The mesh works better without it." "Nobody checks anyway." "Everyone runs defaults." These are, word for word, the arguments that were losing on the CB band fifty years ago, and they have not improved with age.

The diligent few. They set their duty cycle, stretched their advert intervals, trimmed their hop counts, and put their contact info on their repeaters. They carry the compliance of the entire network on their shoulders — and they are outnumbered.

No blame lands on the first group. Very little machinery exists to inform them. But awareness has to start somewhere, and it might as well start with an article with an uncomfortable title.

Why this matters beyond your own node

We wrote a whole piece on the tragedy of the commons, so here is the short version.

A band full of 50% nodes does not just break rules. It breaks the mesh. Collisions climb, retries multiply, reliability evaporates — the network suffocates on its own traffic.

It also paints a target. Regulators such as the BIPT in Belgium or Ofcom in the UK enforce license-exempt bands mostly on complaints — until structural abuse gives them a reason not to. A node transmitting at five times its legal budget is trivial to locate, and "the firmware shipped that way" is not a recognised legal defence. Equipment seizure and administrative fines are.

And if the abuse starts disrupting the band's other tenants — utility meters, social alarms, building automation — the response becomes legislative: locked firmware, hardcoded limits, customs filtering uncertified boards. The bill lands on everyone, including the diligent few.

An entire hobby, made more expensive and more locked-down, by a default nobody changed.

The five-minute compliance check

Make your node legal today:

1. Update to firmware v1.15.0 or newer.
2. Run set dutycycle 10 (or stricter, depending on your sub-band and national rules — when in doubt, check your regulator's interface requirements).
3. Stretch your advert intervals: zero-hop adverts hourly at most, flood adverts as rare as your mesh can tolerate.
4. Keep hop counts modest — a flood that crosses half a country is airtime someone else paid for.
5. Put your contact info on unattended repeaters, so a problem node can be reached instead of reported.

Five minutes. That is the entire cost of moving from "illegal by default" to "legal by choice".

The structural fix: take MeshCore to the amateur bands

But let's be honest about the limits of articles like this one.

Awareness campaigns on an anonymous, license-exempt band are pushing water uphill. There is no identification, no coordination, no accountability — and anyone can key up, including people with distinctly less noble intentions. You cannot phone a node that refuses to say who it is.

The amateur radio service has none of these problems. Every transmission carries a callsign. Band plans are agreed and coordinated through the IARU. Misbehaviour gets noticed, identified and corrected — by culture first, by the regulator only when culture fails. It is a commons with a working government.

That is why we have published an open RFC for running MeshCore on amateur allocations, IARU Region 1 compliant:

github.com/Guru-RF/meshcore-rfc-iaru-r1

It covers the things a ham-based mesh must get right: callsign identification, coordinated frequency choices within the band plan, configuration discipline, and staying inside the amateur service's rules — including the encryption restrictions that apply there.

It is an RFC in the honest sense: a request for comments. If you are a licensed amateur and MeshCore interests you, read it, open an issue, send a pull request, tear a paragraph apart. The goal is a mesh that grows because it is well-governed, not despite being ungoverned.

A mesh with callsigns is a mesh with a future.

Closing thought

MeshCore is not the villain of this story. Neither are its users.

The villain is a silent default — a single number, set for a continent with no duty-cycle limits, quietly carried across an ocean to a continent with strict ones.

The fix is one command. The awareness is one article. The long-term answer is one RFC away.

Check your node tonight. If you have never typed set dutycycle, you already know what it is set to.

Mini-FAQ

  • Is MeshCore itself illegal in the EU or UK? No. The firmware is legal to write, distribute and flash. What is non-compliant is operating a node at the default ~50% duty cycle on the EU/UK 868 MHz sub-band, where the legal maximum is 10%.
  • What exactly is the default? The firmware ships with its airtime budget at a value corresponding to roughly a 50% duty cycle — appropriate for the US 902–928 MHz band, where no fixed limit applies, but five times the EU/UK limit.
  • Does choosing the EU/UK preset fix it? No. The regional preset sets frequency, bandwidth and spreading factor. It does not guarantee a legal duty cycle — check and set it yourself.
  • How do I make my node compliant? Update to firmware v1.15.0 or newer and run set dutycycle 10 (or stricter, depending on your sub-band and national rules).
  • What is the ham-based alternative? Running MeshCore on amateur allocations under amateur rules, with callsign identification and IARU Region 1 band-plan compliance. Our open RFC lives at github.com/Guru-RF/meshcore-rfc-iaru-r1 — comments and contributions welcome.

Interested in more technical content? Subscribe to our updates for in-depth RF articles and lab notes.

Questions or experiences to share? Feel free to contact RF.Guru for practical RF and antenna support.

Written by Joeri Van Dooren, ON6URE – RF engineer, antenna designer and founder of RF.Guru, specialising in high-performance HF/VHF antennas and RF components.

Subscribe here to receive updates on our latest product launches

  • YouTube
Payment methods
  • Bancontact
  • iDEAL Wero
  • Klarna
  • Maestro
  • Mastercard
  • MobilePay
  • PayPal
  • Visa
© 2026, RF Guru Powered by Shopify
  • Refund policy
  • Privacy policy
  • Terms of service
  • Contact information
  • News
  • Guru's Lab
  • Press
  • DXpeditions
  • Fairs & Exhibitions
  • Order Withdrawal
  • Choosing a selection results in a full page refresh.
  • Opens in a new window.
Purchase options
Select a purchase option to pre order this product
Countdown header
Countdown message


DAYS
:
HRS
:
MINS
:
SECS