From 81f78dfaf8bb72e7c572f2f5cfe093085939aa88 Mon Sep 17 00:00:00 2001 From: Siddhant Saurabh Date: Thu, 26 Mar 2026 15:20:46 +0530 Subject: [PATCH 1/3] added_support_for_smitch360ptz --- README.md | 3 +- ...imate_smitch-360ptz-t5810hct-m02_defconfig | 85 +++++++++++++++++++ .../overlay/usr/share/openipc/customizer.sh | 28 ++++++ .../excludes/hi3518ev300_ultimate.list | 69 +++++++++++++++ 4 files changed, 184 insertions(+), 1 deletion(-) create mode 100644 devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/br-ext-chip-hisilicon/configs/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02_defconfig create mode 100644 devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/general/overlay/usr/share/openipc/customizer.sh create mode 100644 devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/general/scripts/excludes/hi3518ev300_ultimate.list diff --git a/README.md b/README.md index 588a4ea1b..a8be2a6eb 100644 --- a/README.md +++ b/README.md @@ -58,6 +58,7 @@ RunCam WiFiLink SSC338Q IMX415 NOR_16M done RVi-1NCMW2028 (2.8) HI3516EV300 SC2330 RTL8188FU_USB NAND testing Smartwares CIP-37210 HI3518EV200 OV9732 RTL8188FU_USB NOR_16M done Smartwares CIP-37210AT T21N JXF37 RTL8188FU_USB NOR_16M done +Smitch 360 PTZ HI3518EV300 JXF23 RTL8188FU_USB NOR_16M video-yes, wifi-yes, motors-no SpezVision SVI-252B K202 HI3516CV200 IMX323 - NOR_8M done Switcam HS303 v1 HI3518EV200 JXF22 RTL8188FU_USB NOR_16M done Switcam HS303 v2 HI3518EV200 OV9732 RTL8188EU_USB NOR_16M done @@ -176,7 +177,7 @@ cd builder ./builder.sh ``` -### Create firmware with built-in credentials +### Recreate firmware with built-in router credentials - Usage: `repack.sh [uboot] [firmware] [ssid] [pass]` ``` sh repack.sh ssc337de ssc337de_ultimate_foscam-x5-nor router password diff --git a/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/br-ext-chip-hisilicon/configs/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02_defconfig b/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/br-ext-chip-hisilicon/configs/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02_defconfig new file mode 100644 index 000000000..843c939c2 --- /dev/null +++ b/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/br-ext-chip-hisilicon/configs/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02_defconfig @@ -0,0 +1,85 @@ +# Architecture +BR2_arm=y +BR2_cortex_a7=y +BR2_ARM_EABI=y +BR2_ARM_FPU_NEON_VFPV4=y +BR2_ARM_INSTRUCTIONS_THUMB2=y + +# Toolchain +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y +BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/openipc/firmware/releases/download/$(OPENIPC_TOOLCHAIN).tgz" +BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="arm-openipc-linux-musleabi" +BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_9=y +BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL=y +BR2_TOOLCHAIN_EXTERNAL_CXX=y + +# Kernel +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_TARBALL=y +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/openipc/linux/archive/$(OPENIPC_KERNEL).tar.gz" +BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(EXTERNAL_VENDOR)/board/$(OPENIPC_SOC_FAMILY)/hi3518ev300.generic.config" +BR2_LINUX_KERNEL_UIMAGE=y +BR2_LINUX_KERNEL_XZ=y + +# Filesystem +BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/package/busybox/busybox.config" +BR2_PACKAGE_EXFATPROGS=y +BR2_PACKAGE_UBOOT_TOOLS=y +BR2_PACKAGE_ZLIB=y +BR2_PACKAGE_JSON_C=y +# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set +BR2_PACKAGE_IPTABLES=y +BR2_PACKAGE_MOSQUITTO=y +# BR2_PACKAGE_MOSQUITTO_BROKER is not set +BR2_PACKAGE_WIREGUARD_LINUX_COMPAT=y +BR2_PACKAGE_WIREGUARD_TOOLS=y +BR2_PACKAGE_WIRELESS_TOOLS=y +BR2_PACKAGE_WPA_SUPPLICANT=y +BR2_PACKAGE_WPA_SUPPLICANT_CLI=y +BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y +BR2_TARGET_ROOTFS_CPIO=y +BR2_TARGET_ROOTFS_SQUASHFS=y +BR2_TARGET_ROOTFS_SQUASHFS4_XZ=y +BR2_TARGET_ROOTFS_UBI=y +BR2_TARGET_ROOTFS_UBI_SUBSIZE=2048 +BR2_TARGET_ROOTFS_UBI_USE_CUSTOM_CONFIG=y +BR2_TARGET_ROOTFS_UBI_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/scripts/ubifs/ubinize_hisilicon.cfg" +BR2_TARGET_ROOTFS_UBIFS_LEBSIZE=0x1f000 + +# OpenIPC +BR2_OPENIPC_SOC_VENDOR="hisilicon" +BR2_OPENIPC_SOC_MODEL="hi3518ev300" +BR2_OPENIPC_SOC_FAMILY="hi3516ev200" +BR2_OPENIPC_VARIANT="ultimate" +BR2_OPENIPC_FLASH_SIZE="16" +BR2_OPENIPC_MAJESTIC="ultimate" + +# Packages +BR2_PACKAGE_DROPBEAR_OPENIPC=y +BR2_PACKAGE_EXFAT_OPENIPC=y +BR2_PACKAGE_HISILICON_OPENSDK=y +BR2_PACKAGE_HISILICON_OSDRV_HI3516EV200=y +BR2_PACKAGE_IPCTOOL=y +BR2_PACKAGE_JSONFILTER=y +BR2_PACKAGE_LAME_OPENIPC=y +BR2_PACKAGE_LIBCURL_OPENIPC=y +BR2_PACKAGE_LIBCURL_OPENIPC_CURL=y +# BR2_PACKAGE_LIBCURL_OPENIPC_PROXY_SUPPORT is not set +# BR2_PACKAGE_LIBCURL_OPENIPC_COOKIES_SUPPORT is not set +# BR2_PACKAGE_LIBCURL_OPENIPC_EXTRA_PROTOCOLS_FEATURES is not set +BR2_PACKAGE_LIBEVENT_OPENIPC=y +BR2_PACKAGE_LIBOGG_OPENIPC=y +BR2_PACKAGE_LIBWEBSOCKETS_OPENIPC=y +BR2_PACKAGE_MAJESTIC_FONTS=y +BR2_PACKAGE_MAJESTIC_WEBUI=y +BR2_PACKAGE_MAJESTIC=y +BR2_PACKAGE_MBEDTLS_OPENIPC=y +BR2_PACKAGE_OPUS_OPENIPC=y +BR2_PACKAGE_OPUS_OPENIPC_FIXED_POINT=y +BR2_PACKAGE_QUIRC_OPENIPC=y +BR2_PACKAGE_RTL8188FU_OPENIPC=y +BR2_PACKAGE_VTUND_OPENIPC=y +BR2_PACKAGE_YAML_CLI=y +BR2_PACKAGE_ZEROTIER_ONE=y diff --git a/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/general/overlay/usr/share/openipc/customizer.sh b/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/general/overlay/usr/share/openipc/customizer.sh new file mode 100644 index 000000000..6447c5a85 --- /dev/null +++ b/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/general/overlay/usr/share/openipc/customizer.sh @@ -0,0 +1,28 @@ +#!/bin/sh +# +# Perform basic settings on a known IP camera +# +# +# Set sensor +# +fw_setenv sensor jxf23 +# +# Set custom upgrade url +# +fw_setenv upgrade 'https://github.com/OpenIPC/builder/releases/download/latest/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02-nor.tgz' +# +# Set custom majestic settings +# +cli -s .video0.codec h264 +cli -s .audio.enabled true +cli -s .audio.codec opus +cli -s .audio.volume 30 +cli -s .audio.srate 48000 +# +# Set wlan device +# +fw_setenv wlandev rtl8188fu-hi3518ev300-t5810hct-m02 +#fw_setenv wlanssid Router +#fw_setenv wlanpass 12345678 +# +exit 0 \ No newline at end of file diff --git a/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/general/scripts/excludes/hi3518ev300_ultimate.list b/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/general/scripts/excludes/hi3518ev300_ultimate.list new file mode 100644 index 000000000..1c7683bca --- /dev/null +++ b/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/general/scripts/excludes/hi3518ev300_ultimate.list @@ -0,0 +1,69 @@ +# +/etc/sensors/4l_sc223a_i2c_1080p.ini +/etc/sensors/5M_imx335.ini +/etc/sensors/bt656_720p.ini +/etc/sensors/camhi_imx307_i2c_4l_1080p.ini +/etc/sensors/gc1054_i2c_720p.ini +/etc/sensors/gc2053_i2c_1080p.ini +/etc/sensors/gc4653_i2c_4M.ini +/etc/sensors/imx307_i2c_2l_1080p.ini +/etc/sensors/imx335_i2c_4M.ini +/etc/sensors/jxf22_i2c_1080p.ini +/etc/sensors/jxf37_i2c_1080p.ini +/etc/sensors/sc200ai_i2c_1080p.ini +/etc/sensors/sc2231_i2c_1080p.ini +/etc/sensors/sc2232h_i2c_1080p.ini +/etc/sensors/sc2239_i2c_1080p.ini +/etc/sensors/sc223a_i2c_1080p.ini +/etc/sensors/sc2315e_i2c_1080p.ini +/etc/sensors/sc2335_i2c_1080p.ini +/etc/sensors/sc3235_i2c_3M.ini +/etc/sensors/sc4236_i2c_3M.ini +/etc/sensors/sp2305_i2c_1080p.ini +/etc/sensors/smtsec_imx307_i2c_4l_1080p.ini +/etc/sensors/jxh63_i2c_720p.ini +# +/etc/sensors/60fps/720p_imx307_i2c_2l.ini +/etc/sensors/WDR/5M_imx335.ini +/etc/sensors/WDR/imx335_i2c_4M.ini +/etc/sensors/iq/default.ini +/etc/sensors/iq/imx307.ini +/etc/sensors/iq/imx335.ini +/etc/sensors/iq/sc2232.ini +# +/usr/lib/sensors/libsns_f22.so +/usr/lib/sensors/libsns_f37.so +/usr/lib/sensors/libsns_gc2053.so +/usr/lib/sensors/libsns_gc4653_2l.so +/usr/lib/sensors/libsns_imx307.so +/usr/lib/sensors/libsns_imx307_2l.so +/usr/lib/sensors/libsns_imx335.so +/usr/lib/sensors/libsns_sc200ai.so +/usr/lib/sensors/libsns_sc2231.so +/usr/lib/sensors/libsns_sc2232h.so +/usr/lib/sensors/libsns_sc2239.so +/usr/lib/sensors/libsns_sc223a.so +/usr/lib/sensors/libsns_sc223a_4l.so +/usr/lib/sensors/libsns_sc2315e.so +/usr/lib/sensors/libsns_sc2335.so +/usr/lib/sensors/libsns_sc3235.so +/usr/lib/sensors/libsns_sc3335.so +/usr/lib/sensors/libsns_sc4236.so +/usr/lib/sensors/libsns_sp2305.so +/usr/lib/sensors/libsns_h63.so +# +/lib/modules/4.9.37/kernel/drivers/i2c/busses/i2c-tiny-usb.ko +/lib/modules/4.9.37/kernel/drivers/net/wireless/mediatek/mt7601u/mt7601u.ko +/lib/modules/4.9.37/kernel/drivers/scsi/scsi_mod.ko +/lib/modules/4.9.37/kernel/drivers/scsi/scsi_transport_fc.ko +/lib/modules/4.9.37/kernel/drivers/scsi/sd_mod.ko +/lib/modules/4.9.37/kernel/drivers/staging/rtl8188eu/r8188eu.ko +/lib/modules/4.9.37/kernel/drivers/usb/gadget/libcomposite.ko +/lib/modules/4.9.37/kernel/drivers/usb/gadget/function/u_ether.ko +/lib/modules/4.9.37/kernel/drivers/usb/gadget/function/u_serial.ko +/lib/modules/4.9.37/kernel/drivers/usb/gadget/function/usb_f_acm.ko +/lib/modules/4.9.37/kernel/drivers/usb/gadget/function/usb_f_ecm.ko +/lib/modules/4.9.37/kernel/drivers/usb/gadget/function/usb_f_mass_storage.ko +/lib/modules/4.9.37/kernel/drivers/usb/gadget/function/usb_f_rndis.ko +/lib/modules/4.9.37/kernel/drivers/usb/storage/usb-storage.ko +/lib/modules/4.9.37/kernel/fs/f2fs/f2fs.ko From dc8ef20d7e7af916b6bd6e96318b56af90ae9d51 Mon Sep 17 00:00:00 2001 From: AI Dev Date: Mon, 21 Sep 2026 09:36:48 +0000 Subject: [PATCH 2/3] smitch-360ptz: drop jsonfilter, restore the README heading, fix EOF newline BR2_PACKAGE_JSONFILTER was removed from every defconfig in #128 after firmware/#2304; it drags in libubox for nothing unless the device enables uqmi-openipc or wifibroadcast-ng, and this board enables neither. The repack.sh section heading was reworded in passing; that is unrelated to adding a device, so it goes back to what master has. The device-table row stays. customizer.sh was missing its trailing newline. --- README.md | 2 +- .../hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02_defconfig | 1 - .../general/overlay/usr/share/openipc/customizer.sh | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index a8be2a6eb..631d83c2a 100644 --- a/README.md +++ b/README.md @@ -177,7 +177,7 @@ cd builder ./builder.sh ``` -### Recreate firmware with built-in router credentials +### Create firmware with built-in credentials - Usage: `repack.sh [uboot] [firmware] [ssid] [pass]` ``` sh repack.sh ssc337de ssc337de_ultimate_foscam-x5-nor router password diff --git a/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/br-ext-chip-hisilicon/configs/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02_defconfig b/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/br-ext-chip-hisilicon/configs/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02_defconfig index 843c939c2..4518490f6 100644 --- a/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/br-ext-chip-hisilicon/configs/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02_defconfig +++ b/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/br-ext-chip-hisilicon/configs/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02_defconfig @@ -62,7 +62,6 @@ BR2_PACKAGE_EXFAT_OPENIPC=y BR2_PACKAGE_HISILICON_OPENSDK=y BR2_PACKAGE_HISILICON_OSDRV_HI3516EV200=y BR2_PACKAGE_IPCTOOL=y -BR2_PACKAGE_JSONFILTER=y BR2_PACKAGE_LAME_OPENIPC=y BR2_PACKAGE_LIBCURL_OPENIPC=y BR2_PACKAGE_LIBCURL_OPENIPC_CURL=y diff --git a/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/general/overlay/usr/share/openipc/customizer.sh b/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/general/overlay/usr/share/openipc/customizer.sh index 6447c5a85..aa83eb2f0 100644 --- a/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/general/overlay/usr/share/openipc/customizer.sh +++ b/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/general/overlay/usr/share/openipc/customizer.sh @@ -25,4 +25,4 @@ fw_setenv wlandev rtl8188fu-hi3518ev300-t5810hct-m02 #fw_setenv wlanssid Router #fw_setenv wlanpass 12345678 # -exit 0 \ No newline at end of file +exit 0 From 1d3874418a5bd565c9a248464610844578224920 Mon Sep 17 00:00:00 2001 From: AI Dev Date: Mon, 21 Sep 2026 11:03:41 +0000 Subject: [PATCH 3/3] smitch-360ptz: point UBI at the ubinize config that exists MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The defconfig referenced $(BR2_EXTERNAL)/scripts/ubifs/ubinize_hisilicon.cfg, which is not in the firmware tree — the two devices that use that name each ship their own copy under general/scripts/ubifs/, and this profile did not. The build got as far as rootfs.ubifs and then died with sed: can't read .../general/scripts/ubifs/ubinize_hisilicon.cfg The UBI target itself is wanted: CI publishes both a -nor.tgz and a -nand.tgz for these ultimate profiles, and the nand repack consumes rootfs.ubi. Switched to the in-tree ubinize.cfg, which is what both hi3518ev200 ultimate boards use. It suits the nand repack better than the hisilicon variant, which adds a kernel volume while the repack already passes uImage separately. The NOR image is unaffected either way — that path repacks uImage plus rootfs.squashfs. --- .../hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02_defconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/br-ext-chip-hisilicon/configs/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02_defconfig b/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/br-ext-chip-hisilicon/configs/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02_defconfig index 4518490f6..4b0be755e 100644 --- a/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/br-ext-chip-hisilicon/configs/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02_defconfig +++ b/devices/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02/br-ext-chip-hisilicon/configs/hi3518ev300_ultimate_smitch-360ptz-t5810hct-m02_defconfig @@ -45,7 +45,7 @@ BR2_TARGET_ROOTFS_SQUASHFS4_XZ=y BR2_TARGET_ROOTFS_UBI=y BR2_TARGET_ROOTFS_UBI_SUBSIZE=2048 BR2_TARGET_ROOTFS_UBI_USE_CUSTOM_CONFIG=y -BR2_TARGET_ROOTFS_UBI_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/scripts/ubifs/ubinize_hisilicon.cfg" +BR2_TARGET_ROOTFS_UBI_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/scripts/ubifs/ubinize.cfg" BR2_TARGET_ROOTFS_UBIFS_LEBSIZE=0x1f000 # OpenIPC