How we build MeshSat

MeshSat is built with AI tools. We test it on real hardware, and we answer for all of it.

Meet the team and see the process
Elli soldering, spring 2026. Photo: MeshSat.

Who builds it

We get asked about this a lot, so it’s all on one page.

MeshSat is a small team in Leiden, the Netherlands. One person directs the code: Kyriakos. Elli does the hardware assembly, and the verification and QA of everything. George is our PR and marketing consultant.

Elli, George and Kyriakos, and the two kits at The Things Conference in Amsterdam, September 2026. Photo: MeshSat.

Fred

Our guest cat and team mascot.

Fred beside the work desk. Photo: MeshSat.

How the code gets written

Most of the code is written by AI coding tools. Kyriakos decides what gets built, tells the tools what to write, and reads and tests what comes back.

We’re not the only ones working this way. In October 2026 Linus Torvalds published a Linux kernel branch whose code, test programs and review were done with an LLM coding assistant under his direction, with the measurements run on his own machine (his commit).

How it gets checked

  • The Bridge, the Hub and both phone apps run automated tests on changes to their main branches. Required test failures block the build or release.
  • The Bridge pipeline targets both of our field kits on every change to its main branch, the two prototypes in the photo below.
  • A channel is only marked LIVE after it has run on the prototype hardware.
Both field kits half built, spring 2026. Photo: MeshSat.

The numbers

Counted from the repositories on .

First commit1 March 2026
Days with at least one commit112
Commits8,614
Repositories14, of which 11 are public on GitHub
Lines of codeabout 754,000
Lines of testsabout 308,000
Test functionsabout 7,700
AI tokens processed, 7 September to 21 October 2026about 81.6 billion
Of those, written by the AI toolsabout 252 million

That’s about four months of actual work. There were almost no commits between late April and late August.

How we counted

Non-blank lines in every programming language we use, tests counted apart. Docs, config, generated files and other people’s vendored code aren’t in it. In our fork of the Meshtastic firmware we only count the lines we added.

The tokens come from the session logs on our build server, where nearly all of the work happens. Logs from before 7 September 2026 are gone, so March to August isn’t in those two numbers. Most of the tokens processed are the tools reading code and context again that they’ve already seen.

Where each channel stands

Every channel carries one of five codes. They mean the same thing here, in the docs and in the Bridge README.

LIVE
Tested and working on our prototype hardware: the two V1 field kits, or a MeshSat node with a phone
CODE
In the Bridge, not running on a kit: either no kit carries the hardware, or we have no record of a run. It doesn't mean it failed.
BENCH
The hardware is on our bench, not in a kit yet
COMING SOON
The hardware is on its way to the bench. Nothing has been tested
FUTURE PLAN
Planned. Nothing is bought

The full table, with each channel’s current status and what each run showed, is on docs.meshsat.net.

MeshSat is a prototype under active development. It has never been deployed to a real user or used in a real emergency. It is not an emergency service.

What the tools don't do

  • Pick the hardware, wire it or solder it.
  • Take the kits out and run the tests on the radios.
  • Answer for what we publish. We do.
Fit check of the MeshSat Compact v2 with real parts, 16 October 2026. Photo: MeshSat.

Questions about any of this?

hello@meshsat.net