mirror of https://github.com/OpenIPC/python-dvr
Browse Source
The existing default flow built a per-board InstallDesc with `armbenv -s
telnetctrl 1` and the camera's real Hardware/Vendor/FlashID. On firmware
built after 2020-05-07 Xiongmai accepts the upload (returns "Upgrade
successful") but silently drops the embedded Shell commands, so telnet
never opens. The script worked around this with a `downgrade_old_version`
gate that simply refused to proceed — usable only if the user could
source a pre-2020 downgrade blob.
Replace the default path with a SkipCheck InstallDesc:
- Hardware/Vendor/SupportFlashType all set to the literal "SkipCheck"
magic, which bypasses the firmware-side validation.
- Two Shell commands flip telnetctrl=1 via both env tool variants
(`armbenv` and `XmEnv`), covering boards that ship one or the other.
- The env var only takes effect on reboot, so the helper now sends an
explicit OPMachine Reboot after the upload (the upload itself does
not auto-reboot in this flow).
- The post-reboot telnet port is firmware-determined, so probe a list
(default 23, 4321, 50119 — 50119 observed on GK7205V300 / 000699H7)
and return whichever opens. `--ports` overrides the list.
`do_backup_via_telnet` now probes the same port list instead of hard-
coding 23, and threads the discovered port through to the telnet socket.
The `-t` busybox-telnetd no-reboot path is left untouched (different
mechanism, not re-verified under SkipCheck).
Verified end-to-end on IPC_GK7205V300_85K50T running firmware 000699H7
(build 2023-01-10): upload + reboot + telnet listening on 50119.
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
telnet-opener-skipcheck-installdesc
1 changed files with 81 additions and 45 deletions
Loading…
Reference in new issue