Close
0%
0%

GRIDNET — Powerline Mesh Terminal

Open hardware mesh terminal that runs over power lines. No internet. No GSM. No servers. Works during blackouts.

Public Chat
Similar projects worth following
GRIDNET is an open hardware mesh communication terminal that uses existing power line infrastructure as its transmission medium. No internet, no cell towers, no central servers. When grid power fails, an onboard inverter keeps the network alive on the wire. Works during disasters, during blackouts, during anything.

GRIDNET — Communication That Works When Everything Else Fails

What If Your Power Outlet Was Also Your Network?

Every year, millions of people get cut off from communication. Earthquakes. Floods. Major infrastructure failures. The internet goes down. Cell towers go down. People can't reach their neighbors one block away.

But in most of these scenarios, one thing survives: the physical power line infrastructure. The wires are still there.

GRIDNET turns that infrastructure into a communication network.

It's an open hardware mesh terminal that sends messages over existing power lines using PLC (Power Line Communication) technology. No internet. No cell towers. No central servers. No accounts. And when the grid itself goes down, an onboard inverter keeps the signal alive on the wire.

How It Works

GRIDNET operates on three communication channels, automatically switching based on conditions:

1. Powerline (Normal Mode) The ST7580 PLC SoC injects OFDM signals onto the power line in the CENELEC EN50065 A-band (9–148 kHz). Every device acts as a repeater. Messages propagate across the neighborhood through your building transformer and beyond.

2. Inverter Mode (Grid Failure) When grid power fails, the onboard inverter circuit injects 24V AC onto the wire — just enough for PLC signaling, safe for all connected equipment. A master selection protocol ensures only one device injects at a time, preventing voltage conflicts.

3. Wi-Fi Mesh Fallback If the physical wire is damaged, the ESP32-C3 automatically activates Wi-Fi mesh mode. The separate PLC adapter also connects to the terminal wirelessly — so you can use the terminal anywhere in your home without cables.

Hardware Overview

The system has two units:

Terminal — ThinkPad-inspired clamshell form factor.

  • GD32VF103 processor (RISC-V, 108MHz)
  • ESP32-C3 (Wi-Fi mesh + Bluetooth 5.0 LE)
  • 5.0" STN LCD, 800×480, amber backlight
  • 40-key mechanical keyboard (Kailh LP) with amber backlight and red TrackPoint
  • 4×4 numeric keypad + 4 programmable macro keys
  • Built-in speaker + microSD slot
  • 8000mAh battery, ~6 days active use
  • 260×160×28mm, ~680g

PLC Adapter — separate compact unit that plugs directly into any wall outlet. Connects to the terminal over Wi-Fi. Replaceable independently if it fails.

Prototype BOM: ~$112 USD

A Platform, Not Just a Device

Users write and share applications in a sandboxed Forth VM. Apps are distributed peer-to-peer over the network — like the BBS days.

A neighborhood shop can write its own order system. Two neighbors can play a turn-based strategy game. Someone can broadcast an emergency alert. All without internet, all without a server, all running locally on a 32KB-RAM microcontroller.

Here's a neighborhood market app in ~15 lines of Forth:

: HEADER  0 0 " ╔═══════════════╗" WRITE  0 1 " ║  CORNER SHOP  ║" WRITE  0 2 " ╚═══════════════╝" WRITE ;

: ORDER  HEADER  0 4 " 1. Bread  2. Milk" WRITE  KEY? SEND-MSG ;

: MAIN BEGIN ORDER 1000 WAIT AGAIN ;
MAIN

Safety First

GRIDNET's 24V AC injection is safe for all connected equipment and compliant with CENELEC EN50065:

  • Household devices operate at 230V / 50Hz — 24V is irrelevant to their power circuits
  • PLC signals at 9–148 kHz are naturally filtered by all consumer electronics
  • Max injected current: 100mA (household breakers trip at 16A)
  • 24V AC is below the 50V SELV threshold per IEC 60479 — safe for humans
  • Galvanic isolation via transformer is mandatory and non-negotiable

This is the same principle HomePlug adapters have been using for 20+ years in millions of homes.

Full analysis: docs/electrical-safety.md

Project Status

Design stage is complete. All documentation, hardware architecture, protocol stack, and software design are published on GitHub.

✅ Dual-board hardware architecture (PLC/Power + Main Board) ✅ Full bill of materials and PCB layout plan ✅ Complete communication protocol stack (framing, mesh routing, ACK, store-forward) ✅ Inverter master protocol (prevents...

Read more »

bom.md.pdf

Adobe Portable Document Format - 80.17 kB - 04/21/2026 at 18:59

Preview

  • The Inverter Master Problem

    Yaşar Satır05/02/2026 at 17:48 0 comments

    Log 2: The Inverter Master Problem

    Published: May 2026

    When I first sketched out GRIDNET's "keep talking when the grid is dead" feature, I thought it would be the simplest part of the project. Just put an inverter on every device, and when the power goes out, they all start injecting AC onto the wire to keep PLC signaling alive.

    I was wrong. It took me about ten minutes of thinking through it before I realized I had walked into a much bigger problem than I expected.

    The Naive Design

    Here's what I originally drew:

    Grid power lost → every device starts injecting 24V AC → PLC keeps working
    

    Clean. Simple. Wrong.

    The problem hits you the moment you imagine more than one device on the same wire. If your terminal is injecting 24V at one phase, and your neighbor's terminal is injecting 24V at a slightly different phase, the two signals don't add up — they fight each other.

    Two AC sources on the same wire is the kind of thing electrical engineers normally try very hard to prevent, not encourage. Best case, the signals cancel and PLC stops working. Worst case, you get circulating currents flowing between the inverters, the coupling transformers heat up, and something eventually gives out.

    I needed exactly one device to be the inverter at any given time. But which one? And what happens when that one runs out of battery?

    What I Couldn't Do

    Some obvious approaches were off the table:

    Pre-assigned master. I can't ship a device with a fixed "you are the master" flag, because that device might not be plugged in, might be broken, might not exist in this particular building. The system has to work with whatever devices happen to be present.

    Central coordinator. This is GRIDNET. There is no central anything. The whole point is that it works when no central anything works.

    Manual selection. Asking the user to pick which device should be the inverter during an earthquake is not a serious answer.

    The protocol had to figure it out by itself, with no prior coordination, in the dark, possibly underwater. It needed to be:

    • Fully decentralized
    • Tolerant of any device failing or running out of battery at any time
    • Resistant to a "split brain" where two devices both think they're the master
    • Fast enough that the network feels alive, not dead

    The Solution: Listen, Then Speak

    The protocol I ended up with is built on a single rule that turns out to solve almost everything:

    The lowest-address active device is the master. Everyone else is silent.

    Here's what each device does when grid power fails:

    Grid power lost  ↓
    Wait 2 seconds (let the dust settle)  ↓
    Listen on the wire — is there 24V AC there already?  ├── YES → Someone else is the master. Stay silent. Just receive.  └── NO  → Become master. Start injecting.
    

    The 2-second delay matters. It gives the lowest-address device time to assert itself before higher-address devices even consider the question. By the time you check, if you're not the lowest, you'll hear the master and stay silent.

    Keeping It Alive

    The master broadcasts a small packet called MASTER_ALIVE every 10 seconds. It contains its address, sequence number, injected voltage, and battery level.

    If 30 seconds pass without hearing one — three missed heartbeats — the slaves know the master is gone. They run the same selection logic again, and the new lowest-address device takes over.

    Master master master master ... [silence] ... new master takes over   │                              │              │   10s intervals                  30s gap        smooth handoff
    

    In practice, the network experiences a brief stutter — maybe 20-30 seconds where messages don't propagate — and then it's back. Better than nothing. Much better than nothing.

    The Split-Brain Problem

    The hard case I kept worrying about: what if two devices both think they're the master? This can happen if MASTER_ALIVE packets get lost in both directions for long enough.

    Now you have two inverters injecting simultaneously, and you're back to the original problem.

    The fix is at the hardware layer: voltage...

    Read more »

  • Why I Started GRIDNET

    Yaşar Satır04/21/2026 at 18:40 0 comments

    Log 1:

    Published: April 2026

    I've spent most of my career at sea, as a Chief Deck Officer on oceangoing tanker ships. You learn things on a ship that you don't learn anywhere else. One of them is what happens when communication fails.

    Not "slow internet" kind of failure. I mean the kind where you're in the middle of an ocean, a thousand miles from anywhere, and suddenly the systems that keep you connected to the rest of the world just stop. Satellite phones go silent. GPS flickers. The radio is your only friend.

    You learn to respect infrastructure you never think about when you're on land.

    The February Earthquake

    In February 2023, Türkiye was hit by one of the worst earthquakes of the century. I wasn't there. I was at sea, watching it unfold on a small screen while people I knew couldn't reach their families. Cell towers were down. Internet was gone. Landlines were cut.

    For days, people in my country — in buildings standing right next to each other — couldn't communicate.

    And I kept thinking: the power lines were still there. In most buildings that hadn't collapsed, the wiring inside the walls was still intact, even if the grid itself was dark.

    What if the power line itself could carry messages?

    The Question That Wouldn't Go Away

    Power Line Communication (PLC) isn't new. Your electricity meter uses it. HomePlug adapters have been selling it as "internet over power lines" for twenty years. But those systems stop at the building transformer. They're not built for disasters. They're not built for neighborhoods to talk to each other.

    What if every device in the network was also a repeater? What if, when the grid failed, the devices themselves could inject enough signal onto the dead wire to keep the network alive?

    What if we went back to the philosophy of Minitel and FidoNet — local, decentralized, resilient, slow by design — but built it on infrastructure that already exists in every home?

    That's how GRIDNET started.

    Where I Am Now

    Over the past months I've designed the hardware from the ground up:

    • Dual-board architecture (PLC + Main) with a three-layer protection circuit
    • A custom mesh protocol with store-and-forward messaging
    • An inverter master protocol that prevents voltage conflicts when multiple devices try to power a dead wire
    • Software architecture on Zephyr RTOS with a sandboxed Forth VM for user applications
    • A separate PLC adapter that plugs into the wall and talks to the terminal over Wi-Fi

    All of it is on GitHub under CERN-OHL-W-2.0: github.com/denorath-sys/gridnet

    I'm not a hardware engineer. I'm a ship officer who learned to love technology. Which means I've taken this as far as I can on my own. The next step — PCB fabrication, firmware development, field testing — needs people.

    Why I'm Here

    I'm on Hackaday because I know what kind of people are here. People who don't ask "why would anyone do this?" — they ask "can we actually do this?" People who understand that sometimes the best projects are the ones that solve problems that haven't happened yet.

    If any part of this resonates with you, if you have ST7580 experience, if you know Zephyr RTOS, if you want to help test a prototype in your building once it's built — please reach out.

    The slowness is intentional. The locality is intentional. The fact that it works when nothing else does is the whole point.

    Let's build something that works when everything else fails.

    — Yasar

    GitHub: github.com/denorath-sys/gridnet Next log: Hardware architecture deep-dive

View all 2 project logs

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates