The Pi presents NCM Ethernet and ACM serial from a configfs gadget, started by robot-usb-gadget.service before networking. usb0 gets 10.55.0.2/30 with no gateway through netplan, matched by interface name: a MAC match turns into PermanentMACAddress= in networkd, which a gadget interface does not have, so it stayed unmanaged. talos reaches the Pi at 10.55.0.2 (ping ~2.4 ms, SSH works) through a NetworkManager profile, host/omarchy/robot-usb-link.sh, matched by the gadget's fixed host MAC. Also clamp the face's tunable parameters (focus sets a blur radius, persistence divides) and fps, after a review flagged unvalidated node parameters. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AFN8nRRCiDiMN7ChBpHJhs
17 lines
779 B
Bash
Executable File
17 lines
779 B
Bash
Executable File
#!/bin/bash
|
|
# Host side of the robot's USB link on Omarchy (NetworkManager): 10.55.0.1/30 on the gadget's
|
|
# interface, matched by its fixed MAC so any USB port and either machine works. Re-runnable.
|
|
# No gateway and never-default, so the host's traffic is never routed through the robot.
|
|
set -euo pipefail
|
|
|
|
NAME=hermes-robot-usb
|
|
HOST_MAC=02:68:65:72:6d:01 # must match HOST_MAC in pi/usb-gadget.sh
|
|
|
|
nmcli connection delete "$NAME" >/dev/null 2>&1 || true
|
|
nmcli connection add type ethernet con-name "$NAME" ifname '*' \
|
|
ethernet.mac-address "$HOST_MAC" \
|
|
ipv4.method manual ipv4.addresses 10.55.0.1/30 ipv4.never-default yes \
|
|
ipv6.method disabled \
|
|
connection.autoconnect yes connection.autoconnect-priority 100
|
|
echo "profile '$NAME' added; the robot is at 10.55.0.2"
|