Quickstart: From Box to First Receipt
Set a node up end to end — power, the setup Wi-Fi, joining your network, confirming the peripheral bound, printing — including when no printer is attached.
Published 2026-09-09 · All documentation →
Power the node, join it to Wi-Fi from a phone, confirm the peripheral bound, print. On a bench with a printer attached that is about five minutes, and most of it is the phone. This page covers the whole path including the case the shorter versions skip: what to do when no printer is attached, because every paper-based step below silently does nothing without one.
What you need
- The node, and a power source for it. A board’s own port does not source 5 V to a peripheral — the printer needs its own supply, or a cable arrangement with a powered leg.
- A supported USB peripheral and the cable for it. ESC/POS is the print language the firmware implements; see compatibility for what has actually been driven on our bench and what has not.
- A phone or laptop with Wi-Fi, on 2.4 GHz. The kit’s radio is 2.4 GHz.
Nothing here needs an app, a serial cable, a screen on the device, or an account.
1. Connect the hardware, then power the node
Plug the peripheral into the node first and power both. The node enumerates USB as it boots, and watching that happen from the start makes the next step’s answer unambiguous.
2. Join it to your network
A node with no stored credentials comes up as its own open Wi-Fi network with a captive portal, and waits for a human. There is no password on it: deriving one from the hardware address protected nothing — the same address is broadcast in every beacon — and it cost a unit its only recovery path when the printed slip went missing.
- The setup network appears, named
ProxyNodes-XXXX, where the four characters match the label on the case. - A setup slip prints, if a printer is attached — a join QR, the network name in plain text, the portal address and the device id. A phone camera scans the QR and joins in one tap. With no printer attached this step is skipped silently, and the label on the case is the fallback. Read on.
- Open
http://192.168.4.1. Captive DNS answers every lookup with that address, so most phones raise the sign-in sheet on their own. - Pick your network and enter the password. The node saves the credentials, answers, waits long enough for the reply to reach your phone, and reboots to join.
A typo cannot brick a headless box
Credentials that have never worked exhaust a bounded retry budget in about three minutes and the node falls back into setup mode by itself. Credentials that have worked even once are trusted through any outage — a node whose access point is down overnight keeps retrying forever rather than dropping into setup, so a router reboot cannot strand a working fleet.
3. Confirm it joined, and that the peripheral bound
On the first successful join, a welcome slip prints once: a QR of the node’s address, the same address as text, and its IP. Scanning it opens the node’s own page in a browser.
Without a printer, use either of these:
- mDNS. The node advertises itself, so
http://proxynodes-<id>.localresolves on the LAN with nothing typed but the id from the case label. - Tap the B button. The node announces itself as a Wi-Fi network whose name is the answer —
PN-D938 @192.168.86.34— readable from any phone’s Wi-Fi list without joining, installing or signing in to anything. A node that has no address saysPN-D938 no-networkinstead, which is itself the diagnosis.
Open the node’s page in a browser and check that the peripheral shows as bound. If a printer is attached and bound, an info slip prints on every boot the moment it enumerates — with no network in the loop, so paper coming out is proof of the whole boot-to-print path by itself. It carries what is plugged in, how fast it bound, whether the printer can answer status queries at all, and ruler bars at 32, 48 and 64 columns so you can read the paper width off the paper rather than counting characters: the widest bar that does not wrap is the truth.
4. Connect your software
Two ways in, and you do not have to choose one forever.
If your software already prints raw ESC/POS to network printers, point it at the node’s port 9100. There is no integration: it answers status queries on that socket too.
If you are writing the integration, use the JSON API:
curl http://proxynodes-7f3a.local/print \
-X POST -H 'Content-Type: application/json' \
-d '{"lines":[{"type":"text","value":"Hello"},{"type":"cut"}]}'Then read the API overview for the limits, and the error vocabulary before you write your first error branch.
Setting up with no printer at all
This case is normal — a scanner-only or scale-only install, or a printer that has not shipped yet — and it is worth stating outright because every printed step above quietly does nothing:
- No setup slip and no welcome slip print. Both are skipped in silence rather than failing. The label on the case carries the same id, and it survives factory resets and reflashes.
- The setup network is still there, still open, still named from the same id. Join it and open
http://192.168.4.1. - Find the node afterwards with mDNS or the B-button tap above. Neither needs paper.
- The claim code for an account is not on paper either in that case. It reaches you by email with the shipment, and you enter it on your account page once you have it.
Changing your mind
- Move it to a different network: hold the B button about 5 seconds while the firmware is running. The stored credentials are forgotten and the node reboots into setup mode.
- Give it a fixed address: set one through the config API. Note that the network write replaces rather than patches — it starts from empty and fills only what you sent, so omitting the DNS server erases it — and that it takes effect on the next boot and says so.
- Forget every credential: hold B for 15 seconds. That clears the API key and the update key and reopens the API; see auth.
If something did not come up the way this page describes, go to troubleshooting — it starts with the light on the box, which is the only diagnostic available when there is no working network to read one from.
Frequently asked questions
- Nothing printed when I powered it on. Is it broken?
- Not necessarily — the slips only print when a printer is attached and bound, and they are skipped silently otherwise. Read the LED first, then find the node with the B-button tap or over mDNS and open its page. If a printer IS attached and nothing printed, troubleshooting starts with whether it enumerated at all.
- Does it work on 5 GHz Wi-Fi?
- The kit's radio is 2.4 GHz, so join it to a 2.4 GHz network. A 5 GHz-only network name will not appear in the picker, and a node pointed at one will not get an address.
- Can I set it up over Ethernet instead?
- A cabled node that already has an address skips setup mode entirely — no portal and no credentials to type. That is a property of the variant with an Ethernet interface, not of the kit, which is a 2.4 GHz radio only.
- How do I know which column width to configure?
- Read it off the info slip. It prints ruler bars at 32, 48 and 64 columns, each exactly as wide as its own label, so the widest bar that does not wrap is your paper's real width. Nothing on the node can interrogate paper width, and a wrong setting fails silently — rules print short and layout goes cramped, with no error anywhere.
- I typed the Wi-Fi password wrong. Do I have to reflash it?
- No. Credentials that have never worked exhaust a bounded retry budget in about three minutes and the node returns to setup mode on its own, printing a fresh slip if it has a printer. That path exists precisely so a typo at the portal cannot strand a device with no screen.
Related reading
- Troubleshooting a Node: LEDs, USB, PrintingIt will not come up, will not print, or keeps restarting. Read the LED, read the status, work the USB recovery ladder — and know the one fault it cannot fix.
- The Node HTTP API: Scope, Auth, and LimitsWhat a node's local HTTP/JSON API covers, which tier gates each route, and the limits worth knowing before you integrate. The route table is linked, not copied.
- Hardware Variants: the Six Declared SKUsSix firmware variants exist and they are not interchangeable. What each one declares, what a wrong image silently costs, and which of them are buildable at all.