Flashing a board
A board is flashed over USB once. After that, updates go over the network (see firmware updates).
Build and flash
. ~/esp/esp-idf/export.sh # ESP-IDF v6.0.2
idf.py menuconfig # optional: EtherJax menu, first-boot defaults
idf.py -p /dev/ttyACM0 flash monitor
On the M5Stack Unit PoE-P4, flash through the Type-C port that isn't labelled Host. To enter download mode, hold the side button for 3 s until the LED turns green.
On the Waveshare ESP32-P4-ETH, flash through the Type-C port.
First-boot defaults
Settings under the EtherJax menu in menuconfig are only used on a
board's first boot. After that the board keeps its settings in flash and you
change them on its web page. The defaults are:
| Setting | Default |
|---|---|
| Role | Encoder |
| Stream name | etherjax |
| Multicast group | 239.200. and the last two MAC bytes, for example 239.200.171.18 |
| RTP port | 5004 |
| Channels | 2 |
| Link offset | 4 ms (20 ms for senders other than EtherJax encoders) |
| PTP priority | 128 |
| Announce with SAP | on |
| Admin password | none |
| Static IP | off (DHCP) |
Setting an admin password in menuconfig before flashing means the board is
never open on the network. With no DHCP server on the network, set a static
IP here too.
Find the board
Each board names itself etherjax-XXXX, from the last four hex digits of its
MAC address, and announces that name over mDNS. Open
http://etherjax-XXXX.local/ in a browser. The name is also printed in the
serial log and appears in your DHCP server's leases.
Next: first setup.