// edgerun mesh
physical sensor recon · discover what's around you
v1.0 · 2026-05-10

edgerun is a passive RF + system-enumeration probe and a d3-force interactive viewer. It maps everything a node can see — nearby Wi-Fi APs, paired Bluetooth peripherals, LAN hosts on the same subnet, USB devices, and (on a tailnet member) logical mesh peers — into a floating nodal graph that responds to drag, release, search, and layer-toggle.

The viewer runs entirely client-side. No scan data is uploaded, aggregated, or shared. Your scans stay on your device.

▶ open the live utility

live preview

The full utility is embedded below — touch / drag a node to grab it, release to let it float, scroll to zoom, sidebar to toggle layers. By default it shows demo data; load your own mesh.json via the sidebar.

live open in fullscreen ↗ download termux probe

layers

layersourcenotes
Wi-Fi (own)active connectionthe AP you're connected to
Wi-Fi (neighbors)WlanScan + netsh / termux-wifi-scaninfooff by default — toggle to reveal
Bluetooth LEWinRT (planned), termux-bluetooth-scaninfo (limited)v1: paired only on Windows
Bluetooth (paired)Get-PnpDevice -Class Bluetoothcached/paired peripherals
LAN hostsGet-NetNeighbor (default-route iface)ARP/neighbor table
USB / PnPGet-PnpDevice (VID/PID)hubs, composites filtered
mDNS / SSDP(planned)service discovery — not in v1
Tailnet (logical)tailscale status --jsonlogical mesh, not physical

scanning

from your phone (Android)

Termux + termux-api. Output goes to ~/storage/downloads/edgerun-mesh.json.

pkg install termux-api python
termux-setup-storage
curl -O https://neonforge.untitledprojects.io/media/edgerun-probe.sh
bash edgerun-probe.sh

Install the Termux:API companion from F-Droid (not Play Store). Then in the viewer, tap load mesh.json and pick the file from Downloads.

from a desktop (Windows)

PowerShell probe with full coverage: Wi-Fi (active scan via WlanScan P/Invoke), Bluetooth paired, LAN ARP, USB, tailnet.

& "$probe\probe-mesh.ps1"
# emits mesh.json + mesh-data.js
# viewer auto-loads mesh-data.js if present

Source lives in .artificer/.soundings/edgerun-mesh-map/. Reach out to the artificer for the script.

from iOS

Not supported. iOS does not expose any public Wi-Fi or BT scan API. The viewer works fine on iPad/iPhone — just import a mesh.json generated elsewhere.

schema

The viewer accepts any JSON of shape:

{
  "generated": "2026-05-10T05:00:00Z",
  "hub": { "id": "...", "label": "...", "note": "..." },
  "nodes": [
    { "id": "...", "label": "...", "medium": "wifi-own | wifi-neighbor | btle | btclassic | lan | usb | mdns | tailnet", "rssi": -50, ... }
  ]
}

ethics

Listen, never poke. Wi-Fi beacons and BT advertisements are broadcast frames — passive observation is what every wifi-survey app does and is legal in public. The harm comes from what you do with the data, not the act of listening.

Lines this project holds, and you should too:

The hosted viewer ships with sample data only. The Termux probe writes to your device's Downloads — nothing is sent anywhere.

known gaps (v1)

credits

Built by ork3120 (recon) under the artificer's edgerun directive, 2026-05-10. Filed in soundings .artificer/.soundings/edgerun-mesh-map/.