Skip to content

firmware-2026-06-17

Latest

Choose a tag to compare

@github-actions github-actions released this 17 Jun 00:04
· 337 commits to master since this release

Changes in this release:

  • 343c166 Modify fetch-depth and add Docker CLI installation Updated fetch-depth to 1 for repository checkouts and added Docker CLI installation step if not found.
  • 12ded2f Refactor buildroot-dl-cache retrieval process Removed the fetch and download steps for buildroot-dl-cache, replacing them with a direct restore from a Docker image.
  • 33f9eb0 Install 7zip as fallback in firmware-builder.yml Add installation step for 7zip if not already present.
  • 60ddae1 Update BOARD variable for Buildroot source download
  • bcd66c7 Fix make command to include BOARD variable
  • 050c30f Add dl cache key computation and restore steps
  • cf65e11 Add workaround for uutils bug in firmware-builder.yml
  • 71ff5ba Add user option to firmware-builder container
  • d6db22a Change default branch from 'stable' to 'ciao'
  • 450df1a Upgrade Ubuntu version from 24.04 to 26.04
  • 53d179e formatting
  • 9f42347 docs: update information on home assistant agent
  • fd4dc9a refactor make calls in docker script
  • 282073d cameras: remap ram in xiaomi mjsxj03h
  • 842a411 formatting
  • acb6798 live555: rename patch to avoid conflicts with the one in buildroot
  • 768e7c9 cameras: simplify gpio notation in json configs
  • e8e4041 package/wifi-ssw101b: update to 380838e Update wifi-ssw101b from 88454ec to 380838e Hash change: 88454ec7f78fdf8ce69b1cfb7f2288251eb0bf82 -> 380838e871c793ff4feb19bd584d9508b162b835 Changelog: ab40b95: README: document Wi-Fi 6 variants and atbm-606x-c branch 48da75a: README: match Wi-Fi 6 variants table to the vendor-style chip table format 380838e: README: fold Wi-Fi 6 variant build/firmware info into the single ALTOBEAM table
  • 3885013 package/wifi-atbm6132u: update to 380838e Update wifi-atbm6132u from 88454ec to 380838e Hash change: 88454ec7f78fdf8ce69b1cfb7f2288251eb0bf82 -> 380838e871c793ff4feb19bd584d9508b162b835 Changelog: ab40b95: README: document Wi-Fi 6 variants and atbm-606x-c branch 48da75a: README: match Wi-Fi 6 variants table to the vendor-style chip table format 380838e: README: fold Wi-Fi 6 variant build/firmware info into the single ALTOBEAM table
  • 3792dbb package/wifi-atbm6132s: update to 380838e Update wifi-atbm6132s from 88454ec to 380838e Hash change: 88454ec7f78fdf8ce69b1cfb7f2288251eb0bf82 -> 380838e871c793ff4feb19bd584d9508b162b835 Changelog: ab40b95: README: document Wi-Fi 6 variants and atbm-606x-c branch 48da75a: README: match Wi-Fi 6 variants table to the vendor-style chip table format 380838e: README: fold Wi-Fi 6 variant build/firmware info into the single ALTOBEAM table
  • ff0d3b7 package/wifi-atbm6032x: update to 380838e Update wifi-atbm6032x from 88454ec to 380838e Hash change: 88454ec7f78fdf8ce69b1cfb7f2288251eb0bf82 -> 380838e871c793ff4feb19bd584d9508b162b835 Changelog: ab40b95: README: document Wi-Fi 6 variants and atbm-606x-c branch 48da75a: README: match Wi-Fi 6 variants table to the vendor-style chip table format 380838e: README: fold Wi-Fi 6 variant build/firmware info into the single ALTOBEAM table
  • 9066b68 package/wifi-atbm6032: update to 380838e Update wifi-atbm6032 from 88454ec to 380838e Hash change: 88454ec7f78fdf8ce69b1cfb7f2288251eb0bf82 -> 380838e871c793ff4feb19bd584d9508b162b835 Changelog: ab40b95: README: document Wi-Fi 6 variants and atbm-606x-c branch 48da75a: README: match Wi-Fi 6 variants table to the vendor-style chip table format 380838e: README: fold Wi-Fi 6 variant build/firmware info into the single ALTOBEAM table
  • afb484e package/wifi-atbm6031x: update to 380838e Update wifi-atbm6031x from 88454ec to 380838e Hash change: 88454ec7f78fdf8ce69b1cfb7f2288251eb0bf82 -> 380838e871c793ff4feb19bd584d9508b162b835 Changelog: ab40b95: README: document Wi-Fi 6 variants and atbm-606x-c branch 48da75a: README: match Wi-Fi 6 variants table to the vendor-style chip table format 380838e: README: fold Wi-Fi 6 variant build/firmware info into the single ALTOBEAM table
  • faa2651 package/wifi-atbm6031: update to 380838e Update wifi-atbm6031 from 88454ec to 380838e Hash change: 88454ec7f78fdf8ce69b1cfb7f2288251eb0bf82 -> 380838e871c793ff4feb19bd584d9508b162b835 Changelog: ab40b95: README: document Wi-Fi 6 variants and atbm-606x-c branch 48da75a: README: match Wi-Fi 6 variants table to the vendor-style chip table format 380838e: README: fold Wi-Fi 6 variant build/firmware info into the single ALTOBEAM table
  • d3fbecc package/wifi-atbm6012bx: update to 380838e Update wifi-atbm6012bx from 88454ec to 380838e Hash change: 88454ec7f78fdf8ce69b1cfb7f2288251eb0bf82 -> 380838e871c793ff4feb19bd584d9508b162b835 Changelog: ab40b95: README: document Wi-Fi 6 variants and atbm-606x-c branch 48da75a: README: match Wi-Fi 6 variants table to the vendor-style chip table format 380838e: README: fold Wi-Fi 6 variant build/firmware info into the single ALTOBEAM table
  • b169bc1 package/wifi-atbm6012b: update to 380838e Update wifi-atbm6012b from 88454ec to 380838e Hash change: 88454ec7f78fdf8ce69b1cfb7f2288251eb0bf82 -> 380838e871c793ff4feb19bd584d9508b162b835 Changelog: ab40b95: README: document Wi-Fi 6 variants and atbm-606x-c branch 48da75a: README: match Wi-Fi 6 variants table to the vendor-style chip table format 380838e: README: fold Wi-Fi 6 variant build/firmware info into the single ALTOBEAM table
  • cb66000 package/wifi-atbm-wifi: update to 380838e Update wifi-atbm-wifi from 88454ec to 380838e Hash change: 88454ec7f78fdf8ce69b1cfb7f2288251eb0bf82 -> 380838e871c793ff4feb19bd584d9508b162b835 Changelog: ab40b95: README: document Wi-Fi 6 variants and atbm-606x-c branch 48da75a: README: match Wi-Fi 6 variants table to the vendor-style chip table format 380838e: README: fold Wi-Fi 6 variant build/firmware info into the single ALTOBEAM table
  • c606649 package/thingino-nimble: update to 380838e Update thingino-nimble from 88454ec to 380838e Hash change: 88454ec7f78fdf8ce69b1cfb7f2288251eb0bf82 -> 380838e871c793ff4feb19bd584d9508b162b835 Changelog: ab40b95: README: document Wi-Fi 6 variants and atbm-606x-c branch 48da75a: README: match Wi-Fi 6 variants table to the vendor-style chip table format 380838e: README: fold Wi-Fi 6 variant build/firmware info into the single ALTOBEAM table
  • 8b9c092 package/faac: update to 02fee83 Update faac from 167b5eb to 02fee83 Hash change: 167b5eb656c7f529faf565ead10ba0c67f5eb384 -> 02fee83d97e5db0644c0622a2b15ed6e6db461fe Changelog: 600f237: quantize: floor masking targets in quiet bands; fix qlevel safety (#107) 02fee83: quantize: keep global_gain a valid regular scalefactor (fix decoder OOR) (#109)
  • 208e4f8 libnl: force automake API version 1.17 for debian:trixie builder The libnl-3.12.0 release tarball is generated with automake 1.18.1, which hardcodes am__api_version='1.18' (and thus aclocal-1.18 / automake-1.18 via the missing wrapper) into configure and Makefile.in. Our patches (to support disabling unused netlink libraries via conditionals) touch configure.ac / Makefile.am, which triggers the regeneration rules during make. debian:trixie only provides aclocal-1.17, so builds in the official thingino-builder-image container fail with: .../missing: line 85: aclocal-1.18: command not found Add 0006-downgrade-am-api-version-to-1.17.patch (and small supporting updates to the 0002/0004 generated-file patches) to force the 1.17 API version. This lets CAMERA=... ./docker-build.sh dev (and normal builds) successfully pass the libnl step inside the trixie-based container.
  • 1b9efea create a directory for local overrides
  • c638c81 libnl: versioned patches
  • 9994e06 make: fix env image size to match CONFIG_ENV_SIZE, fixes bad CRC on fresh flash 3b7997b switched mkenvimage from the 64k env partition size to a hardcoded 0x8000 based on the old vendor isvp_common.h value. The current U-Boot layout (configs/uboot/layout/sfcnor.config) sets CONFIG_ENV_SIZE=0x10000, so both U-Boot and fw_printenv checksummed 64k against a CRC computed over 32k and fell back to the default environment on every fresh flash.
  • d6b722c core: set squashfs block size to 256K
  • 79a357f core: build LZMA-compressed kernel uImage instead of gzip Buildroot syncs its compression choice onto the kernel config, which was overriding the CONFIG_KERNEL_LZMA=y already present in the board configs. U-Boot already has CONFIG_LZMA enabled for bootm, and the Ingenic kernel boot Makefile wraps the uImage in lzma when CONFIG_KERNEL_LZMA is set. Saves roughly 15% in the kernel partition at a small boot-time decompression cost.
  • 880051f add vcm gpio config to motors.json, and use it in focus script dw9714-ctrl
  • 73668a6 package/open-tx-isp: update to 130d9b9 Update open-tx-isp from ee8d3a9 to 130d9b9 Hash change: ee8d3a9856c625e0837453b63423a562ebd1a06f -> 130d9b94b3ddecc0c195913f828f2fee75d562d4 Changelog: c1d1b28: T40: sharpening online — YSP chain via literal MIPS->C translation 657ce43: T40: CCM online via literal translation — full color pipeline complete d7fa544: T40: anti-flicker AE rungs, smooth exposure, DNS strength tracks gain 062c0c5: T40: MDNS chain installed (default off, recon), AE/DNS retune 950dce1: T40 3A: two-level AE (IT micro-trim + coarse gain) — kills breathing c65c6e9: T40 MDNS temporal denoise ONLINE — gate is top40 bit13 5ca976e: T40 daylight AWB: brightest-2 near-gray candidates; color-block gap mapped 0403519: T40 color parity: add gated BCSH and staged CLM literal chains d61d4e1: T40 LSC online via faithful lit chain; radial color cast root-caused 130d9b9: Check pt t40/t41 work
  • 1de9012 package/faac: update to 600f237 Update faac from 167b5eb to 600f237 Hash change: 167b5eb656c7f529faf565ead10ba0c67f5eb384 -> 600f23763b755a3da52199b9b94965bada7fa8a2 Changelog: 600f237: quantize: floor masking targets in quiet bands; fix qlevel safety (#107)
  • 5a62b55 make: restore cloner target
  • e66e25b device types: add Security Hub type, gate camera stack by device type - add BR2_THINGINO_DEV_SEC device type and hidden BR2_THINGINO_DEV_CAMERA helper (set for IPCAM/WEBCAM) - streamer choice defaults to none on non-camera devices - ONVIF is selected only for IPCAM (webcams no longer ship it) - ingenic-lib selected for camera or audio devices - skip tx_isp/avpu module loaders and default rmem/ispmem to 0 on non-camera devices - sensor-utils gated on camera instead of !NVR - webui: recordmgr and telegram-cam agents are IPCAM only; mqtt dispatcher stays for all - raptor: RVD is now a daemon option, default on for FULL or camera devices (audio-only builds get RAD without the video daemon)
  • 3b7997b merge config and extras partitions into a larger unified data overlay at the end of the firmware
  • 947df4f update packages: handle host packages, expand short github notations
  • 62e9198 uboot: a workaround to handle dependencies on rebuilding
  • c949ad7 clean up
  • 3d2c9f8 make: DRY, calculate the # of cores once
  • 2d0d31b package/thingino-dfu: convert to host package
  • ccda2e4 make: TFTP root is not set by default
  • c50e04f add scriba host package and wire it to make scriba
  • b0c5ffc thingino-uboot: derive overlay-wipe erase from config partition vars The NOR overlay-wipe was hardcoded to "sf erase 0x60000 0x40000", but the config partition offset and size are computed: CONFIG_OFFSET and CONFIG_PARTITION_SIZE (currently 0x60000 / 0x60000). Substitute the computed offset and size so the wipe always covers exactly the config partition that mtdparts declares.
  • d76bcfa script to bulk-rebuild all cameras preserving only images after compilation
  • 909e46e cameras: remove reset button gpio from environment files
  • cfc862a thingino-uboot: drive SD power/detect and reset from the DT, drop env hacks Now that the GPIOs are described in the device tree, remove the old environment workarounds: the gpio_mmc_power env injection and the mmc_power/preboot rescan (the mmc core powers and scans the slot itself), and the check_reset gpio script (replaced by CONFIG_BUTTON_CMD running button_cmd_0 - a factory reset - when the reset button is held).
  • 3dbcccb thingino-uboot: inject board SD and reset-button GPIOs into the u-boot DT The card-detect/power GPIOs and the reset button are board-specific while the U-Boot device tree is per-SoC, so they can't live in the shared .dts. A u-boot pre-build hook appends them to this board's DT copy from thingino.json: a vmmc-supply fixed regulator and cd-gpios for the SD slot, plus a gpio-keys "reset" button.
  • c928429 Gate WLAN GPIO toggling to kernel 3.10 only The gpio toggle/set commands break wireless on kernel 4.4+. Gate the GPIO sequence to only run on kernel 3.10, log a skip message otherwise. Signed-off-by: Paul Philippov paul@themactep.com
  • f27bcd9 overlay: add S03mac init script to derive MAC from SoC serial Newer U-Boot (2026.04) no longer runs the ethaddr init command that derived ethaddr and wlan_mac from the SoC serial number registers. Add a user-space init script that does the same calculation at boot and persists the addresses into /etc/thingino.json under eth.mac and wlan.mac keys, matching the layout already expected by existing set_mac_address and S36wireless scripts. Signed-off-by: Paul Philippov paul@themactep.com
  • 7ab5266 package/open-tx-isp: update to ee8d3a9 Update open-tx-isp from 967dcbe to ee8d3a9 Hash change: 967dcbe78f9dc51066b943ef695a4408ca31b33b -> ee8d3a9856c625e0837453b63423a562ebd1a06f Changelog: bd81096: T40 AWB init scaffolding and protect active stream reload 7f83583: T40 probe: force local streamoff for recovered reload safety b2f29e5: T40 AWB: repair param tables, hw-write chain, and init path against OEM binary 0d1ada7: T40: live WB gains + self-sustaining gray-world AWB loop b89d766: T40: software AE controller (ae-soft), AE init blob + width/height args 68b032f: T40: fix GC4653 EXPO cmd (0x2000016), userspace 3A agent for night AE/AWB b1e72f4: T40: soft gamma (grain fix), smooth proportional 3A, probe auto-start ccaca89: T40: faithful YDNS denoise chain repair, enabled by default 17dcfd5: T40: OEM gamma curve from tuning blob + GIB black level — fog eliminated ee8d3a9: T40: YSP sharpening chain scoped + symbolic reg_cfg extractor
  • 02029cd makefile: remove uboot compilation hack for avoiding double-compilation. it makes more harm than good.
  • ff6a099 makefile: extract tftp actions to separate targets
  • cba36f7 update spi list script
  • 4997153 package/wifi-ssw101b: update to 88454ec Update wifi-ssw101b from 13953b6 to 88454ec Hash change: 13953b6e9090e620640edf4c6ea8ffc2e46da6b4 -> 88454ec7f78fdf8ce69b1cfb7f2288251eb0bf82 Changelog: 10ed0ba: Fix kbuild Makefile parsing and translate garbled comments d0de306: Fixed compilation for 4.9.37 88454ec: Fixed compilation for 4.9.37
  • c7b683e package/wifi-atbm6162u: update to 3de8e9e Update wifi-atbm6162u from 11ca4da to 3de8e9e Hash change: 11ca4dabd6e876e43f1849d20b19f0b28982138f -> 3de8e9e8a32a912c8e26f40f47110199643b2417 Changelog: 3de8e9e: fix skb_put_zero redefinition on 3.10 build
  • ebca7ee package/wifi-atbm6162s: update to 3de8e9e Update wifi-atbm6162s from 11ca4da to 3de8e9e Hash change: 11ca4dabd6e876e43f1849d20b19f0b28982138f -> 3de8e9e8a32a912c8e26f40f47110199643b2417 Changelog: 3de8e9e: fix skb_put_zero redefinition on 3.10 build
  • 935f8c2 package/wifi-atbm6062s: update to 3de8e9e Update wifi-atbm6062s from 11ca4da to 3de8e9e Hash change: 11ca4dabd6e876e43f1849d20b19f0b28982138f -> 3de8e9e8a32a912c8e26f40f47110199643b2417 Changelog: 3de8e9e: fix skb_put_zero redefinition on 3.10 build
  • 11e14b6 package/thingino-raptor-hal: update to 1798e4e Update thingino-raptor-hal from 9780eb1 to 1798e4e Hash change: 9780eb14a6da4e794504c9514fc7e8ec63abdc56 -> 1798e4e30750c7904bd88c096b449fc914fa310c Changelog: 1798e4e: raptor-hal: add T10 platform support (aliases T20 SDK)
  • 17fe5ea package/thingino-odhcp6c: update to daf4ec3 Update thingino-odhcp6c from 24485bb to daf4ec3 Hash change: 24485bb4b35ab84c17c2e87bd561d026d4c15c00 -> daf4ec3054e753c99fdcc3ac5464926548b38351 Changelog: 08bd058: ra: skip malformed options instead of aborting RA processing 2550a1d: dhcpv6: fix inverted Authentication option validation in Reply 496e55d: dhcpv6: use host-order option length in Authentication validation b6f0c70: dhcpv6: fix out-of-bounds end pointer when parsing IA in Advertise 92fd11c: dhcpv6: fix OOB read and 1-byte heap overflow on captive-portal option 0dab8fe: ra: fix OOB read on captive-portal option comparison a4d6a32: script: fix string_to_env writing garbage and reading past input 2521bf7: script: avoid kill(0) when SIGCHLD races script_call 56cec7a: odhcp6c: drop stale hash_ifname() declaration 49d9c01: odhcp6c: propagate allocation failure from insert_state 4bd976f: dhcpv6: ensure hostname buffer is NUL-terminated for dn_comp 6d12865: ubus: validate element type when parsing reconfigure_dhcp opt_send 01130f8: script: handle allocation failures in env helpers 0a19052: odhcp6c: refuse to follow symlinks when writing pidfile d6c2fbd: odhcp6c: skip malformed /proc/net/if_inet6 entries b6add6c: dhcpv6: avoid signed-shift undefined behaviour in IAID derivation ce52fe1: ubus: clear cached object type id on disconnect 91f88c6: config: stop mutating caller-supplied buffers in send-options parser c938c16: script: handle fork() failure when launching state script 1546a48: ubus: avoid out-of-bounds read when serializing captive-portal URI 3270f08: all: fix inverted captive-portal URI equality check (RFC 8910 §3) e9a9e9d: odhcp6c: bound the address length when parsing the -P argument 5ad94c8: script: walk entries with odhcp6c_next_entry in entry_to_env df4f199: ubus: walk entries correctly and don't leak an open table in entry_to_blob 6c1c4c4: ubus: don't leak an open table on malformed S46 rule/bind in s46_to_blob 1797d2b: odhcp6c: remove pidfile on exit 86a6665: ra: clear captive-portal state when router signals unrestricted URI 0a4e51d: dhcpv6: require known SERVERID when validating Reconfigure afc3c85: dhcpv6: reject Reconfigure with malformed or duplicate Message option df27a49: dhcpv6: enforce monotonic replay counter on Reconfigure RKAP 9177f23: odhcp6c: do not treat DHCPv6 option type 0 as end-of-list daf4ec3: example: write all DNS servers to resolv.conf
  • be9ca08 package/nino: update to eec2203 Update nino from adf76f9 to eec2203 Hash change: adf76f94d30857e85e423635d502d6e5c43aed87 -> eec220383404129b4ca089d182fbdcfb73dac5cb Changelog: ac9b0a3: Replace ctype.h functions with ours 42fc381: Add deselect language of a file 2c2c5c0: Improve cursor and row offset on reload 9d15d3a: Strengthen HLDB JSON validation 33a2d04: Add DevMsg 5e475e2: Add incremental find 9534e39: Improve find cache validation on case 3f0be06: Fix find cache on exact match but wrong case e74773d: Fix action list not init after reload eec2203: Remove scroll release event workaround
  • 968954c Meet Figata, the new epoch of Thingino
  • 2aec559 thingino-uboot: gate wired-eth, USB-eth and audio out of u-boot by board flags PRE_BUILD kconfig hooks disable each subsystem when the board defconfig does not claim the hardware: BR2_ETHERNET (wired DesignWare GMAC + PHY), BR2_PACKAGE_THINGINO_KOPT_DWC2_OTG (USB-ethernet host drivers), BR2_THINGINO_AUDIO (CONFIG_SOUND -> I2S + codecs). Each uses KCONFIG_DISABLE_OPT + olddefconfig to cascade and skips the legacy 2013.07 tree.
  • bb8a78b uboot: add recovery env logic build the SD-card auto-update and factory-reset-button recovery on top of new uboot, entirely in the U-Boot env. Recovery env (configs/common.uenv.txt, hush scripts only): - mmc_power drives the SD rail (per-camera gpio_mmc_power, active_low aware) and rescans; run from preboot so MMC is up before autoboot and usable at the prompt and in any script. preboot is set from the env, leaving mainline CONFIG_PREBOOT untouched. - autoupdate: if the SD holds autoupdate-full.bin and no autoupdate-full.done marker, flash it to SPI, write the marker, and reboot. Idempotent via the marker - no re-flash loop, re-flash by deleting the marker. - check_reset: hold the per-camera gpio_button at boot to wipe the overlay (factory reset). Build-time wiring (Makefile $(U_BOOT_ENV_TXT)): - gpio_mmc_power / gpio_mmc_power_active_low extracted per-camera from thingino.json gpio.mmc_power via jct. - autoupdate/mmc_power/preboot/gpio_mmc_power are stripped unless BR2_THINGINO_SDCARD=y; check_reset/overlay_wipe/gpio_button unless BR2_THINGINO_BUTTON=y; the matching run hooks are pruned from bootcmd. - thingino-uboot.mk fills the overlay_wipe placeholder per NOR/NAND.
  • 29bfce9 wifi-atbm6062u: bump to 3de8e9e (skb_put_zero 3.10 build fix)
  • 137c6ad docker: add overrides, expand symlink
  • c2f55a0 docker: add missing packages
  • 0f3f288 docker: add missing packages
  • 11ce58e make: fix TFTP_ROOT variable
  • 2fa868e u-boot: add vendored spl files
  • 569e883 script to list flash chip entries in a compiled uboot image
  • 475fbdf thingino-dfu: bump version
  • 6c83d22 Makefile: update dfu firmware folder
  • 0d25032 thingino-dfu.mk: update firmware folder
  • f0696ff Revert "package/thingino-raptor-hal: map T10 to T20 platform" This reverts commit c5afbda.
  • d673576 README: add warning about experimental U-Boot on master branch The master branch uses a highly experimental U-Boot with minimal compatibility. autoupdate-full.bin and SD card access from U-Boot do not work. UART access and unbricking skills are highly recommended.
  • a935850 Increase CONFIG_SIZE_KB from 256 to 384 for JFFS2 minimum erase blocks With 64 KiB erase blocks, 256 KiB gives only 4 erase blocks. JFFS2 requires a minimum of 5 erase blocks to mount. 384 KiB provides 6 erase blocks, which satisfies JFFS2 and leaves room for data. Signed-off-by: Paul Philippov paul@themactep.com
  • c5afbda package/thingino-raptor-hal: map T10 to T20 platform T10 shares SDK 3.12.0/zh and xburst1 architecture with T20, but raptor-hal does not recognize PLATFORM=T10 in its valid platforms list or #ifdef guards. Map T10 -> T20 to fix the build failure. Signed-off-by: Paul Philippov paul@themactep.com
  • eefaeeb cameras: replace THINGINO_CLONER with THINGINO_DFU
  • 1be2e3f u-boot: add 19 missing SPI NOR flash chip IDs from vendor table Import flash chip entries from the old Ingenic JZ SPI driver (jz_spi.h) that were missing in U-Boot 2026.04's spi-nor-ids.c. These chips are used on various Ingenic-based IP cameras and were previously supported in the legacy firmware. New vendor sections: ESMT, NAVIONIX, DOSEM, FUDANMICRO, ZETTA, XD, FREMONT. Added to existing sections: EN25QH64/EN25QX128A (EON), GM25Q64A/GM25Q128A (ESMT), XM25QH64B/XM25QH128B (XMC), SK25Q128 (SILICONKAISER), BY25Q128AS (BOYA), ZB25VQ64 (ZBIT), PY25Q128HA (PUYA). All 39 original chip IDs from the vendor table have now been accounted for in U-Boot's spi-nor-ids.c. Signed-off-by: Paul Philippov paul@themactep.com
  • ad9231d rename thingino-cloner to thingino-dfu
  • 4bf5f16 u-boot: add Boya BY25Q64AS SPI NOR flash chip (0x684017)
  • 4530b78 map u-boot profile for t31l soc to isvp_t31_sfcnor_lite
  • ef3bcda wyze_cam3pro: enable aw87xxx speaker amp package
  • 7b4a6c3 package/aw87xxx: add Awinic aw87xxx Smart-K PA driver Builds snd-soc-aw87xxx.ko from github.com/gtxaspec/aw87xxx with CONFIG_SND_SOC_AW87XXX=m, installs the ACF firmware to /usr/lib/firmware, auto-loads the module, and adds an S62 init script that powers the amp on in Voice mode.
  • 292394f wyze_cam3pro: fix avpu clock source; add rmem/nmem
  • ed6f860 update AGENTS.md
  • a9efe1c u-boot: update and rename the patch file
  • ef3b429 wifi-aic8800: fix firmware install for kernel 4.4.94 - Remove fw_ble_scan_ad_filter.bin from USB 8800 firmware list (not shipped in upstream aic8800-wifi repo) - Replace hardcoded kernel version 3.10.14 with dynamically probed LINUX_VERSION_PROBED so the module install path matches the actual kernel release string (e.g. 4.4.94 for xburst2 builds)
  • c1b2c3d soc_database.txt: fix U-Boot defconfig names for U-Boot 2026.04 All NOR defconfigs now map to existing files in U-Boot 2026.04: - A1: isvp_a1_all_lzma_sfc0nor -> isvp_a1_sfcnor - T10l/T20l/T30l/T31l/T31zl: dropped _lite suffix (no lite defconfigs) - T23: isvp_t23n/dl/zn -> isvp_t23_sfcnor (generic) - T30a: isvp_t30a_sfcnor_ddr128M -> isvp_t30_sfcnor_ddr128M - T31lc: isvp_t31lc_sfcnor -> isvp_t31_sfcnor - T31al: isvp_t31al_sfcnor_ddr128M -> isvp_t31_sfcnor_ddr128M - T31a: dropped nonexistent _ddr128M suffix - C100: isvp_c100_sfcnor -> isvp_t31_sfcnor_ddr128M - T40n/nn/xp/a: dropped variant suffix -> isvp_t40_sfcnor - T41: sfc_nor -> sfcnor (naming convention fix) - T41zl/zn/zx/a: use isvp_t41lq/nq_sfcnor (only existing T41 NOR defconfigs) - T32nq/vn: isvp_t32nq/vn_sfcnor -> isvp_t32_sfcnor - T33: all variant-specific -> isvp_t33_sfcnor (generic)
  • b71f1df docs: update to reflect latest changes
  • ffa47d6 S04hostname: use SoC serial as primary unique identifier The SoC serial (soc -s) is the only truly immutable unique ID per unit. MAC addresses are not reliable: cameras can have multiple ports, USB ethernet adapters, or replaced WiFi modules, each with their own MAC. Prefer SoC serial over MAC for the hostname suffix. Fall through to MAC sources only when the serial is unavailable.
  • 666fd1b u-boot: switch default u-boot to the latest mainline (buildroot bundle + patches)
  • 63bfdc2 add missing u-boot defaults uenv: add baudrate, panic_timeout, serialport to fix bootcmd The bootcmd references ${baudrate}, ${panic_timeout}, and ${serialport} but none were defined in the env pipeline, resulting in a broken kernel cmdline: console=,115200n8 panic=. Add universal defaults to common.uenv.txt: - baudrate=115200 - panic_timeout=2 Add serialport=ttyS1 (the default UART for Ingenic SoCs) to every camera .uenv.txt. The imou_ranger2 board overrides to ttyS0 (preserved).
  • 4a6f75f thingino.mk: delegate uboot defconfig lookup to soc_database Replace the hardcoded SOC_FAMILY-to-defconfig mapping with a query to get_soc_params.sh, matching how UBOOT_BOARDNAME is already sourced from the database. This fixes T31X builds which need the ddr128M defconfig (with CONFIG_RAM=y) instead of the generic t31_sfcnor one.
  • 2479e29 u-boot: update with latest patches from @gtxaspec
  • 4779a0c webui: add delete button to image and video preview modals
  • 17f5f42 package/thingino-onvif: update to 37fa1ac Update thingino-onvif from bce89aa to 37fa1ac Hash change: bce89aa45b4b07c1ea3ff484e63ca970c3774053 -> 37fa1ac2f75b20859a8bcdd3b1b79725e0ad4ede Changelog: 37fa1ac: fix profiles enumeration
  • 23ff3f6 Update buildroot to latest version
  • a79acec package/thingino-uhttpd: update to 1b624f8 Update thingino-uhttpd from 6ab9abb to 1b624f8 Hash change: 6ab9abb56bcb28684f382f7a94c170fad02348ea -> 1b624f8f814ed568608d756512892416e0431d77 Changelog: 1b624f8: auth: classify $p$ lookups by account state
  • d407c47 package/thingino-ubus: update to 795b32b Update thingino-ubus from 3cc98db to 795b32b Hash change: 3cc98db1a422dcf560f2d6347fd410f17565a89d -> 795b32bb96b611493f423666236e9c1e49e0736c Changelog: 4b27405: libubus: fix NULL dereference on OOM in ubus_queue_msg 8b5be57: libubus-acl: fix dangling pointers on blob_memdup failure in acl_recv_cb 9105ea2: ubusd_acl: fix NULL dereference on OOM in ubusd_acl_alloc_obj 07d7f34: ubusd_acl: handle allocation failures in ubusd_acl_init_client 497321a: ubusd_acl: fix NULL dereference on OOM in ubusd_acl_init f66d52b: ubusd_event: fix OOM handling in ubusd_send_event_msg 11ea1b3: ubusd_main: fix async-signal-unsafe SIGHUP handler 0c09559: ubusd_proto: fix resource leaks and ID tree corruption in ubusd_proto_new_client f61695e: ubusd_proto: fix NULL dereference for user/group in ubusd_handle_add_watch 7ecacfa: ubusd_proto: fix NULL dereference on OOM in ubusd_proto_init_retmsg 3ab9d77: lua: fix inverted argument check in ubus_lua_add 43051ca: lua: fix unchecked calloc and memory leak in ubus_lua_load_object 4ca0b14: ubusd_id: use getrandom(2) unconditionally on Linux 7e4356d: ubusd_monitor: fix NULL dereference on OOM in ubusd_monitor_message 5849870: libubus-req: fix file descriptor leaks in ubus_process_req_msg f29767f: libubus: fix file descriptor leaks in ubus_process_msg b099d05: libubus: make ubus_shutdown idempotent a564b8d: ubusd_main: check strdup return value in mkdir_sockdir 239edcb: ubusd_id: fix continue in do-while skipping random ID retry 09d2df4: ubusd: fix NULL dereference on OOM in ubus_msg_enqueue bcc45ca: libubus: actually set FD_CLOEXEC on the ubus socket 8188f5c: libubus-io: close recv_fd captured before get_next_msg failure 7a068ba: libubus-io: byte-swap peer in HELLO when storing as local_id 747013f: libubus-io: reset sock.fd to -1 after close on ubus_reconnect error path 020a64b: ubusd_acl: use size_t for strlen result in ubusd_acl_alloc_obj f92ffd2: ubusd: use size_t for string and blob length variables 795b32b: ubusd: use fixed-width types for sequence counters
  • 9164112 package/thingino-onvif: update to bce89aa Update thingino-onvif from be3fb34 to bce89aa Hash change: be3fb34907950be4f41b72f4e64805ec57f65e0c -> bce89aa45b4b07c1ea3ff484e63ca970c3774053 Changelog: bce89aa: onvif: ignore non-RTSP profiles
  • 489478a package/thingino-libubox: update to 1fe93d2 Update thingino-libubox from 1501e60 to 1fe93d2 Hash change: 1501e60e5554bd206c9b13532b7352e668508420 -> 1fe93d2fefb213ec987763e7e94ce5eaa757bfc3 Changelog: 19e88cc: json_script: use size_t for calloc_a() length argument 9afc710: udebug-remote: pass size_t to calloc_a() 73a2197: treewide: use size_t for length variables to avoid implicit narrowing 1fe93d2: blob, udebug-remote: silence -Wconversion warnings in trivial cases
  • 9390da5 package/subzeroclaw: update to c6cb13b Update subzeroclaw from 1d203dd to c6cb13b Hash change: 1d203dd4a896b02d521b300431c9127f2917d10a -> c6cb13bac3db60e5568bf77e95d312cf64f94175 Changelog: 32bd476: shell: exit codes + heredoc fix + safer buffers c6cb13b: extract llm_chat as weak symbol
  • 5e0eed6 package/strero: update to ca1e10e Update strero from a91cd52 to ca1e10e Hash change: a91cd5251ce300e7c6cb1106b5c5a9d8ea021350 -> ca1e10e03b17dfa0899116f975006edfdd2f7b5c Changelog: ca1e10e: update build script
  • f257996 package/nino: update to adf76f9 Update nino from 5959aa8 to adf76f9 Hash change: 5959aa8663e57b0e0c4bebf44136d4ad24144390 -> adf76f94d30857e85e423635d502d6e5c43aed87 Changelog: 3262446: Remove recursion in syntax highlighting aa7b9fd: Add intro message 8326ded: Add -u option 8d24991: Print usage to stdout 7551ba6: Don't draw intro during loading state 4c9a02e: Refactor ConVar system 862667c: Add timestamp to EditorInput 67fa955: Refactor console input handling 6e2af0c: Rewrite base64 encoding 51ef8c5: Fix autoindent incorrectly increases indent 352d6a1: Fix buffer overflow in parseLine eb79d67: Fix echo/alias off-by-one buffer overflow ad40cd7: Add null checks for getEnv e7a6ca6: Add quit command ef1ad87: Add ANSI/256/default color support ab19998: Refactor color config to use enum index 53e96df: Add vector_free macro 26b7c8d: Refactor Highlighting 7f8e072: Fix vector_shrink 9bfceb0: Add 0 size check malloc functions c61dfb5: Add back syntax command callback 0858e7e: Fix os_unix warnings 43535a5: Fix vector stuck at capacity 1 3ca4b63: Refactor trailing highlight 7192116: Add lazy syntax highlighting cf523ff: Fix top status not drawing when loading adf76f9: CI: Update versions
  • a177799 package/ingenic-lib: update to 99ed33f Update ingenic-lib from 9bfe42f to 99ed33f Hash change: 9bfe42f4a20c65eefd33c509abfa38e383b4119f -> 99ed33fd55fdf4fdfaa378a0924c5c6a7a31943b Changelog: eb21d4c: Add T32 libs 99ed33f: T32: fix paths
  • 7c499e6 package/faac: update to 167b5eb Update faac from 9051425 to 167b5eb Hash change: 9051425048baeaa800d16b5e93ee63c3358ddd9b -> 167b5eb656c7f529faf565ead10ba0c67f5eb384 Changelog: 167b5eb: Fix TNS Decoder Rejection Bugs & Remove Obsolete Profiles (#106)
  • 7c45022 busybox: fix patches. it's either common or versioned, not a mixed bunch
  • 37d047c webui: add -m sha512 to mkpasswd calls for busybox compatibility
  • 9300c4c busybox: version custom patches for 1.37/1.38 Move 0102-custom-cgi-and-unresticted-subdirs.patch to a 1.37.0/ subdirectory (original version for busybox 1.37). Create a 1.38.0/ version with corrected hunk context for the httpd.c CGI dispatch code, which was refactored upstream.
  • 668ee5f Update buildroot to latest version
  • a83289e make: copy binary to tftp directory only if it's set
  • 643ca90 raptor: bump to 19804ef H.265 SDP fix (missing sprop-vps/sps/pps), refmode zerocopy send race fix, mock HAL refmode test infrastructure.
  • 1bb6981 u-boot: refactor as patches on top of a tagged release; increase alignment, reshape partitions
  • 06ba8b4 ir starts off, and assign correct gpio to it
  • 6da79c2 not required
  • a178029 build for vocolinc_vc1
  • 65f3ad0 add wifi-atbm6162s and wifi-atbm6162u packages
  • 5c2143b make: upload compiled image to tftp server encoded to the hex ip address bin if IP is present
  • 0e7fbb9 add button support. enable DMIC
  • 6fd675b vanhua_s62i_t40nn_imx307_eth: fix soc model
  • 028ae0e Update buildroot to latest version
  • d74ca15 wireguard: do not run if no active network connection
  • 91572ec mounts: do not run if no active network connection
  • ae1dc63 teach irled/ircut to read gpio from the device tree
  • 3ee3152 support toolchain for xburst1 with kernel 4.4
  • a53400c Update guided menu with motor config and path fixes
  • a316f02 Add Eufy T8416 (T40XP) camera profile and DTS
  • 2b8e9e8 Add Wyze Cam Pan v4 (T32NQ) camera profile and DTS Camera profile, extracted vendor DTS, and kernel DTS mapping for the Wyze Cam Pan v4 with T32NQ SoC, CV8001 sensor, and ATBM6162S WiFi.
  • 4d170cf Fix Raptor preview heartbeat fallback Use a shared web heartbeat helper so preview heartbeat CGI endpoints fall back to Raptor runtime data when the local agent reports backend none. This keeps the preview control bar in sync on Raptor builds instead of serving the null heartbeat payload. Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com
  • 543f87f package/thingino-uhttpd: adjust patch for updated codebase
  • 5061c0d package/thingino-uhttpd: update to 6ab9abb Update thingino-uhttpd from e619cb0 to 6ab9abb Hash change: e619cb04cddba8316d6928ff99f55a49e6ddc561 -> 6ab9abb56bcb28684f382f7a94c170fad02348ea Changelog: d255187: client: prevent transfer_chunked counter overflow 07f0afb: client: match Host and URL attributes exactly in tls_redirect_check 05406f7: file: scan all entries when matching If-Match / If-None-Match 81527e1: proc: restore default SIGPIPE disposition in spawned child 0df6257: ucode: initialize module search path only once 05317bf: proc: store CGI Status message per-client instead of in a shared buffer 1781b6d: utils, client: cast char to unsigned before passing to ctype functions 4221eb8: file: respond 500 on uh_handle_alias OOM 8e5b26f: file: distinguish parse failure from epoch in date precondition checks ced7b15: utils: fix one-byte overflow in uh_urldecode 53e7150: file: bail out of file_write_cb on read error 9343214: utils: remove unreachable return statement in uh_addr_rfc1918 add5389: utils: fix off-by-one out-of-bounds read in uh_b64decode 778ccbb: main: fix daemonization stdio redirection and fd leak 2c869c0: client: parse Content-Length safely 9404e6c: client: parse chunked transfer chunk size safely b33ca5d: auth: do not accept stored crypt hash as plaintext password 6fadf0d: auth: replace strcmp with constant-time password comparison 6ab9abb: cgi, file: fix crash due to field_len type mismatch with libubox
  • 52520fb package/thingino-nimble: update to 88454ec Update thingino-nimble from 13953b6 to 88454ec Hash change: 13953b6e9090e620640edf4c6ea8ffc2e46da6b4 -> 88454ec7f78fdf8ce69b1cfb7f2288251eb0bf82 Changelog: 10ed0ba: Fix kbuild Makefile parsing and translate garbled comments d0de306: Fixed compilation for 4.9.37 88454ec: Fixed compilation for 4.9.37
  • b369d3a package/lightnvr: update to 7442622 Update lightnvr from d5137dd to 7442622 Hash change: d5137dd822882ae336cd26b62d4db9c27601fa50 -> 7442622b3abbc8773a58b3b5c2162daeab39133b Changelog: 4b00947: chore(deps): bump @babel/plugin-transform-modules-systemjs (#418) ee05afb: Fix MP4 recorder watchdog heartbeats 5825bcf: Fix go2rtc override startup config 5c8d6e0: Fix partial llhttp fallback downloads 2777495: Fix WebRTC live audio toggle 0764829: Polish remaining UI issues 7a2c380: fix go2rtc source override reload c98ce3d: fix docker go2rtc lifecycle ownership 25d96bc: 0.34.6 9d65f33: docs: add Wyze go2rtc bridge example to override doc 3b84c72: Auto-retry player on connection loss for unattended dashboards (#419) 7a30aec: Chown per-stream recording subdirectories on entrypoint (#368) 7442622: Add reverse proxy and HTTPS deployment guide (#358)
  • b2bbb9e package/ingenic-sdk: update to ff16c63 Update ingenic-sdk from ad87be7 to ff16c63 Hash change: ad87be7044d24035edcd485c463190f2a5a9ce54 -> ff16c633c3fb81b24e8b0d7549773ec5232be469 Changelog: 8f91f97: add 116 new sensors to sinfo c7678e4: add sc3338 sensor to t40 from t41 ff16c63: t40: sync ISP sources with vendor SDK 1.3.1
  • 9e13d7c package/faac: update to 9051425 Update faac from 6858080 to 9051425 Hash change: 6858080dd1abf528d5a946066b9f71cc3d8e0b21 -> 9051425048baeaa800d16b5e93ee63c3358ddd9b Changelog: 82dfc42: quantize: restore short-window masking penalty to fix energy drops (#103) 9051425: fix: V-001 security vulnerability (#104)
  • cfb00c2 Update buildroot to latest version
  • 019e34f mdev: check for presence of /proc/sys/kernel/hotplug before writing
  • e054406 replace S99heartbeat daemon with agent runtime endpoint - Add heartbeat runtime resource to prudynt and null adapters - Add media runtime resource to both adapters (fixes 'unsupported runtime resource: media') - Rewrite json-heartbeat.cgi and json-heartbeat-slow.cgi to proxy from agent endpoint instead of reading daemon cache files - Remove agent heartbeat-disable logic from S95thingino-agent - S99heartbeat daemon no longer needed; kept .mk line commented
  • 52a071a webui(file-manager): add column sorting and file deletion - Make table columns sortable (name, size, permissions, date) with direction indicators; directories always stay on top - Add delete action to file actions modal for files on mounted partitions (/mnt, /media) using global confirm() dialog - Backend CGI enforces deletion restricted to mounted partitions and requires POST method
  • e610601 add patch to prerequisites, consolidate common packages.
  • 71d1720 prudynt: requires c++ lib
  • 6e5bafc wifi-rtl8189fs: drop wext
  • ac7a365 wifi-atmb6031: drop wext
  • df5938e makefile: remove bootloader ota upgrade
  • 4532082 raptor: bump to 16c4b6d (photo threshold runtime tuning)
  • aa39552 raptor-ipc: bump to 537bfcf (fix trace log level)
  • 7127db6 init: auto-format empty JFFS2 partitions on first boot
  • 0f63e79 raptor: bump to 2d0af71 (MXU link fix, IVS standalone build)
  • 5d4838b ingenic-lib: install MXU libs with persondet; persondet defaults to off
  • c3b1987 raptor-hal: bump to 9780eb1 (fix persondet ifdef, pass PERSONDET to HAL)
  • 840a3c4 raptor: expand IVS detect into submenu with JZDL, YOLOv5, persondet options
  • 40909b9 raptor: IVS detect selects persondet lib and models
  • 6dfde3f libsrt: add static libstdc++ option, auto-select libstdc++ for RSR and IVS
  • 71703e0 raptor-hal: fix commit hash
  • c76af53 raptor-hal: bump to d287851 (fix C++ build)
  • 1b9690b raptor: bump raptor, raptor-ipc, raptor-common
  • e209323 add BR2_THINGINO_LIBSTDCPP option to control libstdc++ on target
  • 2e73ec1 Force thingino-mosquitto-20x and mosquitto to C-only builds Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com
  • 80a7c56 wifi-atbm6012bx: drop wext
  • c39d1c2 wifi-atbm: bump all atbm-wifi packages master (88454ec): 6031, 6031x, 6032, 6032x, 6012b, 6012bx, 6132s, 6132u, atbm-wifi atbm-606x (11ca4da): 6062s, 6062u
  • dc5874a avpu: add SCLKA clock source option
  • 65a7a19 cameras-exp: wyzecam4 defconfig and uenv updates
  • f28b127 ingenic-sdk: bump to ad87be70 (os04d10 page select fix)
  • b91c3b5 wifi-atbm6062s: fix CFG80211 and kernel version handling
  • 57efbf8 ingenic-sdk: bump to 36f92453 (T41+T23 SDK updates, 33 new sensors, IQ bins)
  • 6ce622e cameras-exp: wyzecam4
  • 18c3c9e ingenic-sdk: bump to 2d343cd1 (T41 ISP fw 1.2.6, mpsys fw, 33 new sensors)
  • 44bf6ad libimp-debug: move to streamer packages
  • 42a8993 Update buildroot to latest version
  • feaebb6 Replace LED kernel prep scripts with shell Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com
  • 8d4e559 libcurl: remove telnet support, no longer needed
  • ccc7cdb webui: switch diagnostic upload from curl to nc
  • 36d6f64 send2termbin: switch from curl to nc to fix upload truncation
  • 0af4174 raptor: select libimp-debug
  • 402217f raptor: add sensor fps config for multi-sensor
  • f7d8c11 diag: add raptor.conf, libimp-debug, thingino.json header
  • 187fb26 bump ingenic-sdk with new T23 sensors
  • e1803ba jooan w8u: enable dual sensors and associated options
  • 3be3fa3 sort and reorganize Config.in sections
  • cc5aee0 reorganize SoC config menus
  • b04d554 kopt: default DWC2 to WiFi-only, add LED submenu
  • 14642ba fix usbnet config layout
  • cf58428 fix cloner config label
  • 72453e8 fix wifi module order
  • 5718cba kopt: add GPIO LED submenu, fix DWC2 choice default Wrap LED GPIO configs in a submenu for cleaner menuconfig layout. Change DWC2 USB mode default from OTG to WiFi-only to prevent USB networking and webcam packages from being pulled in on WiFi-only devices.
  • 39df905 raptor: add multi-sensor config, RTSP endpoints, fix RWC default Add multi-sensor support to Config.in.conf and conf.mk: - sensor0/sensor1 sections, MIPI switch, sensor1 streams/image - RTSP endpoint_s1_main/sub and endpoint_s2_main/sub with rset calls Fix RWC default to also cover BR2_THINGINO_DEV_WEBCAM devices. Remove stale MP3 flash size default (was removed from defconfig).
  • d3a2eba Convert wanjiaan HDC51 MMC profile to directory format Replace single-file wanjiaan_hdc51_t31l_sc2332-mmc0 with proper directory-format profile wanjiaan_hdc51_t31l_sc2332_rtl8188ftv_mmc. Adds camera overlay for MMC fw_env.config.
  • 470ac33 Add MMC/SD card boot support - Add MMC SD card image generation to Makefile, gated by BR2_PACKAGE_THINGINO_KOPT_MMC0_BOOT. Produces a complete SD image with INGE header, SPL, U-Boot, MBR partition table, and ext4 rootfs. - Add per-camera overlay directory support: configs/cameras//overlay/ is automatically appended to BR2_ROOTFS_OVERLAY if it exists. - Add mtools and parted to dep_check.sh for all distros.
  • 8e2499b Limit startup LED selector to available colors
  • 52cbe8e Fix json-gpio CGI for POSIX shell
  • 38a791f Add startup LED preference
  • 769a4d0 Move camera LED pins into defconfig
  • 280edda raptor: bump to 96785c9c1f3dcf6c381b8e6cd7c906fb849bd2e8
  • dbce39f raptor: add dual IR LED config options (gpio_irled2, ir850, ir940)
  • 5c48b3f Fix overlay/etc/init.d/S00blink jct invocation Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com
  • da6ce2b scripts: add package inventory updater Add scripts/update_package_inventory.py to regenerate docs/packages.md from package metadata and use UTC for Last checked timestamp. Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com
  • 86d67ae docs: add a list of thingino packages
  • 20b96ef overlay: fix boot script shell syntax errors Quote enable_failsafe env read and fix missing space in S00blink test expression to prevent boot-time shell errors. Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com
  • 79fcda3 thingino-raptor: use raptorctl for config reads Replace direct raptor.conf parsing in init/scripts with raptorctl config get and remove manual parsing fallbacks. Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com
  • 403c0c3 buildroot: fix libnl patching and disable unsupported ILA Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com
  • 32e8953 Update buildroot to latest version
  • 0051394 webui: replace editable gpio inputs with read-only textual information
  • 0a11466 webui: do not install heartbeat service
  • 2c47f45 wireguad: bump version and its hash
  • 6a886fa ha: disable firmware version sensor
  • 61d8c46 live555: update bundle source to a mirror
  • c12fc4c linux: move patches for 4.4 kernel to full version directory
  • f561983 add a variant of aoqee c1
  • d5f3770 clean up
  • de399cc package/thingino-onvif: update to be3fb34 Update thingino-onvif from 66602f3 to be3fb34 Hash change: 66602f31f747023f1a89a376beff9a123077da43 -> be3fb34907950be4f41b72f4e64805ec57f65e0c Changelog: be3fb34: Fix ONVIF media profile selection and encoder responses
  • 067b55d package/prudynt-t: update to f4b3228 Update prudynt-t from 3cb1621 to f4b3228 Hash change: 3cb1621fa7625b4d47b6de644d82bccc8f7f31b4 -> f4b32289359d176fb0795d9f3735af0bd9d6d2fd Changelog: 51bec07: Guard T20 advanced ISP tuning init e5da7af: reformat sources with default clang width ea3a2f0: ignore local toolchain 093fa78: upgrade to gcc15 toolchain in docker f4b3228: update build.sh (incomplete)
  • 413da4e F02failsafe: read enable_failsafe from u-boot env directly The variable was compared against itself instead of reading the actual u-boot environment value.
  • 472040a soc: strip qemu- prefix in print_soc_family The unanchored sed left the qemu- prefix intact, so soc -f returned qemu-t31 instead of t31. Scripts like usb-role that switch on the family string hit their Unknown SOC type branch inside QEMU.
  • 2e62e5e webui: fix WireGuard toggle error handling
  • e95899e webui: disable flash operations page for non-development builds
  • 69e0fd3 webui: make send2 page aware of services without media payloads
  • 2ff87d5 webui: refactor file manager
  • f50ab63 agent: include into default configuration
  • e918d77 sysupgrade: parse content-length case-insensitively Use a simple grep-based parser for Content-Length so lowercase HTTP headers from GitHub are handled correctly. Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com
  • f9ebb07 wifi: move wlan module unload to wired-gateway Stop unloading the Wi-Fi driver from S38wpa_supplicant, and perform wired-priority teardown in S40wired-gateway instead. Also render S40wired-gateway as a template so WLAN_MODULE_NAME is injected at build time. Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com
  • 753056c wireguard: add hash for 1.0.20250521 bundle
  • a7e019b webui: add reusable password reveal toggle Add a shared password-reveal helper and styles, then load it on web UI pages so password fields get a click-to-reveal eye icon. Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com webui: fold password reveal into common script Move password reveal toggle behavior into /a/main.js, remove per-page /a/password-reveal.js includes, and delete the standalone script file. Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com
  • f8f87c3 telegrambot: add allowed user ID filter Support filtering incoming messages by Telegram sender ID via a new allowed_user_ids config list, while keeping username filtering.

Also expose allowed_user_ids in telegrambot defaults and WebUI config page.

Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com

  • 3434272 package/prudynt-t: update to 3cb1621 Update prudynt-t from d6c6742 to 3cb1621 Hash change: d6c6742ce65583c7b35c387b275d122244904794 -> 3cb1621fa7625b4d47b6de644d82bccc8f7f31b4 Changelog: 3cb1621: update submodule
  • 881c60b package/prudynt-t: update to d6c6742 Update prudynt-t from f89af0c to d6c6742 Hash change: f89af0c6e5024954c378f50feeebc16410d812d9 -> d6c6742ce65583c7b35c387b275d122244904794 Changelog: d6c6742: update submodule