Find your clock¶
Your clock is on your Wi-Fi and you need its address to open the web UI. There are three ways to find it, from easiest to most technical:
- Read it from the display.
- Use its name, like
http://awtrixng-a1b2c3.local. - Search the network with a small script.
You can also look in your router's list of connected devices.
Read it from the display¶
Each time the clock starts, it shows its address for a few seconds after the start animation.
- The firmware version stands above it.
- An address too long for the display scrolls past once.
The address only appears when the clock is connected to your Wi-Fi. Without Wi-Fi it shows only the version. You can already reach the clock while the address is shown.
Missed it? Unplug the clock and plug it back in, or use one of the ways below.
The Status app shows the address at any time. The web UI always uses port 80.
If the display shows AP MODE instead, the clock could not join your Wi-Fi and opened its setup
hotspot. Nothing on this page finds it then. Follow Connect to Wi-Fi.
Use the hostname¶
The clock announces its name on your network with mDNS (also called Bonjour, Avahi or Zeroconf). This lets you open it by name instead of by IP address:
The default name is awtrixng- plus the last 6 characters of the clock's Wi-Fi MAC address, for
example awtrixng-a1b2c3 for a MAC ending in a1:b2:c3. If you set the hostname to kitchen-clock,
the clock answers to kitchen-clock.local. The same name is used for the setup hotspot and for
the discovery reply below. See
Identity, web server and authentication.
To test whether the name works on your computer:
For scripts that run on their own, use the IP address instead of the name. It is one less thing that can fail. Give the clock a fixed address, either as a DHCP reservation in your router or as a static IP on the clock.
List all clocks with mDNS¶
Each clock announces itself as the service _awtrixng._tcp. With an mDNS browser you can list
every clock on your network, with name, address and port:
dns-sd comes with Bonjour (installed by iTunes, or as Bonjour Print Services). Without
Bonjour, use the UDP search below. It needs no extra software.
This lists the names. To get the address and port of one clock:
dns-sd runs until you press ++ctrl+c++.
Each clock also appears as a normal web server, so it shows up in network browsers and Bonjour device lists.
Search with a UDP broadcast¶
This way needs no mDNS and no extra software, only a network that passes broadcasts.
How it works:
- Your computer sends the text
FIND_AWTRIXNGas a broadcast to UDP port 4210. - Every clock that receives it answers with its hostname.
- The answer always goes to UDP port 4211. Your computer must listen on 4211 to receive it.
- The IP address of the clock is the address the answer came from.
Both scripts below do all of this for you:
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
s.bind(("", 4211))
s.settimeout(2.0)
s.sendto(b"FIND_AWTRIXNG", ("255.255.255.255", 4210))
while True:
try:
data, addr = s.recvfrom(64)
except socket.timeout:
break
reply = data.decode(errors="replace")
host, _, port = reply.partition(":")
print(f"{host:20} http://{addr[0]}:{port or 80}")
$udp = New-Object System.Net.Sockets.UdpClient(4211)
$udp.EnableBroadcast = $true
$udp.Client.ReceiveTimeout = 2000
$msg = [Text.Encoding]::ASCII.GetBytes("FIND_AWTRIXNG")
$udp.Send($msg, $msg.Length, "255.255.255.255", 4210) | Out-Null
$ep = New-Object System.Net.IPEndPoint([Net.IPAddress]::Any, 0)
try {
while ($true) {
$data = $udp.Receive([ref]$ep)
"{0}`t{1}" -f $ep.Address, [Text.Encoding]::ASCII.GetString($data)
}
} catch { }
$udp.Close()
If your network blocks 255.255.255.255, send to your subnet's broadcast address instead, for
example 192.168.1.255 for a 192.168.1.0/24 network.
Send one request and wait for the answers. If nothing comes back, try again. Do not send many requests quickly, because the clock may miss some of them.
Check that you found the right clock¶
Once you have an address, ask the clock who it is:
{
"version": "1.0.12",
"uid": "a4cf12ab34cd",
"boardType": "awtrixng",
"ipAddress": "192.168.1.42",
"currentApp": "Time"
}
uid is the clock's MAC address without colons. It never changes, not even after a reinstall, so
you can use it to tell two clocks apart. All fields are in
Device state.
If you turned on login, add your username and password:
When nothing answers¶
The address on the display, the .local name and the UDP search all need a working Wi-Fi
connection. If the clock falls back to its setup hotspot, none of them work. While nobody is
connected to the hotspot, the clock tries your saved network again every 60 seconds.
It connects as soon as it succeeds. A short Wi-Fi outage fixes itself. You do not need to restart
the clock.
Otherwise, check these in order:
| Symptom | Likely cause |
|---|---|
The display shows AP MODE |
The clock is not on your Wi-Fi. Join its setup hotspot (named after the hostname, awtrixng-<last 6 characters of the MAC> by default) and follow Connect to Wi-Fi. |
| No answer to the UDP search, but the clock is online | Your computer does not listen on UDP 4211, or a firewall blocks the answer. Many routers also block broadcasts between Wi-Fi and cable, and on guest networks. |
The UDP search works, .local does not |
Your computer has no mDNS support, or mDNS failed on the clock. Use the IP address. |
Every request returns 401 |
Login is turned on. See Authentication. |
More help: Troubleshooting.
Related¶
- Connect to Wi-Fi - put the clock on your Wi-Fi
- The web UI - what to do once you have the address
- Wi-Fi configuration - static IP, hostname, Wi-Fi details
- Wi-Fi scan - list the networks the clock can see
- Device state - the full status of the clock
- HTTP API base URL - addresses and ports in the API