
TollGate v0.2.0: New Captive Portal and Enhanced Payments
TollGate, 10/9/2025, 13 engagements
Discussions around deploying and managing TollGates Installation guide: https://r2a.primal.net/uploads2/e/e4/ec/ee4ec8d9eb9692dabbd4ed1b0bce3c101d70780b94c28a99fb9f4adfdee26921.mp4

TollGate, 10/9/2025, 13 engagements
We're starting!
Loading quoted postโฆ
tollgate-module-basic-go v0.6.0 โ Cashu-paid WiFi that doesn't trust your MAC
The go implementation has seen, 250 commits since v0.5.0 โ and there are multiple TollGate clients now speaking the protocol.
๐ Identity is the TCP socket. No more trusting client-claimed MACs โ forged identities can't borrow your session, and MAC rotation can't reset the meter or stretch paid time.
๐ฐ Money safety. A payment refused during a mint outage never burns your token. Critical Cashu races fixed (swap counter, keyset rotation, V2 swap crash). Payment panics contained instead of killed.
๐ชช One key, one identity. Unified NIP-06 mnemonic recovery: npub, CGNAT address, per-interface MACs, root and management-WiFi passwords โ all derived from 12 words.
๐ Portal that just works. Decoupled from nodogsplash, reachable pre-auth, smooth post-payment redirect.
โถ๏ธ Install (2 min): https://blossom2.orangesync.tech/b685203b9744d67e175ed36093482a64ded2669721e90847555522b17ff49698.mp4 โถ๏ธ Captive portal + payment: https://blossom2.orangesync.tech/1961106d3a4e525b64c3155a9bc9062f5bd5f04239f90ff5ad45642fb736061f.mp4 โถ๏ธ Config UI: https://blossom2.orangesync.tech/b03c4017e19cc592d9d71de1d62877820b9b6947b8767df6f1c801ad227a692d.mp4
Try it on your own router:
bash <(curl -fsSL https://raw.githubusercontent.com/OpenTollGate/tollgate-installer/main/install-and-test.sh)
๐ Releases without GitHub runners. Build + release pipeline runs on Nostr CI. Reproducible builds. VM acceptance lane + Docker cloud-lab (live mint zoo, keyset rotation, fee mints).
Also: SSRF hardening, LAN-only API firewall, RFC 1918 isolation, spending-condition token rejection.
๐ฆ Download: https://github.com/OpenTollGate/tollgate-module-basic-go/releases/tag/v0.6.0
#bitcoin #cashu #nostr #opensource
10/21/2026, 11 engagements
Next Community Call: Wednesday, October 21!
Join us for our monthly community call to discuss the latest developments in the TollGate project and the future of decentralized internet access.
This is a great opportunity to connect with the core team and other community members, ask questions, and share your ideas.
Date: Wednesday, October 21, 2026
Time:
What we have been up to:
We will be discussing:
The Call:
10/19/2026, 8 engagements
Next Community Call Today!
Join us for our monthly community call to discuss the latest developments in the TollGate project and the future of decentralized internet access.
This is a great opportunity to connect with the core team and other community members, ask questions, and share your ideas.
Date: Today, July 21, 2026
Time:
What we have been up to:
v0.5.0 released! The Go backend went through three alpha cycles and shipped stable on July 3rd. Major security hardening: SSRF protection, DoS limits on all reads, RFC 1918 isolation blocking WiFi from upstream LAN, config file lockdown. New NIP-06 identity system derives IPv4, MAC, and BIP39 seed from merchant key. Lightning reliability fixes include quote persistence to disk, exponential backoff, and fuzzy mint URL matching.
tollgate-rs Rust backend built from scratch into a working mesh payment routing system with metered forwarding, peer-to-peer balance accounting, bidirectional peering, drift detection, and a top-like TUI monitor. Docs for internet exit, GRE tunneling, and mesh architecture merged.
ESP32 firmware now supports B2B ehash mining settlement with board-to-board mining through TollGate, dual-wallet config, and faucet clients. ESP32-C3 compatibility advancing for balloon deployments with local relay support re-enabled.
TollGate Android app: full Cashu CDK wallet migration, WiFi-based TollGate discovery with auto-connect, gateway protocol on port 2121, and a complete pay flow with multi-mint auto-rebalance.
LR2021 throughput reached 1500 kbps. Schematics completed with validated pin connections. GPS-enabled range testing firmware ready for outdoor tests.
microFIPS mesh now has ESP-NOW transport compiling and flashing on ESP32-C3, Noise IK protocol with golden vector tests, and an LR2021 SPI driver with FLRC framing.
Community highlight: a working MVP called fips-tollgate has been built, combining FIPS mesh and TollGate to let gateway operators charge for access to a FIPS mesh network using Cashu. Source on ngit.
Captive portal polished with balance dashboard, DLEQ keyset rotation handling, session-expiry heartbeat, and graceful degradation for missing browser APIs.
Protocol spec advanced: relay/bootstrap mode for multi-hop token chains, and multiple metrics (time + data) allowed simultaneously.
We will be discussing:
The Call:
7/21/2026, 5 engagements
TollGate v0.5.0 โ stable release. Resilience & hardening.
Mint failures no longer block purchases. Merchant degraded mode with auto-recovery. Upstream Wi-Fi manager for reseller chains. Portal HTTPS + Lightning checkout. Schema-driven config with JSON CLI. .apk for OpenWrt 25.x + .ipk for 24.10.
Install: https://releases.tollgate.me Release notes: https://github.com/OpenTollGate/tollgate-module-basic-go/releases/tag/v0.5.0
New: TollGate Review Club, inspired by Bitcoin Review Club. Help us test alphas and validate stable releases. Join: https://signal.group/#CjQKIBMfNzyL5IXRRG_R6JVl3rFEjDsN7x6ITt_CoFjjePC7EhCg8VnskJZJRNRSNKQ-GR4i
#tollgate #openwrt #cashu #lightning #captiveportal #reviewclub
7/3/2026, 16 engagements
Next Community Call Sunday the 21st!
Join us for our monthly community call to discuss the latest developments in the TollGate project and the future of decentralized internet access.
This is a great opportunity to connect with the core team and other community members, ask questions, and share your ideas.
Date: Thursday, May 21, 2026
Time:
What we have been up to:
We will be discussing:
The Call:
6/20/2026, 6 engagements
Find TollGate at BitDevs Oslo this afternoon and get it installed on one of the second hand routers someone is going to bring and keep the router to bring back home and to deploy
6/3/2026, 7 engagements
Next Community Call Thursday the 21st!
Join us for our monthly community call to discuss the latest developments in the TollGate project and the future of decentralized internet access.
This is a great opportunity to connect with the core team and other community members, ask questions, and share your ideas.
Date: Thursday, May 21, 2026
Time:
What we have been up to:
We will be discussing:
The Call:
5/21/2026, 3 engagements
Starting in 1 hour!
Loading quoted postโฆ
Next Community Call Tuesday the 21st!
Join us for our monthly community call to discuss the latest developments in the TollGate project and the future of decentralized internet access.
This is a great opportunity to connect with the core team and other community members, ask questions, and share your ideas.
Date: Tuesday, April 21, 2026
Time:
We'll be discussing:
The Call:
4/20/2026, 8 engagements
Next Community Call Saturday the 21st!
Join us for our monthly community call to discuss the latest developments in the TollGate project and the future of decentralized internet access.
This is a great opportunity to connect with the core team and other community members, ask questions, and share your ideas.
Date: Sat, March 21, 2025
Time:
We'll be discussing:
The Call:
3/19/2026, 9 engagements
Next Community Call Saturday the 21st!
Join us for our monthly community call to discuss the latest developments in the TollGate project and the future of decentralized internet access.
This is a great opportunity to connect with the core team and other community members, ask questions, and share your ideas.
Date: Sat, February 21, 2025
Time:
We'll be discussing:
The Call:
2/19/2026, 7 engagements
Next Community Call Wednestday the 21st!
Join us for our monthly community call to discuss the latest developments in the TollGate project and the future of decentralized internet access.
This is a great opportunity to connect with the core team and other community members, ask questions, and share your ideas.
Date: Wednesday, January 21, 2025
Time:
We'll be discussing:
The Call:
1/17/2026, 6 engagements
Are you already in the TollGate deployment group? This is currently the best place to ask questions about how to run a TollGate. People who have already set up a TollGate are quick to respond:
https://signal.group/#CjQKIFUj7wFVxIbHjujYAWGTKeMIvi1DdVYk2Zem3uNlmIwWEhAiFlw7arUvnitB1V0_cTaA
1/10/2026, 1 engagement
Non KYC internet at 11582 meter altitude!
Loading quoted postโฆ
12/30/2025, 3 engagements
Next Community Call Sunday 21st!
Join us for our monthly community call to discuss the latest developments in the TollGate project and the future of decentralized internet access.
This is a great opportunity to connect with the core team and other community members, ask questions, and share your ideas.
Date: Sunday, December 21, 2025
Time:
We'll be discussing:
The Call:
12/20/2025, 12 engagements
Join us for our monthly community call to discuss the latest developments in the TollGate project and the future of decentralized internet access.
This is a great opportunity to connect with the core team and other community members, ask questions, and share your ideas.
Date: Friday, November 21, 2025
Time:
We'll be discussing:
The call will be held on hivetalk:
https://honey.hivetalk.org/meet/wdnzvx5em
Use this link to check in your local time zone:
Let's keep building a free and open internet for everyone.
11/18/2025, 11 engagements
10/23/2025, 1 engagement
Community Call
Join us for our first community call to discuss the project, ask questions, and share your feedback!
When: 21:00 on Cobrador Island Tuesday, October 21, 2025, at 21:00 (GMT+8)
Find your time zone:
Audio/Video: https://honey.hivetalk.org/meet/wdnzvx5em
Text-Based Q&A: Follow and use the hashtag #wdnzvx5em on Nostr to ask questions. We will monitor the hashtag during the call to answer your questions and will publish a transcription there afterwards.
Loading quoted postโฆ
10/20/2025, 7 engagements
Community Call Join us for our first community call to discuss the project, ask questions, and share your feedback! When: Tuesday, October 21, 2025, at 21:00 (GMT+8) Audio/Video: HiveTalk Room Text-Based Q&A: Follow and use the hashtag #wdnzvx5em on Nostr to ask questions. We will monitor the hashtag during the call to answer your questions and will publish a transcription there afterwards.
Our new release has a sleek new design and it supports automatic router to router payments. Feel free to turn on reseller mode in /etc/tollgate/config.json if you want to be one of the brave beta testers. Thanks to everyone who contributed!
Loading quoted postโฆ
10/9/2025, 22 engagements
GM, see you in Riga...?


7/19/2025, 22 engagements
TollGate is further decentralizing.
This npub is now managed by c03rad0r, c03rad0r and c03rad0r.
๐ข๐ข We have a new release of our tollgate implementation
Still plenty of work to be done, but please do try it out if your a brave and #reckless soul who wants to bridge the past and the future.
Your issues, your pull requests and your code review are most welcome!
For installing tollgate package on routers:
https://github.com/OpenTollGate/tollgate-module-basic-go/releases/tag/v0.0.3
OpenWRT image containing TollGate in-case you want to start from a clean slate. Any e-cash that's still stored on your router's filesystem gets deleted when installing the image:
https://github.com/OpenTollGate/tollgate-os/releases/tag/v0.0.3
Running TollGate
Oslo
#cobrador https://image.nostr.build/41a01a9ec7982c46327909185286fa6f6deafbcd6ea47b0a26d1afb9c2d69a48.jpg

Running TollGate
Loading quoted postโฆ
5/27/2025, 8 engagements
Come and meet us at one of the conferences this summer!
Loading quoted postโฆ
5/11/2025, 2 engagements
Bitcoin is the routing algorithm.
Loading quoted postโฆ
4/10/2025, 1 engagement
TollGate has a beautiful website now thanks to
!
The new modular nostr based architecture is also progressing rapidly thanks to
and
.
Stay tuned for a big release with an app that handles the interaction with TollGates on your behalf and a modular nostr based architecture that runs on your TollGate.
2/27/2025, 52 engagements
The mobile app that
and
made is a huge enabler for the user, because the user can now buy internet granularly and frequently, which means that they can roam between routers without losing any credit and without needing to interact with captive portals manually!
This is a huge win! Thanks guys, your amazing ๐งก๐
Loading quoted postโฆ
1/31/2025, 1 engagement
TollGate is a set of tools that enables WiFi routers to accept Bitcoin payments for internet access. This allows anyone with suitable hardware and an internet gateway to operate as an internet service provider.
Nostr (Notes and Other Stuff Transmitted by Relays) is a simple yet powerful decentralised protocol that enables seamless JSON based communication between public keys through relay servers. In the context of TollGate, nostr serves as the perfect foundation for handling WiFi access payments by eliminating the need for traditional captive portals and providing instant, reliable connections through websocket technology. The protocol's relay-based architecture reduces common firewall issues while offering standardised payment methods. Its flexible nature means components can be deployed almost anywhere with minimal configuration, making it ideal for TollGate operators to set up and developers to maintain their services.
A TollGate must have at least two network interfaces. One interface connects to an internet gateway, while the other interface acts as a WiFi access point for users or other TollGates. Each TollGate runs its own DHCP server with a unique address range to avoid collisions with its gateway or its clients (who could also be running a DHCP server). Hence, each TollGate is a stand-alone system from a networking perspective. Finally, each TollGate has gate-keeping logic that manages firewall rules for allowing clients to access the internet gateway once they have paid and to cut them off again when their session ends.
Currently we are targeting GL-AR300m, GL-MT300 and GL-MT600 because they come with uboot for system recovery and they support OpenWRT out of the box.
Previously we used WiFi captive portals like nodogsplash and OpenNDS for managing access to the internet gateway. These captive portals allowed us to quickly build a proof of concept. However, both captive portals came with severe UX and maintainability limitations - see limitations of captive portals.
A key benefit of building on nostr is that services can generate their own public key based identity (npub) in order to send and receive json content from other services as long as they have an outbound internet connection that can connect to public IP addresses. Nostr abstracts away the networking layer entirely, so developers don't need to think about things like firewalls, IP-addresses, ports and network boundaries.
Thanks to recent success that @origami74 had in running a nostr relay and a client on the GL-AR300m, we are now able to build in ways that we could only have dreamt of before.
This figure illustrates the modules that TollGate is now comprised of:

And this sequence diagram illustrates the interaction between the services:

TollGate is now comprised of three main types of services and a relay:
MAC address and npub (for privacy), connects to the WiFi access point and submits a payment event if required.nostr wrapper around a CLI tool called ndsctl for managing user sessions in captive portals. Thanks to the fact that the valve now has an npub, it can be controlled via events that are issued by the merchant service.payment events that customers issued and it issues events that the valve responds to. Merchants can be light weight and fit on the router if they outsource the e-cash redemption logic to third party APIs. However, thanks to nostr, the merchants don't strictly need to run on the router.Now that merchants are controlling valves via nostr events, it is perfectly fine for the merchant to be a more complex software bundle with an e-cash wallet and lightning support on an x86 machine. The merchant can just issue nostr events that control the valve irrespective of how the network connecting the x86 machine with the router looks. Having the ability to shuffle services around between devices like this enables TollGate contributors to create value with the skill sets that they already have.
The following table provides an overview of the order in which we hope to target various devices for each of TollGate's services:
| Module | Low hanging fruits | Mid term targets | Long term targets |
|---|---|---|---|
| Crows Nest | Router, Mobile | x86, armhf | IoT |
| Valve | Router | x86, armhf | mobile |
| Full Merchant | x86, armhf | router | mobile |
| Legacy Merchant | router | - | - |
Routers need the ability to buy from other routers so that the network can grow outwards from the gateway. Hence, routers need a crows nest for TollGate based networks to scale. Previously, users interacted with the WiFi captive portals manually and they still can if they like, but it isn't recommended (see section crows nest vs captive portal).
Users who own a TollGate can have the WiFi UX that they are already used to because they can connect to their own device using a WiFi password like they already do with their home router. They are not making any compromises since they are authenticating their devices on their own TollGate. The crows nest of their TollGate now purchases internet on their behalf without their client devices needing to know anything about TollGate.
Requiring that users own a router to get the full TollGate experience could hinder adoption. Sure, they can paste e-cash into the captive portal manually or with a script, but the UX depends on their client device and they have all the down sides of not making granular payments. Hence, users who want good UX without owning a TollGate would benefit from having the ability to install a crows nest on their client devices (mobile and x86) for more granular and reliable data purchases.
Each TollGate needs to have a valve in order to manage access to the internet gateway. The valve runs on the router since that's currently our gate-keeping device. However, ndsctl seems to already have debian support so turning an x86 or armhf machine into a TollGate might just be a question of getting the network interfaces and configurations under control on debian.
Currently there isn't a clear line between ndsctl (which we rely on for gate-keeping) and the captive portal which brings a lot of complexity to TollGate. Hopefully the valve becomes more of a stand alone solution rather than a wrapper around part of a captive portal in future (see section captive portal).
The "legacy merchant" is what we have been using so far. Its just a shell script that runs on the router and submits incoming e-cash notes to a 3rd party API that redeems the notes over lightning and returns a HTTP response informing the TollGate whether the payment was redeemed successfully. This worked since day 1 of TollGate thanks to the robust and accessible cashu ecosystem and the fact that no cryptographic libraries or wallets need to run on the router. However, it meant that TollGate's feature set depended on the APIs of cashu developers who are also busy.
Now that TollGate has full nostr support, operators can easily run their own e-cash wallet, lightning node and gateway selection business logic on an x86 machine and continue to interact with other components of TollGate as if this complex software bundle was running on the router. Clearly this model is more self sovereign and a faster route to building robust TollGates. We can still consider moving (part of) the merchant onto the router for more powerful routers or for x86/armhf based TollGates.
While a captive portal remains valuable as an on-boarding tool for first-time users, the crows nest enables seamless WiFi access. We believe this approach will eventually make the traditional captive portal experience obsolete for regular users. More detailed information about the issues we faced with captive portals and the solutions we already considered can be found here.
Huge thanks to
for making nostr so accessible for TollGate!
1/13/2025, 31 engagements
Wouldn't it be great if you could just walk into a conference and your phone starts streaming e-cash to the routers for faster and cheaper non KYC internet?
What are the best conferences for demoing TollGate in 2025?
#asknostr
Your welcome to join this group for support with TollGate deployment:
https://signal.group/#CjQKIFUj7wFVxIbHjujYAWGTKeMIvi1DdVYk2Zem3uNlmIwWEhAiFlw7arUvnitB1V0_cTaA
TollGate has a landing page for onboarding potential contributors now:
https://npub1suw0zfxerywd4zku4gjsjde22zhzye9dl2hsll6s3z2qap75p78s66lkhp.nsite.orangesync.tech/
10/28/2024, 3 engagements
One sold, two to go :)
This needs to be fixed https://image.nostr.build/18aa1e043c2b2caa8818e7053a82d2587c4644231378c0e6f7cec5b185fe68a6.jpg



6/21/2024, 1 engagement