Skip to content

Releases: themactep/thingino-firmware

ccache

Choose a tag to compare

@github-actions github-actions released this 18 Jul 10:01

Rolling per-branch build ccache (compiler cache). Not a firmware release; do not flash.

firmware-2026-07-18

Choose a tag to compare

Changes in this release:

  • f433166 thingino-uboot: restore vendored SPL binaries after patching GNU patch cannot apply the binary diffs embedded in 0001-from-2013.07-to-thingino.patch, so spl/binary/*.bin ended up as zero-byte files in the patched U-Boot tree. Boards that use a prebuilt SPL (T31LC and Xiaomi MJSXJ03HL variants with CONFIG_XIAOMI_SPL) then got a firmware image with an empty SPL region, bricking the camera on flash. The correct blobs were already vendored into package/thingino-uboot/files/ (commit 58cda12) but nothing copied them into the source tree. Add a post-patch hook that restores them into spl/binary/ for the 2013.07 U-Boot. Verified: u-boot-with-spl.bin for xiaomi_mjsxj03hl_t31l_jxq03p_rtl8189ftv now begins with the 26624-byte t31_xiaomi_sfcnor.bin blob (Ingenic SPL magic 06 05 04 03 02 55 aa 55 aa) instead of zeros. Fixes: #1299 Signed-off-by: Paul Philippov paul@themactep.com
  • b613a31 package/prudynt-t: update to 879a387 Pulls in the simple-rtsp RTCP SR fix: SR NTP time is now derived from CLOCK_MONOTONIC instead of gettimeofday(), so NTP daemon clock steps on the camera no longer shift the NTP<->RTP mapping mid-session and flood multi-stream RTSP receivers (ffmpeg/Frigate) with 'Non-monotonic DTS' errors. Signed-off-by: Paul Philippov paul@themactep.com
  • 03a27bb sysupgrade: save on full erasing since we override entire chip now
  • 37d4042 package/prudynt-t: update to c026768 Update prudynt-t from e61ba27 to c026768 Hash change: e61ba2765f9f55b8a15da67cfdc8e3de6351d919 -> c0267682fd98498c1f183a4196e3d85963a97918 Changelog: 920b97c: SDP: add framesize attribute for H.264 video dimensions af55238: rtsp: fix buffering, bitstream corruption, and data-partitioning errors 04fcb06: remove legacy live555 RTSP code, replaced by simple-rtsp afc86c5: rtsp: add audio-only endpoint (/mic) to simple-rtsp server 52df6b0: audio: fix RTP timestamp backward jumps from NTP clock adjustments 26bf54c: rtsp: include git commit hash in SDP session title ac18bcf: build: always regenerate version.hpp to avoid stale commit hash fe8987f: audio: use IMP driver capture timestamp instead of CLOCK_MONOTONIC 5f9d57f: encoder: increase stream buffer size for high resolutions 5b2ec33: framesource: ensure ≥2 buffers for large frames (>4MB) 887a056: rtsp: add backchannel (talkback) support to simple-rtsp server 3643c44: backchannel: fix SDP to use single m=audio line with multiple PTs 9c448bd: backchannel: remove from DESCRIBE SDP, negotiate via ANNOUNCE only 091d5c9: backchannel: fix session gate so backchannel receive actually runs a1e08fd: backchannel: return Session header in ANNOUNCE response 48e66e6: rtsp: demote drain counters from LOG_DEBUG to LOG_DDEBUG bf93e3c: backchannel: add debug logging to SETUP handler 1a6d3f2: backchannel: add dispatch tracing to diagnose SETUP hang 403f0f6: rtsp: consume request body after parsing (fix ANNOUNCE SDP leak) c1ee4f5: backchannel: remove debug logging, feature complete 16bab4a: rtsp: suppress RTCP SR for backchannel-only sessions d943109: rtsp: add dedicated backchannel DESCRIBE response a9cdece: rtsp: always return backchannel SDP for /backchannel DESCRIBE 692a82e: fix: restore truncated generateBackchannelSdp call after sed mishap e837941: backchannel: add Opus codec support for WebRTC talkback 70435d3: backchannel: include in main /ch0 SDP, no ANNOUNCE required 280ea99: backchannel: detect track0 and /backchannel URI patterns in SETUP c24e787: audio: use NOBLOCK in IMP_AO_SendFrame to prevent speaker lockup 3d17a5b: backchannel: fix worker thread lifecycle and wakeup race b24823c: backchannel: flush audio output on session teardown 302a9d5: backchannel: use silence tail instead of abrupt flush on teardown 337c4a1: backchannel: use track0 control URL, match go2rtc's URL convention 5ddb106: backchannel: let audio output drain naturally, no silence tail 06c4c33: audio: revert NOBLOCK change, original BLOCK mode restored 151796f: backchannel: support TCP interleaved transport, capture from TCP stream 6a9884e: rtsp: allow PLAY for backchannel-only sessions 59d974e: backchannel: set backchannel=true on SETUP so PLAY succeeds 0ee059d: revert backchannel from main /ch0 SDP to fix go2rtc playback 4d03b7e: restore backchannel track0 in main SDP for MediaMTX testing ff83cee: sdp: add AAC fmtp config to backchannel tracks 57bdfd2: sdp: add channel count to OPUS rtpmap in backchannel tracks 88a8170: rtsp: only advertise backchannel when client sends ONVIF Require header 23384a0: backchannel: activate on PLAY per ONVIF Streaming Spec §5.3 c29aa12: fix onvif backchannel in simple-rtsp for go2rtc WebRTC 260ff6b: backchannel PR: revert IMPEncoder/IMPFramesource/MsgChannel/globals/VideoWorker to pre-PR 477b106: IMPEncoder: disable SetStreamBufSize/SetMaxStreamCnt on T31 d99cd1e: WS: fix build error from incomplete delay -> delay_us rename 590b204: docs: formatting 6d47fb4: rewrite standalone compilation 9fa3bba: ignore trash/ 150f4a1: docs: cleanup c026768: VideoWorker: derive frame end from last pack, T31 libimp never sets frameEnd
  • f0169fd ingenic-sdk: fix silently-dropped button (gpio-userkeys) config Commit 425637b switched the gpio-userkeys config generator from reading env.txt (which always wrote the module load file) to reading thingino.json via jct, guarded by 'if which jct'. Two problems made that silently drop the button config: - bare 'which jct' checks the host PATH for a target/host tool that is not guaranteed to be there, and a miss is swallowed with no error, so no /etc/modules.d/gpio-userkeys is written and physical buttons (reset, chime) do not work; - the package declared no dependency on host-thingino-jct, so even when the tool does end up on PATH there is no ordering guarantee that it exists when this step runs. Use the host jct by absolute path ($(HOST_DIR)/bin/jct) and error if it is missing, matching how prudynt-t already does it, and add host-thingino-jct to INGENIC_SDK_DEPENDENCIES. (cherry picked from commit 2d682b1) [backport to ciao: dropped the BR2_INGENIC_SDK_GPIO_USERKEYS guard, which belongs to the SDK-components refactor not present on this branch] Signed-off-by: Paul Philippov paul@themactep.com
  • 9b2fb95 package/timps: update to v1.3.3 Update timps from v1.3.0 to v1.3.3 Hash change: v1.3.0 -> v1.3.3 (No changelog available)
  • 87661f5 package/thingino-dfu: update to v1.5.30 Update thingino-dfu from v1.5.24 to v1.5.30 Hash change: v1.5.24 -> v1.5.30 (No changelog available)
  • e50e929 scripts: backchannel-test accepts IP argument
  • cdd8744 scripts: backchannel-probe accepts plain IP, shows full SDP scripts: backchannel-probe filters SDP, shows summary with codecs Parses the SDP and extracts only backchannel-relevant sections. Shows host, status, and per-track details: direction (recvonly/ sendonly/sendrecv), control URL, and supported codec list. Still accepts plain IP or full rtsp:// URL.
  • be95166 prudynt-t: change default H.264 profile from High to Main The Ingenic T31 encoder emits data-partitioned NALs (types 2/3/4) at High profile which FFmpeg cannot decode, causing 'data partitioning is not implemented' and cascading bitstream corruption errors. Main profile eliminates data partitioning while keeping CABAC and B-frames for equivalent compression efficiency.
  • 9ef4b3f prudynt-t: use override source git hash for version string Previously commit_tag was taken from the firmware repo, not the prudynt-t overrides directory. Now reads the short hash from PRUDYNT_T_OVERRIDE_SRCDIR first, falling back to the firmware repo for non-override builds.
  • 19dcf6d thingino-ffmpeg: add mp4 muxer, H.264/AAC parsers, BSFs, NFS copy Enable minimal remuxing support in the fallback (non-IPC/NVR/DEV) configuration so that stripped ffmpeg builds can from RTSP to MP4 segments. Previously only the segment muxer was compiled in, which delegates to an inner muxer (mp4) that wasn't available. Changes: - Enable mp4 muxer (needed by segment muxer for .mp4 output) - Enable h264 and aac parsers (frame boundary detection for muxer) - Enable h264_mp4toannexb and aac_adtstoasc BSFs (format conversion) - Fix protocol order: --enable-protocol=file after --disable-protocols so the file protocol survives the blanket disable - Add post-install hook to copy ffmpeg binary to /nfs/ Signed-off-by: Paul Philippov paul@themactep.com
  • 1aa0a24 package/prudynt-t: update to e61ba27 Update prudynt-t from c5ed7ca to e61ba27 Hash change: c5ed7ca708854acbd07e18e25e2f308709f8a6a5 -> e61ba2765f9f55b8a15da67cfdc8e3de6351d919 Changelog: e61ba27: fix h265: SDP fmtp, NAL header corruption, keyframe gate
  • e00aff6 Add backup-overlay target and script Add make backup-overlay IP= to pull /overlay/ from a running Thingino camera via SSH and store it as a timestamped tarball in a global backup directory (~/.thingino/backups by default). - scripts/backup_overlay.sh: detects camera IMAGE_ID, copies /overlay/, creates --.tar.gz - Makefile: THINGINO_BACKUP_DIR variable, backup-overlay target, help, show-vars entry - board.mk: exempt backup-overlay from camera selection requirement - docs/overlay-backup.md: usage, restore, troubleshooting - docs/makefile.md: documented the new target Signed-off-by: Paul Philippov paul@themactep.com fix backup-overlay: stream via SSH tar instead of scp scp -r with trailing /. fails on dropbear servers ("unexpected filename: ."). Also, scp runs as the scp user and cannot read files with mode 000 (e.g. crond.reboot). Switch to streaming tar+gzip directly over SSH. The camera-side tar runs as root and reads all files regardless of local permissions. Signed-off-by: Paul Philippov paul@themactep.com
  • d5fa9b1 cameras: move smart_nvr_a1n_eth to experimental
  • ddb7447 cameras: move wanji...
Read more

buildroot-dl-cache

Choose a tag to compare

@github-actions github-actions released this 15 Jul 07:33

Rolling buildroot download cache. Last updated 2026-07-29 (1880624).

firmware-2026-07-14

Choose a tag to compare

Changes in this release:

  • d5fa9b1 cameras: move smart_nvr_a1n_eth to experimental
  • ddb7447 cameras: move wanjiaan_hdc51_t31l_sc2332_rtl8188ftv_mmc to experimental
  • 95902dc cameras: move iget_c5pt_t41lq_gc4023_jl110 to experimental
  • 2113702 package/lightnvr: update hash and license file for v0.36.2 Hash file was stale (referenced 0.35.3). Updated to match LIGHTNVR_VERSION = 0.36.2. Also fixed license file reference from COPYING to LICENSE to match upstream rename. Signed-off-by: Paul Philippov paul@themactep.com
  • 6beb50e dep_check: add swig to required packages

firmware-2026-07-13

Choose a tag to compare

Changes in this release:

  • d5fa9b1 cameras: move smart_nvr_a1n_eth to experimental
  • ddb7447 cameras: move wanjiaan_hdc51_t31l_sc2332_rtl8188ftv_mmc to experimental
  • 95902dc cameras: move iget_c5pt_t41lq_gc4023_jl110 to experimental
  • 2113702 package/lightnvr: update hash and license file for v0.36.2 Hash file was stale (referenced 0.35.3). Updated to match LIGHTNVR_VERSION = 0.36.2. Also fixed license file reference from COPYING to LICENSE to match upstream rename. Signed-off-by: Paul Philippov paul@themactep.com
  • 410a92b package/timps: update to v1.3.0 Update timps from v1.2.0 to v1.3.0 Hash change: v1.2.0 -> v1.3.0 (No changelog available)
  • 50a10fa package/prudynt-t: update to c5ed7ca Update prudynt-t from abfe235 to c5ed7ca Hash change: abfe235d15ed3204b2ef65e295130efb99478c1c -> c5ed7ca708854acbd07e18e25e2f308709f8a6a5 Changelog: c5ed7ca: docs: document go2rtc WebRTC failure and MediaMTX solution
  • 5e2ed14 package/prudynt-t: update to abfe235 Update prudynt-t from eef3495 to abfe235 Hash change: eef3495dde26dd39547dbaa08ffea29c9c71404b -> abfe235d15ed3204b2ef65e295130efb99478c1c Changelog: f665ef5: rtsp: fix RTP stream corruption on TCP interleaved and UDP 3f3b7f9: clean up live555 abfe235: stream profile selector
  • f098c4b package/timps: add Tiny IMP Streamer as new streamer backend Add timps (https://github.com/Lu-Fi/timps) — a minimal, dependency-light RTSP / fMP4 / MJPEG streamer for Ingenic SoC IP cameras. Built straight on vendor libimp with no live555, libconfig, libwebsockets, or libschrift. Plumbing: - BR2_PACKAGE_THINGINO_STREAMER_TIMPS choice option in streamer Config.in - Package Config.in gated behind the streamer choice - STREAMER mapping in thingino.mk - Excludes a1 SOC family - Optional features: FAAC audio, control API, day/night detection, TLS (mbedTLS), SRT output (libsrt) Missing strero STREAMER mapping in thingino.mk fixed alongside. package/timps: pin source to tag v1.2.0 instead of tracking main branch
  • e4f3c52 package/prudynt-t: update to eef3495 Update prudynt-t from c69ac52 to eef3495 Hash change: c69ac52159359a4d5d091861adce7c16e35805c9 -> eef3495dde26dd39547dbaa08ffea29c9c71404b Changelog: 76a87bd: rtsp: fix profile-level-id in SDP using wrong SPS byte offset f1fbcdf: h264: normalize SPS/PPS nal_ref_idc from 1 to 3 for parser compatibility 4adb6ae: rtsp: add UDP support 0388257: rtsp: fix CSeq parsing eef3495: rtsp: force profile level to High 5.0 for go2rtc compatibility
  • 40e7180 package/prudynt-t: update to c69ac52 Update prudynt-t from 9caa023 to c69ac52 Hash change: 9caa02301d7869b658e064138cb25d73878410d7 -> c69ac52159359a4d5d091861adce7c16e35805c9 Changelog: f47a779: rtsp: fix false 're-config detected' on initial RTSP session 8a94707: daynight: decay confirm counters instead of resetting on hysteresis b311982: daynight: register missing night_count_threshold and day_count_threshold config keys c69ac52: t23: suppress unused-function warning for cleanup_stale_t23_isp_state
  • df59cc5 package/prudynt-t: update to 9caa023 Update prudynt-t from 3414c59 to 9caa023 Hash change: 3414c59f95d9e0ff83955a62d27b654467fd47dd -> 9caa02301d7869b658e064138cb25d73878410d7 Changelog: 9caa023: rtsp: fix false 're-config detected' on initial RTSP session
  • 384a8bc package/thingino-motors: update to 10c46de Update thingino-motors from a4ba420 to 10c46de Hash change: a4ba420815944ec10612697ba1d21f98aef49a16 -> 10c46de54c07de903d9b72e3d784e74e8981aad4 Changelog: 10c46de: motor.json is deprecated in favor of thingino.json
  • a4a4ec7 agents: add note about grepping output
  • 007027e package/prudynt-t: update to 3414c59 Update prudynt-t from 97dc70a to 3414c59 Hash change: 97dc70a6f6eb0b173d86f77b323fef654548daeb -> 3414c59f95d9e0ff83955a62d27b654467fd47dd Changelog: 3414c59: rtsp: add missing AAC config= parameter to SDP fmtp line
  • 334a825 package/ingenic-sdk: update to bcd2e09 Update ingenic-sdk from b7a7e79 to bcd2e09 Hash change: b7a7e7910d0b53ea522fbc75e1d444a7376afdf7 -> bcd2e09c024e821fe30f8917da0dcb664a00d8fd Changelog: bcd2e09: fix files permissions
  • 6aea1b1 send2ntfy: allow to use non-standard server port
  • 67c6780 rename per-camera uenv.txt files from .uenv.txt to uenv.txt Each camera directory in configs/cameras/ and configs/cameras-exp/ now contains a plain uenv.txt instead of a .uenv.txt file. The per-camera directory already scopes the file, so the camera name prefix was redundant. Updated references: - Makefile: U_BOOT_ENV_TXT dependency and grep rule - Makefile.guided: edit-uenv target and interactive menu - scripts/tabulate_gpio.py: glob pattern and model extraction - docs: AGENTS.md, local-build-settings.md, adding-kernel-4.4-camera.md, firmware-image-structure.md Not renamed (unchanged): - configs/common.uenv.txt (shared base, not per-camera) - user/*/local.uenv.txt (user override files) Signed-off-by: Paul Philippov paul@themactep.com
  • c0fe6be cameras: reorder content of defconfigs alphabetically
  • 5fe28b2 wyze v2: add missing flash size
  • 1752b59 agents: explicitly deny whole home searches
  • dd11adc agents: remove deprecated motors.json
  • cac8ea3 config-network: fix hostname pattern attribute for unicodeSets (v flag) The pattern [A-Za-z0-9.-]+ fails under the v (unicodeSets) regex flag used by modern browsers for HTML pattern validation. The unescaped hyphen and dot cause a SyntaxError when the input field is focused. Escape both characters: [A-Za-z0-9-.]+ Signed-off-by: Paul Philippov paul@themactep.com
  • e26f1dd dropbear: wtmp patch for v2025.89
  • 311a7cf make: correct dfu command arguments
  • 02b6033 formatting and clean up
  • 5373de8 prune motor.json files and references
  • 21798e7 document compiling a pristine image w/o user files
  • 7302720 fix onvif notify server start
  • e65bfe8 fix wireless portal start
  • 45723db make: retrieve camera image config name from the camera with just IP= provided
  • f094f04 strero: reformat config, update defaults
  • ffdd029 clean up
  • 09578a7 clean up
  • 3a9f001 extract ipv6 support and bind it to BR2_PACKAGE_THINGINO_KOPT_IPV6, enabled by default fix: create if-down.d directory before IPv6 odhcp6c symlink The THINGINO_KOPT_INSTALL_TARGET_CMDS_IPV6 block installs odhcp6c into if-up.d (which -D creates on demand) but then tries to symlink it into if-down.d without ensuring that directory exists, causing: ln: failed to create symbolic link '.../if-down.d/odhcp6c': No such file or directory Add mkdir -p for if-down.d before the ln -sf. Signed-off-by: Paul Philippov paul@themactep.com fix: also create interfaces.d directory for IPv6 eth0 config Following up on the if-down.d fix, the echo append to interfaces.d/eth0 also fails when the directory doesn't exist yet in the per-package staging area (the overlay provides it later). Add interfaces.d to the mkdir -p alongside if-down.d. Signed-off-by: Paul Philippov paul@themactep.com
  • 6f130b9 fix sysctl error net.netfilter/nf_conntrack_max is an unknown key
  • 696ddcc clean up
  • 6b404a8 jct: switch to a release bundle
  • edd5fdb wpa_supplicant: convert thingino package to a buildroot package override
  • 57b24bf webui: clean up, update gain reading
  • ba09f11 prudynt: update patches
  • 6beb50e dep_check: add swig to required packages
  • 86908fe package/thingino-dfu: update to v1.5.24 Update thingino-dfu from v1.5.22 to v1.5.24 Hash change: v1.5.22 -> v1.5.24 (No changelog available)
  • 15ddd6d changes for mainline u-boot
  • 8ab9fdb add hugolog e5p dts
  • 8f09acc clean up
  • 6d09501 cameras: add/update profiles
  • ddac3fa dfu: does not have --reboot argument
  • 05bf50b make: regenerate env.txt on rebuilding
  • 26b2a65 strero: pass DEBUG_STRIP=0 for unstripped dev binary Keeps symbol table and debug_info in the build output and NFS copy. The firmware image binary is still stripped by Buildroot's post-build step, so flash size is unaffected. Signed-off-by: Paul Philippov paul@themactep.com
  • 039c017 strero: drop libaudioProcess dependency from audio module The Ingenic IMP audio API (IMP_AI_, IMP_AENC_) is provided by libimp.so, not libaudioProcess.so. Removing the unnecessary -l link drops the transitive libstdc++ dependency, saving ~1.7MB RAM and eliminating the need for BR2_THINGINO_LIBSTDCPP. Signed-off-by: Paul Philippov paul@themactep.com
  • 581c255 strero: enable audio support for wyze_cam3 - Add BR2_PACKAGE_STRERO_AUDIO=y to wyze_cam3 defconfig - Add select BR2_THINGINO_LIBSTDCPP for STRERO_AUDIO (libaudioProcess.so requires libstdc++) - Add NFS copy to strero.mk INSTALL_TARGET_CMDS for dev iteration Also fix audio module compile errors in overrides: - Add #include for common.h (IMP_LOG macros) - Fix rtsp_frame_callback signature mismatch between .h and .c Signed-off-by: Paul Philippov paul@themactep.com
  • 66dad44 strero: remove broken __ctype_b_loc/__ctype_tolower_loc stubs The glibc_uclibc_compat.c defined stub __ctype_b_loc() and __ctype_tolower_loc() that returned pointers to NULL ctype tables. These were compiled as global symbols into the streamer binary, interposing on uClibc-ng's native working implementations. When libjct.so called isdigit() via __ctype_b_loc, it got the broken stub -> dereferenced NULL ctype table -> SIGSEGV at address 0x62 (character '1' offset * 2 from NULL). Fix: remove the stubs entirely. uClibc-ng already provides both functions with properly initialized C locale ctype tables. The musl path (uclibc_musl_shim.c) is unchanged — it needs its own implementations since musl doesn't provide these _loc variants. Signed-off-by: Paul Philippov paul@themactep.com
  • 051578f package/thingino-dfu: update to v1.5.22 Update thingino-dfu from v1.5.20 to v1.5.22 Hash change: v1.5.20 -> v1.5.22 (No changelog available)
  • f1a0a85 merge motors.json into thingino.json
  • 4799810 websockets: patches for v4.5.8
  • 27c804c webui: OSD element editor in preview modal, loopback fix, flex layout
  • 2a83731 docs: update SEI reference and overlay doc...
Read more

firmware-2026-06-22

Choose a tag to compare

Changes in this release:

  • efc921c package/esp-microspeech-features: add into the tree
  • 907bfb6 package/zerotier-one: add .hash file
  • 7277e9f package/usrsctp: add .hash file, fix license file name
  • a4e789a package/nino: switch to a release tarball
  • 15372a2 package/llhttp: add .hash file
  • e95afb5 package/libsrt: bump version, add .hash file
  • 30c39fb package/libschrift: switch to a release tarball
  • 3300d5f package/libpeer: add .hash file
  • e183d57 package/libjuice: add .hash file
  • ba8fd67 package/esp-microspeech-features: add .hash file
  • dafd65b package/libhelix-mp3: switch to a release tarball
  • cc2fcd8 package/libhelix-aac: switch to a release tarball
  • ab06f87 package/libdatachannel: delete unused patch
  • fe33517 package/flac: switch to a release tarball
  • 3f60a21 package/libpeer: fix outdated cmake, fix mbedtls rng callback
  • 88d88eb wire plog package into the tree
  • 148bed5 package/usrsctp: configure for modern cmake (fix compilation)
  • d53eb95 package/plog: add package (libdatachannel dependency)
  • 352ba07 package/libdatachannel: switch to a release tarball
  • c37f972 package/ingenic-tflite-micro: add .hash file
  • 2d75281 package/go2rtc: add .hash file
  • 8105fd7 package/faac: add .hash file
  • d9fc68c package/libnl: update patches for 3.12.0
  • 15c3f20 package/lightnvr: pin to the latest release tarball
  • 93621fb package/lightnvr: gate the package for kernels older than 4.4
  • c35a2f9 package/zerotier-one: update to 1.16.2 - switch the package to use a release bundle - versioned patches - update pathes for 1.16.2 codebase
  • a123a5f package/faac: switch to a release
  • 0f9909c ignore .pyc files
  • 4eba404 package/zerotier-one: update to 1.16.2 Update zerotier-one from 1.16.0 to 1.16.2 Hash change: 1.16.0 -> 1.16.2 (No changelog available)
  • c606175 package/thingino-wolfssl: update to v5.9.1- Update thingino-wolfssl from v5.7.4- to v5.9.1- Hash change: v5.7.4-stable -> v5.9.1-stable (No changelog available)
  • 1faaea0 package/thingino-uhttpd: update to 7b1bec4 Update thingino-uhttpd from 1b624f8 to 7b1bec4 Hash change: 1b624f8f814ed568608d756512892416e0431d77 -> 7b1bec45826bd78c8afc993435bdc0f1df2fe399 Changelog: ae015e0: client: reject unhandled Transfer-Encoding values b78f518: client: close connection on invalid chunk length 7b1bec4: ubus: close connection on POST body parse error
  • a3ee743 package/thingino-dfu: update to v1.1.1 Update thingino-dfu from v1.1.0 to v1.1.1 Hash change: v1.1.0 -> v1.1.1 (No changelog available)
  • e482838 package/subzeroclaw: update to 43beed7 Update subzeroclaw from d287552 to 43beed7 Hash change: d287552cf4439a9d83609d8702e53baf4bcab032 -> 43beed78056eec48aa995f22292f5e35515fa917 Changelog: c070b73: feat: optional SUBZEROCLAW_REQUEST_EXTRA request-body override (#12) abc36d6: refactor: drop bundled watchdog; supervision is the deployment's job (supersedes #13) (#14) 43beed7: Fix heap overflow in tool_execute output read loop (#16)
  • 05d4224 package/llhttp: update to v9.4.2 Update llhttp from v9.2.1 to v9.4.2 Hash change: v9.2.1 -> v9.4.2 (No changelog available)
  • ee7cfb6 package/lightnvr: update to fa948ba Update lightnvr from 4a2a245 to fa948ba Hash change: 4a2a245bbb2df116eda8f365aafb0b9ab3790b10 -> fa948ba0e7096ed24421a399b13bb14b007a634b Changelog: 0c5c4de: fix(onvif): recognize env:Body namespace prefix in SOAP responses fa948ba: fix(js): resolve CodeQL quality warnings in frontend JS
  • 69c2cd5 package/libsrt: update to v1.5.5- Update libsrt from v1.5.4 to v1.5.5- Hash change: v1.5.4 -> v1.5.5-rc.2 (No changelog available)
  • 88ec802 package/libjuice: update to v1.7.2 Update libjuice from v1.7.0 to v1.7.2 Hash change: v1.7.0 -> v1.7.2 (No changelog available)
  • 67c5c22 package/libdatachannel: update to v0.24.5 Update libdatachannel from v0.24.0 to v0.24.5 Hash change: v0.24.0 -> v0.24.5 (No changelog available)
  • 8d99676 package/go2rtc: update to v1.9.14 Update go2rtc from v1.9.12 to v1.9.14 Hash change: v1.9.12 -> v1.9.14 (No changelog available)
  • 6dfa553 package/esp-microspeech-features: update to v1.2.3 Update esp-microspeech-features from v1.1.0 to v1.2.3 Hash change: v1.1.0 -> v1.2.3 (No changelog available)
  • df18be5 jooan a6m: toggle wifi gpio to wake up the module
  • 52210e8 fix(color): swap imp-control on/off to ispmode 0/1 imp-control color on maps to running_mode=1 (monochrome) and imp-control color off maps to running_mode=0 (color), the opposite of what the command names suggest. Switch to imp-control ispmode 0 and ispmode 1 so the code reads correctly: ispmode 0 = color, ispmode 1 = monochrome. Signed-off-by: Paul Philippov paul@themactep.com
  • a85f8c7 container: check for updated image; add a target to clean image/containers
  • 263bd69 u-boot: update thingino patch
  • b8a5fcc container: mount external THINGINO_USER_DIR into build container Detect when THINGINO_USER_DIR is set to a path outside the workspace and mount it into the container at /user-dir with the corresponding env var override. Handles PRISTINE (/dev/null), default (workspace/user/), and in-workspace custom paths. Signed-off-by: Paul Philippov paul@themactep.com
  • 394b98a prudynt: restore passwordless access to the api from localhost
  • c8e5b11 thingino-dfu: pin to a release
  • 6e096c2 docker: switch to prebuilt GHCR image Use ghcr.io/themactep/thingino-builder-image:latest instead of building the container image locally from the repo Dockerfile. - Pull image from GHCR instead of local build - Remove USERNAME variable (matches prebuilt image) - Add CONTAINER_PREBUILD workaround for uutils install issue: prebuilt image ships coreutils-from-uutils which breaks Buildroot dependency check - Update rebuild-image to pull instead of rebuild Signed-off-by: Paul Philippov paul@themactep.com docker: fix target passthrough to container make The TARGETS variable was set via $(eval) at parse time when $(MAKECMDGOALS) was not yet available, causing it to silently default to 'all' regardless of the requested target (e.g. cleanbuild, dev). Pass $(MAKECMDGOALS) directly to the container make command instead. Signed-off-by: Paul Philippov paul@themactep.com
  • 812eae0 Revert "libnl: force automake API version 1.17 for debian:trixie builder" This reverts commit 44b392f.
  • 539ee4b Merge branch 'ciao' into q5-ov2735b-16mb
  • 0a78737 u-boot: update custom repo
  • af12ff6 make: wire flash type selection
  • fe9457d make: refactor conditionals
  • 2b4eebb docs: update documentation
  • b3f7b13 formatting
  • 7966e4f ai: add onboarding docuemnt for agents
  • 32e6c6d cameras: add .dts files from master
  • 7160e85 cameras: simplify gpio notation in json configs
  • dfc8275 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
  • 4e48fa4 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
  • c9bfb33 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
  • ee0f327 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
  • 169b588 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
  • 2e0820a 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
  • 1df8c38 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
  • 4861875 package/wifi-atbm6012bx: update to 380838e Update wifi-atbm6012bx from 88454ec to 380838e Hash change: 88454ec7f78fdf8ce...
Read more

firmware-2026-06-17

Choose a tag to compare

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 hidde...
Read more

firmware-2026-06-16

Choose a tag to compare

Changes in this release:

  • 6e096c2 docker: switch to prebuilt GHCR image Use ghcr.io/themactep/thingino-builder-image:latest instead of building the container image locally from the repo Dockerfile. - Pull image from GHCR instead of local build - Remove USERNAME variable (matches prebuilt image) - Add CONTAINER_PREBUILD workaround for uutils install issue: prebuilt image ships coreutils-from-uutils which breaks Buildroot dependency check - Update rebuild-image to pull instead of rebuild Signed-off-by: Paul Philippov paul@themactep.com docker: fix target passthrough to container make The TARGETS variable was set via $(eval) at parse time when $(MAKECMDGOALS) was not yet available, causing it to silently default to 'all' regardless of the requested target (e.g. cleanbuild, dev). Pass $(MAKECMDGOALS) directly to the container make command instead. Signed-off-by: Paul Philippov paul@themactep.com
  • 812eae0 Revert "libnl: force automake API version 1.17 for debian:trixie builder" This reverts commit 44b392f.
  • 539ee4b Merge branch 'ciao' into q5-ov2735b-16mb
  • 0a78737 u-boot: update custom repo
  • af12ff6 make: wire flash type selection
  • fe9457d make: refactor conditionals
  • 2b4eebb docs: update documentation
  • b3f7b13 formatting
  • 7966e4f ai: add onboarding docuemnt for agents
  • 32e6c6d cameras: add .dts files from master
  • 7160e85 cameras: simplify gpio notation in json configs
  • dfc8275 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
  • 4e48fa4 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
  • c9bfb33 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
  • ee0f327 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
  • 169b588 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
  • 2e0820a 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
  • 1df8c38 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
  • 4861875 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
  • 02f4d23 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
  • 38961be 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
  • af73216 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
  • 7f111a5 package/open-tx-isp: update to 130d9b9 Update open-tx-isp from d2760bf to 130d9b9 Hash change: d2760bfe62a00ee24cd36447d8c9f1b7972b06bd -> 130d9b94b3ddecc0c195913f828f2fee75d562d4 Changelog: f138d68: Add T40 recovered ISP driver workspace 7d85fef: Major t40 milestone -- sensor data displayed and one IRQ active -- day 3 7b89a7d: Check pt 34a8bcb: both interrupt sets active 5fa2739: check pt 70e58c2: Restore T40 RTSP real frame data 2a9e3a7: Document T40 tuning hurdle study 02d049a: Add guarded T40 color path register snapshot afe6070: Document T40 color snapshot read hazard 04b0e5d: Add forced T40 Bayer sweep control 80d3fc4: Add T40 CSC and color-init probes 9203249: Document T40 color probes and fix snapshot windows fa51c09: Add guarded T40 neutral UV diagnostic b131b1f: Add T40 raw qbuf dump probes 01a72ad: Add T40 safe qbuf dump smoke script 5799793: Avoid full T40 proc read in qbuf dump smoke d3baff8: Use stable T40 qbuf fallback for raw dump smoke 3f42e78: Build T40 qbuf dump helper static 1a2e752: Document T40 raw qbuf chroma finding 1604b92: Track T40 dual qbuf neutral UV probe b2fc36e: Promote T40 minimal BCSH top baseline 5a3022e: Probe T40 CSI settle timing cd31296: Correct T40 VIC snapshot base f98ece4: Use stock T40 Bayer phase in qbuf probe 3b915e7: Pin T40 VIC MDMA stride/fmt as dominant defect; add forensics + knobs 38e0cc7: Correct T40 root cause: OEM uses ISP MSCA channel FIFO, not VIC MDMA 53b885c: T40 MSCA-FIFO path works: banding gone via ring-off param, AE is next 8f47603: T40 AE: confirm AE never drives GC4653 over I2C; map the bridge gap ef48e50: T40 AE: decode GC4653 sensor ioctl ABI + in-driver wiring plan a71cd89: T40 AE: confirm EXPO cmd=0x2000006 + payload format from jump table 417a334: T40 AE: lock in verified GC4653 EXPO bridge, drop reboot-prone AE tick f831fce: T40 shear: capture MSCA core geometry; localize defect to scaler output 1cfa315: T40 3A: diagnose dead ISP stats loop as the ADR banding root cause c797dec: T40 3A: add stats fanout; confirm recovered bring-up runs no ISP sw init 8709a73: T40 3A: attempt block-init call (option 3) - blocked by missing param infra 94376a6: T40 3A: option-3 A - fix block-init arg; init fns need reconstruction repair db54848: T40 diamond: localize defect to UV path; add inspection workaround 967dcbe: T40 diamond: set top40 LCE bit21 for clean luma 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 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 re...
Read more

firmware-2026-06-08

Choose a tag to compare

Changes in this release:

  • f401a1a uhttpd: update patch to match the codebase
  • 14e86a8 package/thingino-uhttpd: update to 1b624f8 Update thingino-uhttpd from e619cb0 to 1b624f8 Hash change: e619cb04cddba8316d6928ff99f55a49e6ddc561 -> 1b624f8f814ed568608d756512892416e0431d77 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 1b624f8: auth: classify $p$ lookups by account state
  • 231badc 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
  • c4826b8 package/thingino-raptor-ipc: update to 537bfcf Update thingino-raptor-ipc from 8c68f61 to 537bfcf Hash change: 8c68f61f94fb88885b03c1fec9e14a9db89ac7a4 -> 537bfcf9159d8a270a0ad8cc96b5b3cf8d31d9bb Changelog: 64bf347: ipc: move shm_open fallback log to TRACE level 537bfcf: ipc: add TRACE level to default logger, filter trace messages by default
  • c4d58f0 package/thingino-raptor-hal: update to 1798e4e Update thingino-raptor-hal from 9efbea5 to 1798e4e Hash change: 9efbea55544ef6a0d77a1b5c244ff245b44d43ff -> 1798e4e30750c7904bd88c096b449fc914fa310c Changelog: d287851: fix C++ build: filter -std=c11 from CXXFLAGS, suppress missing-field-initializers 9780eb1: fix persondet: use ifdef PERSONDET instead of weak symbols 1798e4e: raptor-hal: add T10 platform support (aliases T20 SDK)
  • c616afd package/thingino-raptor-common: update to 2f29631 Update thingino-raptor-common from fe61fb7 to 2f29631 Hash change: fe61fb70b8750bf474fad379aa212767223aeef8 -> 2f296318891c61e131ef36c4296822d951b94698 Changelog: 2f29631: common: add rss_json_get_nested_int for nested JSON key lookup
  • 841a6f2 package/thingino-raptor: update to 19804ef Update thingino-raptor from 46dec1c to 19804ef Hash change: 46dec1cf0f1875ace895f6668f83cde602ab0173 -> 19804ef2ac8c0b7a1c0f0a3ddc72853046688ac0 Changelog: 52fa84c: rhd: remove blocking JPEG ring wait at startup ac90ecb: rac, rad: fix ring read throughput loss from wait-before-read 16ba95a: rod: add frame counter to OSD timestamp via %f format token d2b9297: ric: fix IR LED GPIO discovery, add dual LED support 96785c9: ric: fix strtol parse failure handling in thingino.json parser 130cc90: ric: rewrite thingino.json parser to use cJSON, add GPIO range check 36d3112: rsd-555: use LINK_STDCXX variable, fix live555 patch context 2d5009e: build: add --release, --static-stdcxx, shared lib support 435860e: readme: update RSR description, reorder repo list aae67eb: build: allow --clean-all without platform argument b98c0ab: readme: expand RMD description with IVS/JZDL/YOLO capabilities 684665b: readme: emphasize modularity 9baec27: readme: add T10 to supported platforms e256a44: build: add --ivs flag for IVS detection (persondet + JZDL + MXU libs) 6f52fb1: build: add IVS, STATIC_STDCXX, RELEASE to features display 2d0af71: fix persondet: link MXU libs with --no-as-needed, fix jzdl.m.so install path 203c4f9: rwd: apply webrtc connection fixes to share.html (max-bundle, connection state, beforeunload) 1d9edaa: ric: add photo thresholds to set-threshold and get-thresholds 16c4b6d: tests: fix mock stubs for daemon restart/shutdown (weak symbols) af6ca1d: rwd: add 5s timeout to ICE gathering in share.html 9827459: rod: fix format-truncation warning in template frame number 0e31ea1: build: fix exit code 1 when --static (no lib/ dir to list) 6dcddfa: rwd: support all 6 multi-sensor streams in WHIP endpoint a2052d6: rsd: fix H.265 SDP missing sprop params + refmode zerocopy send race 19804ef: tests: mock HAL frame production, slow client tests, SDP validation
  • 1a8a581 package/thingino-onvif: update to 37fa1ac Update thingino-onvif from 66602f3 to 37fa1ac Hash change: 66602f31f747023f1a89a376beff9a123077da43 -> 37fa1ac2f75b20859a8bcdd3b1b79725e0ad4ede Changelog: be3fb34: Fix ONVIF media profile selection and encoder responses bce89aa: onvif: ignore non-RTSP profiles 37fa1ac: fix profiles enumeration
  • 8677899 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
  • 4c55de4 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 d0de3...
Read more

firmware-2026-05-25

Choose a tag to compare

No changes, nightly rebuild