Roomba 105 (V4 Protocol) - Local MQTT refused, USB port findings & evac command investigation

@Ymab76 Re: sensor updates not working while controls do — this might actually be explained by something I ran into while reverse-engineering the Prime/V4 cloud protocol for a separate project (post here, full writeup in the repo if useful). Context: I maintain ha_roomba_plus, a HACS integration for Classic-protocol robots — the V4 work is aimed at eventually folding cloud/Prime support into the same integration, which is part of why I’ve been digging into the protocol this deeply.

V4 robots don’t report all state through one AWS IoT shadow — there’s a classic/unnamed shadow plus several named shadows (rw-settings, rw-schedule, ro-currentstate, ro-stats, ro-configinfo, ro-services, …), each carrying different pieces of state. Mission commands go through the classic shadow, which is probably why controls work — but a lot of the ongoing sensor/status data may only update via one of the named ones. If roomba_v4’s MQTT client only subscribes to the classic shadow’s update/delta (or only does one-shot REST polling), that would look exactly like “controls fine, sensors stale.”

Not 100% confirmed against a live device on my end yet (that’s what the linked post is asking for help with), but if you’re comfortable poking at it: worth checking whether roomba_v4 subscribes to $aws/things/{blid}/shadow/name/{shadowName}/update/delta for anything beyond the default shadow, or whether the sensors that don’t update all happen to live in rw-settings / ro-stats specifically. Might save you some debugging time either way.

Since you (and @aka99kittens, from the Wireshark findings above) both clearly have real V4 hardware and are already comfortable digging into it — if either of you has a spare few minutes, running the read-only diagnostic from that post against your own account would genuinely help nail this down. It doesn’t touch your robot (no commands sent, nothing changed), just logs in and reports back what it can read:

pip install git+https://github.com/johnnyh1975/roombapy-prime.git
roombapy-prime-validate --username [email protected] --country-code US

Whatever comes back — including a full-on crash — is useful data I can’t get any other way right now.