Adding integration of three new devices on the T31N processor

This commit is contained in:
Ystinia Zalatova (from Futurae PC)
2025-08-24 21:26:08 +01:00
parent 4d418cfe4c
commit d508523872
25 changed files with 735 additions and 0 deletions

View File

@@ -0,0 +1,69 @@
# Architecture
BR2_mipsel=y
BR2_mips_xburst=y
# BR2_MIPS_SOFT_FLOAT is not set
BR2_MIPS_FP32_MODE_32=y
# Toolchain
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/openipc/firmware/releases/download/toolchain/toolchain.ingenic-t31.tgz"
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="mipsel-openipc-linux-musl"
BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10=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/ingenic-t23.tar.gz"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(EXTERNAL_VENDOR)/board/$(OPENIPC_SOC_FAMILY)/t23.generic.config"
BR2_LINUX_KERNEL_LZMA=y
# Filesystem
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/package/busybox/busybox.config"
BR2_PACKAGE_UBOOT_TOOLS=y
BR2_PACKAGE_ZLIB=y
# BR2_PACKAGE_IFUPDOWN_SCRIPTS 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
# OpenIPC
BR2_OPENIPC_SOC_VENDOR="ingenic"
BR2_OPENIPC_SOC_MODEL="t23"
BR2_OPENIPC_SOC_FAMILY="t23"
BR2_OPENIPC_VARIANT="lite"
BR2_OPENIPC_FLASH_SIZE="8"
# Packages
BR2_PACKAGE_ATBM_WIFI=y
BR2_PACKAGE_BWM_NG=y
BR2_PACKAGE_DROPBEAR_OPENIPC=y
BR2_PACKAGE_INGENIC_OSDRV_T23=y
BR2_PACKAGE_IPCTOOL=y
BR2_PACKAGE_JSONFILTER=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_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_VTUND_OPENIPC=y
BR2_PACKAGE_YAML_CLI=y

View File

@@ -0,0 +1,20 @@
#!/bin/sh
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
#(resetd.sh >/dev/null 2>&1) &
#
#(while true; do sleep 30; checker=$(pidof majestic); if [[ -z $checker ]]; then /etc/init.d/S95majestic start; fi; done) &
exit 0

View File

@@ -0,0 +1,15 @@
#!/bin/sh
set_gpio() {
[ "$2" -eq 1 ] && gpio set $1 || gpio clear $1
sleep 1
}
# T23 JOOAN A6M-U
if [ "$1" = "atbm601x-t23-jooan-a6m-u" ]; then
set_gpio 6 1
modprobe atbm6012b_wifi_usb
exit 0
fi
exit 1

View File

@@ -0,0 +1,37 @@
#!/bin/sh
if [ -e /usr/share/openipc/gpio.conf ]; then
. /usr/share/openipc/gpio.conf
fi
[ -z $button ] && echo "GPIO pin for resetd is not set" | logger -t resetd && exit
# Counter for button press until reset
count=0
# prepare the pin
if [ ! -d /sys/class/gpio/gpio${button} ]; then
echo "${button}" > /sys/class/gpio/export
echo "in" > /sys/class/gpio/gpio${button}/direction
fi
# continuously monitor current value of reset switch
while [ true ]; do
if [ "$(cat /sys/class/gpio/gpio${button}/value)" -eq 1 ]; then
count=0
else
count=$((count+1))
# 20 counts =~ 5 seconds @ 0.25 sleep intervals
if [ $count -eq 20 ]; then
#echo 'SET WIFI' | logger -t resetd
#fw_setenv wlanssid WIFI
#fw_setenv wlanpass 12345678
for a in $(seq 10) ; do (gpio toggle ${led1} ; sleep 0.3 ; gpio toggle ${led1} ; sleep 0.3) ; done >/dev/null 2>&1
echo 'RESETTING FIRMWARE' | logger -t resetd
firstboot
fi
fi
# This interval uses 1% CPU. Less sleep = more CPU
sleep 0.25
done

View File

@@ -0,0 +1,55 @@
#!/bin/sh
#
# Perform basic settings on a known IP camera
#
#
# Set custom upgrade url
#
fw_setenv upgrade 'https://github.com/OpenIPC/builder/releases/download/latest/t23_lite_jooan-a6m-u-nor.tgz'
#
#
# Set custom majestic settings
#
cli -s .video0.codec h264
cli -s .nightMode.irCutPin1 49
cli -s .nightMode.irCutPin2 50
cli -s .nightMode.backlightPin 59
cli -s .nightMode.monitorDelay 5
cli -s .osd.enabled true
cli -s .osd.template "OpenIPC | %F %T %Z"
cli -s .audio.enabled true
cli -s .audio.codec aac
cli -s .audio.srate 48000
cli -s .audio.volume 95
cli -s .audio.gain 25
cli -s .audio.outputEnabled true
cli -s .audio.outputVolume 80
cli -s .audio.speakerPin 63
cli -s .audio.speakerPinInvert true
#
#
# Set wlan device and credentials if need
#
fw_setenv wlandev atbm601x-t23-jooan-a6m-u
#fw_setenv wlanssid Router
#fw_setenv wlanpass 12345678
#
#
# Set osmem and rmem
#
fw_setenv osmem 45M@0x0
fw_setenv rmem 19M@0x2D00000
#
#
# Set motor and mmc
#
fw_setenv gpio_mmc 61
#fw_setenv gpio_motors 53 52 54 14 17
#
#
#adduser viewer -s /bin/false -D -H ; echo viewer:123456 | chpasswd
#
(sleep 3 ; reboot -f) &
#
exit 0

View File

@@ -0,0 +1,13 @@
alarm_in=-1
alarm_out=-1
button=62
ircut1=49
ircut2=50
led1=-1
led2=-1
light_ir=59
light_wl=60
light_sensor=-1
mmc_pwr=61
speaker=63
usb=6

View File

@@ -0,0 +1,4 @@
#!/bin/sh
### set leds to off ###
gpio clear 60

View File

@@ -0,0 +1,32 @@
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/i2c/algos/i2c-algo-bit.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/i2c/busses/i2c-gpio.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/net/usb/cdc_ether.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/net/usb/rndis_host.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/net/usb/usbnet.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/usb/serial/option.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/usb/serial/usb_wwan.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/usb/serial/usbserial.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/fs/f2fs/f2fs.ko
#
/etc/sensor/gc2053-t23.bin
/etc/sensor/gc2053.yaml
/etc/sensor/imx327-t23.bin
/etc/sensor/imx327.yaml
/etc/sensor/jxf23-t23.bin
/etc/sensor/jxf23.yaml
/etc/sensor/jxf37pa-t23.bin
/etc/sensor/jxf37pa.yaml
/etc/sensor/jxh63p-t23.bin
/etc/sensor/jxh63p.yaml
#/etc/sensor/sc1346-t23.bin
#/etc/sensor/sc1346.yaml
#/etc/sensor/sc1a4t-t23.bin
#/etc/sensor/sc1a4t.yaml
/etc/sensor/sc200ai-t23.bin
/etc/sensor/sc200ai.yaml
/etc/sensor/sc2310-t23.bin
/etc/sensor/sc2310.yaml
/etc/sensor/sc2331-t23.bin
/etc/sensor/sc2331.yaml
/etc/sensor/sc301IoT-t23.bin
/etc/sensor/sc301IoT.yaml

View File

@@ -0,0 +1,70 @@
# Architecture
BR2_mipsel=y
BR2_mips_xburst=y
# BR2_MIPS_SOFT_FLOAT is not set
BR2_MIPS_FP32_MODE_32=y
# Toolchain
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/openipc/firmware/releases/download/toolchain/toolchain.ingenic-t31.tgz"
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="mipsel-openipc-linux-musl"
BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10=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/ingenic-t23.tar.gz"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(EXTERNAL_VENDOR)/board/$(OPENIPC_SOC_FAMILY)/t23.generic.config"
BR2_LINUX_KERNEL_LZMA=y
# Filesystem
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/package/busybox/busybox.config"
BR2_PACKAGE_UBOOT_TOOLS=y
BR2_PACKAGE_ZLIB=y
# BR2_PACKAGE_IFUPDOWN_SCRIPTS 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
# OpenIPC
BR2_OPENIPC_SOC_VENDOR="ingenic"
BR2_OPENIPC_SOC_MODEL="t23"
BR2_OPENIPC_SOC_FAMILY="t23"
BR2_OPENIPC_VARIANT="lite"
BR2_OPENIPC_FLASH_SIZE="8"
# Packages
BR2_PACKAGE_ATBM_WIFI=y
BR2_PACKAGE_BWM_NG=y
BR2_PACKAGE_DROPBEAR_OPENIPC=y
BR2_PACKAGE_GPIO_MOTORS=y
BR2_PACKAGE_INGENIC_OSDRV_T23=y
BR2_PACKAGE_IPCTOOL=y
BR2_PACKAGE_JSONFILTER=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_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_VTUND_OPENIPC=y
BR2_PACKAGE_YAML_CLI=y

View File

@@ -0,0 +1,20 @@
#!/bin/sh
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
#(resetd.sh >/dev/null 2>&1) &
#
#(while true; do sleep 30; checker=$(pidof majestic); if [[ -z $checker ]]; then /etc/init.d/S95majestic start; fi; done) &
exit 0

View File

@@ -0,0 +1,15 @@
#!/bin/sh
set_gpio() {
[ "$2" -eq 1 ] && gpio set $1 || gpio clear $1
sleep 1
}
# T23 JOOAN A6M-U
if [ "$1" = "atbm601x-t23-jooan-a6m-u" ]; then
set_gpio 6 1
modprobe atbm6012b_wifi_usb
exit 0
fi
exit 1

View File

@@ -0,0 +1,37 @@
#!/bin/sh
if [ -e /usr/share/openipc/gpio.conf ]; then
. /usr/share/openipc/gpio.conf
fi
[ -z $button ] && echo "GPIO pin for resetd is not set" | logger -t resetd && exit
# Counter for button press until reset
count=0
# prepare the pin
if [ ! -d /sys/class/gpio/gpio${button} ]; then
echo "${button}" > /sys/class/gpio/export
echo "in" > /sys/class/gpio/gpio${button}/direction
fi
# continuously monitor current value of reset switch
while [ true ]; do
if [ "$(cat /sys/class/gpio/gpio${button}/value)" -eq 1 ]; then
count=0
else
count=$((count+1))
# 20 counts =~ 5 seconds @ 0.25 sleep intervals
if [ $count -eq 20 ]; then
#echo 'SET WIFI' | logger -t resetd
#fw_setenv wlanssid WIFI
#fw_setenv wlanpass 12345678
for a in $(seq 10) ; do (gpio toggle ${led1} ; sleep 0.3 ; gpio toggle ${led1} ; sleep 0.3) ; done >/dev/null 2>&1
echo 'RESETTING FIRMWARE' | logger -t resetd
firstboot
fi
fi
# This interval uses 1% CPU. Less sleep = more CPU
sleep 0.25
done

View File

@@ -0,0 +1,54 @@
#!/bin/sh
#
# Perform basic settings on a known IP camera
#
#
# Set custom upgrade url
#
fw_setenv upgrade 'https://github.com/OpenIPC/builder/releases/download/latest/t23_lite_jooan-q3r-u-nor.tgz'
#
#
# Set custom majestic settings
#
cli -s .video0.codec h264
cli -s .nightMode.irCutPin1 49
cli -s .nightMode.irCutPin2 50
cli -s .nightMode.backlightPin 59
cli -s .nightMode.monitorDelay 5
cli -s .osd.enabled true
cli -s .osd.template "OpenIPC | %F %T %Z"
cli -s .audio.enabled true
cli -s .audio.codec aac
cli -s .audio.srate 48000
cli -s .audio.volume 95
cli -s .audio.gain 25
cli -s .audio.outputEnabled true
cli -s .audio.outputVolume 80
cli -s .audio.speakerPin 63
cli -s .audio.speakerPinInvert true
#
#
# Set wlan device and credentials if need
#
fw_setenv wlandev atbm601x-t23-jooan-a6m-u
#fw_setenv wlanssid Router
#fw_setenv wlanpass 12345678
#
#
# Set osmem and rmem
#
fw_setenv osmem 45M@0x0
fw_setenv rmem 19M@0x2D00000
#
# Set motor and mmc
#
fw_setenv gpio_mmc 61
fw_setenv gpio_motors 53 52 54 14 17
#
#
#adduser viewer -s /bin/false -D -H ; echo viewer:123456 | chpasswd
#
(sleep 3 ; reboot -f) &
#
exit 0

View File

@@ -0,0 +1,13 @@
alarm_in=-1
alarm_out=-1
button=62
ircut1=49
ircut2=50
led1=-1
led2=-1
light_ir=59
light_wl=60
light_sensor=-1
mmc_pwr=61
speaker=63
usb=6

View File

@@ -0,0 +1,4 @@
#!/bin/sh
### set leds to off ###
gpio clear 60

View File

@@ -0,0 +1,32 @@
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/i2c/algos/i2c-algo-bit.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/i2c/busses/i2c-gpio.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/net/usb/cdc_ether.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/net/usb/rndis_host.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/net/usb/usbnet.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/usb/serial/option.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/usb/serial/usb_wwan.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/usb/serial/usbserial.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/fs/f2fs/f2fs.ko
#
/etc/sensor/gc2053-t23.bin
/etc/sensor/gc2053.yaml
/etc/sensor/imx327-t23.bin
/etc/sensor/imx327.yaml
/etc/sensor/jxf23-t23.bin
/etc/sensor/jxf23.yaml
/etc/sensor/jxf37pa-t23.bin
/etc/sensor/jxf37pa.yaml
/etc/sensor/jxh63p-t23.bin
/etc/sensor/jxh63p.yaml
#/etc/sensor/sc1346-t23.bin
#/etc/sensor/sc1346.yaml
#/etc/sensor/sc1a4t-t23.bin
#/etc/sensor/sc1a4t.yaml
/etc/sensor/sc200ai-t23.bin
/etc/sensor/sc200ai.yaml
/etc/sensor/sc2310-t23.bin
/etc/sensor/sc2310.yaml
/etc/sensor/sc2331-t23.bin
/etc/sensor/sc2331.yaml
/etc/sensor/sc301IoT-t23.bin
/etc/sensor/sc301IoT.yaml

View File

@@ -0,0 +1,70 @@
# Architecture
BR2_mipsel=y
BR2_mips_xburst=y
# BR2_MIPS_SOFT_FLOAT is not set
BR2_MIPS_FP32_MODE_32=y
# Toolchain
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/openipc/firmware/releases/download/toolchain/toolchain.ingenic-t31.tgz"
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="mipsel-openipc-linux-musl"
BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10=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/ingenic-t23.tar.gz"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(EXTERNAL_VENDOR)/board/$(OPENIPC_SOC_FAMILY)/t23.generic.config"
BR2_LINUX_KERNEL_LZMA=y
# Filesystem
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/package/busybox/busybox.config"
BR2_PACKAGE_UBOOT_TOOLS=y
BR2_PACKAGE_ZLIB=y
# BR2_PACKAGE_IFUPDOWN_SCRIPTS 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
# OpenIPC
BR2_OPENIPC_SOC_VENDOR="ingenic"
BR2_OPENIPC_SOC_MODEL="t23"
BR2_OPENIPC_SOC_FAMILY="t23"
BR2_OPENIPC_SNS_MODEL="sc2331"
BR2_OPENIPC_VARIANT="lite"
BR2_OPENIPC_FLASH_SIZE="8"
# Packages
BR2_PACKAGE_ATBM_WIFI=y
BR2_PACKAGE_BWM_NG=y
BR2_PACKAGE_DROPBEAR_OPENIPC=y
BR2_PACKAGE_INGENIC_OSDRV_T23=y
BR2_PACKAGE_IPCTOOL=y
BR2_PACKAGE_JSONFILTER=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_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_VTUND_OPENIPC=y
BR2_PACKAGE_YAML_CLI=y

View File

@@ -0,0 +1,20 @@
#!/bin/sh
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
(resetd.sh >/dev/null 2>&1) &
#
(while true; do sleep 30; checker=$(pidof majestic); if [[ -z $checker ]]; then /etc/init.d/S95majestic start; fi; done) &
exit 0

View File

@@ -0,0 +1,15 @@
#!/bin/sh
set_gpio() {
[ "$2" -eq 1 ] && gpio set $1 || gpio clear $1
sleep 1
}
# T23 LSC 3215672
if [ "$1" = "atbm601x-t23-lsc-3215672" ]; then
set_gpio 62 0
modprobe atbm6012b_wifi_usb
exit 0
fi
exit 1

View File

@@ -0,0 +1,37 @@
#!/bin/sh
if [ -e /usr/share/openipc/gpio.conf ]; then
. /usr/share/openipc/gpio.conf
fi
[ -z $button ] && echo "GPIO pin for resetd is not set" | logger -t resetd && exit
# Counter for button press until reset
count=0
# prepare the pin
if [ ! -d /sys/class/gpio/gpio${button} ]; then
echo "${button}" > /sys/class/gpio/export
echo "in" > /sys/class/gpio/gpio${button}/direction
fi
# continuously monitor current value of reset switch
while [ true ]; do
if [ "$(cat /sys/class/gpio/gpio${button}/value)" -eq 1 ]; then
count=0
else
count=$((count+1))
# 20 counts =~ 5 seconds @ 0.25 sleep intervals
if [ $count -eq 20 ]; then
#echo 'SET WIFI' | logger -t resetd
#fw_setenv wlanssid WIFI
#fw_setenv wlanpass 12345678
for a in $(seq 10) ; do (gpio toggle ${led1} ; sleep 0.3 ; gpio toggle ${led1} ; sleep 0.3) ; done >/dev/null 2>&1
echo 'RESETTING FIRMWARE' | logger -t resetd
firstboot
fi
fi
# This interval uses 1% CPU. Less sleep = more CPU
sleep 0.25
done

View File

@@ -0,0 +1,51 @@
#!/bin/sh
#
# Perform basic settings on a known IP camera
#
#
# Set custom upgrade url
#
fw_setenv upgrade 'https://github.com/OpenIPC/builder/releases/download/latest/t23_lite_lsc-3215672-nor.tgz'
#
#
# Set custom majestic settings
#
cli -s .video0.codec h264
cli -s .nightMode.irCutPin1 58
cli -s .nightMode.irCutPin2 57
cli -s .nightMode.backlightPin 61
cli -s .nightMode.monitorDelay 5
cli -s .nightMode.lightMonitor true
cli -s .nightMode.minThreshold 10
cli -s .nightMode.maxThreshold 100
cli -s .osd.enabled true
cli -s .osd.template "OpenIPC | %F %T %Z"
cli -s .audio.enabled true
cli -s .audio.codec aac
cli -s .audio.srate 48000
cli -s .audio.volume 95
cli -s .audio.gain 25
cli -s .audio.outputEnabled true
cli -s .audio.outputVolume 80
cli -s .audio.speakerPin 63
#
#
# Set wlan device and credentials if need
#
fw_setenv wlandev atbm601x-t23-lsc-3215672
#fw_setenv wlanssid Router
#fw_setenv wlanpass 12345678
#
#
# Set osmem and rmem
#
fw_setenv osmem 45M@0x0
fw_setenv rmem 19M@0x2D00000
#
#
#adduser viewer -s /bin/false -D -H ; echo viewer:123456 | chpasswd
#
(sleep 3 ; reboot -f) &
#
exit 0

View File

@@ -0,0 +1,13 @@
alarm_in=-1
alarm_out=-1
button=6
ircut1=57
ircut2=58
led1=51
led2=-1
light_ir=61
light_wl=-1
light_sensor=-1
mmc_pwr=-1
speaker=63
usb=62

View File

@@ -0,0 +1,4 @@
#!/bin/sh
### set leds to off ###
gpio set 51

View File

@@ -0,0 +1,32 @@
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/i2c/algos/i2c-algo-bit.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/i2c/busses/i2c-gpio.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/net/usb/cdc_ether.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/net/usb/rndis_host.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/net/usb/usbnet.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/usb/serial/option.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/usb/serial/usb_wwan.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/drivers/usb/serial/usbserial.ko
/lib/modules/3.10.14__isvp_swan_1.0__/kernel/fs/f2fs/f2fs.ko
#
#/etc/sensor/gc2053-t23.bin
#/etc/sensor/gc2053.yaml
#/etc/sensor/imx327-t23.bin
#/etc/sensor/imx327.yaml
#/etc/sensor/jxf23-t23.bin
#/etc/sensor/jxf23.yaml
#/etc/sensor/jxf37pa-t23.bin
#/etc/sensor/jxf37pa.yaml
#/etc/sensor/jxh63p-t23.bin
#/etc/sensor/jxh63p.yaml
#/etc/sensor/sc1346-t23.bin
#/etc/sensor/sc1346.yaml
#/etc/sensor/sc1a4t-t23.bin
#/etc/sensor/sc1a4t.yaml
#/etc/sensor/sc200ai-t23.bin
#/etc/sensor/sc200ai.yaml
#/etc/sensor/sc2310-t23.bin
#/etc/sensor/sc2310.yaml
#/etc/sensor/sc2331-t23.bin
#/etc/sensor/sc2331.yaml
#/etc/sensor/sc301IoT-t23.bin
#/etc/sensor/sc301IoT.yaml