-
-
Notifications
You must be signed in to change notification settings - Fork 140
ssc377_lite: add TP-Link Tapo C120 device profile #162
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,68 @@ | ||
| # Architecture | ||
| BR2_arm=y | ||
| BR2_cortex_a35=y | ||
| BR2_ARM_FPU_NEON_VFPV4=y | ||
| BR2_ARM_INSTRUCTIONS_THUMB2=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/$(OPENIPC_TOOLCHAIN).tgz" | ||
| BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="arm-openipc-linux-musleabihf" | ||
| BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_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/$(OPENIPC_KERNEL).tar.gz" | ||
| BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y | ||
| BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(EXTERNAL_VENDOR)/board/$(OPENIPC_SOC_FAMILY)/infinity6c-ssc027a.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_IFUPDOWN_SCRIPTS is not set | ||
| # BR2_PACKAGE_WIREGUARD_LINUX_COMPAT is not set | ||
| BR2_PACKAGE_WIREGUARD_TOOLS=y | ||
| BR2_PACKAGE_WIRELESS_REGDB=y | ||
| BR2_PACKAGE_WIRELESS_TOOLS=y | ||
| BR2_PACKAGE_WPA_SUPPLICANT_OPENIPC=y | ||
| BR2_TARGET_ROOTFS_CPIO=y | ||
| BR2_TARGET_ROOTFS_SQUASHFS=y | ||
| BR2_TARGET_ROOTFS_SQUASHFS4_XZ=y | ||
|
|
||
| # OpenIPC | ||
| BR2_OPENIPC_SOC_VENDOR="sigmastar" | ||
| BR2_OPENIPC_SOC_MODEL="ssc377" | ||
| BR2_OPENIPC_SOC_FAMILY="infinity6c" | ||
| BR2_OPENIPC_VARIANT="lite" | ||
| BR2_OPENIPC_FLASH_SIZE="16" | ||
|
|
||
| # Packages | ||
| BR2_PACKAGE_DROPBEAR_OPENIPC=y | ||
| BR2_PACKAGE_EXFAT_OPENIPC=y | ||
| BR2_PACKAGE_IPCTOOL=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_RTL8188FU_OPENIPC=y | ||
| BR2_PACKAGE_SIGMASTAR_OSDRV_INFINITY6C=y | ||
| BR2_PACKAGE_VTUND_OPENIPC=y | ||
| BR2_PACKAGE_YAML_CLI=y |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,33 @@ | ||
| #!/bin/sh | ||
| # Tapo C120: majestic drives the IR-cut filter on GPIO 81 (1 = day, 0 = night) but has no | ||
| # IR-LED output in this build, so mirror the night state onto the IR LEDs (GPIO 12 + 13). | ||
| PID=/var/run/irled.pid | ||
| case "$1" in | ||
| start) | ||
| for p in 12 13; do | ||
| [ -d /sys/class/gpio/gpio$p ] || echo $p > /sys/class/gpio/export | ||
| echo out > /sys/class/gpio/gpio$p/direction | ||
| done | ||
| ( | ||
| last= | ||
| while :; do | ||
| v=$(cat /sys/class/gpio/gpio81/value 2>/dev/null) | ||
| if [ -n "$v" ] && [ "$v" != "$last" ]; then | ||
| for p in 12 13; do echo $((1 - v)) > /sys/class/gpio/gpio$p/value; done | ||
| last=$v | ||
| fi | ||
| sleep 3 | ||
| done | ||
| ) & | ||
| echo $! > $PID | ||
| ;; | ||
| stop) | ||
| [ -f $PID ] && kill "$(cat $PID)" 2>/dev/null; rm -f $PID | ||
|
Comment on lines
+24
to
+25
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 2. Stopping leaves ir illuminators on The stop branch of S96irled kills the polling process without driving GPIOs 12 and 13 low or releasing them. If the service is stopped while night mode is active, both illuminator banks retain their last asserted output after the service has supposedly stopped. Agent Prompt
|
||
| ;; | ||
| restart) | ||
| $0 stop; $0 start | ||
| ;; | ||
| *) | ||
| echo "Usage: $0 {start|stop|restart}"; exit 1 | ||
| ;; | ||
| esac | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,16 @@ | ||
| #!/bin/sh | ||
|
|
||
| set_gpio() { | ||
| [ "$2" -eq 1 ] && gpio set $1 || gpio clear $1 | ||
| sleep 1 | ||
| } | ||
|
|
||
| # The RTL8188FTV sits on a USB daughterboard whose power is gated by GPIO 42 | ||
| if [ "$1" = "rtl8188fu-tapo-c120" ]; then | ||
| set_gpio 42 1 | ||
| sleep 2 | ||
| modprobe 8188fu | ||
| exit 0 | ||
|
Comment on lines
+12
to
+13
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 1. Wi-fi failures are reported as success The wireless USB script runs modprobe 8188fu and then unconditionally returns zero instead of preserving the command's status. When the module is missing or cannot load, wireless initialization receives a successful result even though no interface was created. Agent Prompt
|
||
| fi | ||
|
|
||
| exit 1 | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,27 @@ | ||
| #!/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/ssc377_lite_tp-link-tapo-c120-nor.tgz' | ||
| # | ||
| # | ||
| # Set custom majestic settings | ||
| # | ||
| cli -s .nightMode.irCutPin1 81 | ||
| cli -s .nightMode.irCutSingleInvert true | ||
| cli -s .nightMode.backlightPin 14 | ||
| cli -s .nightMode.colorToGray true | ||
| cli -s .audio.codec opus | ||
| # | ||
| # | ||
| # Set wlan device and credentials if need | ||
| # | ||
| fw_setenv wlandev rtl8188fu-tapo-c120 | ||
| fw_setenv sensor sc430ai | ||
| #fw_setenv wlanssid Router | ||
| #fw_setenv wlanpass 12345678 | ||
|
|
||
| exit 0 |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,17 @@ | ||
| /etc/sensors/gc4653.bin | ||
| /etc/sensors/imx335.bin | ||
| /etc/sensors/imx415.bin | ||
| /etc/sensors/os04a10.bin | ||
| /etc/sensors/sc401ai.bin | ||
| /etc/sensors/sc830ai.bin | ||
| # | ||
| /lib/modules/5.10.61/sigmastar/sensor_gc4653_mipi.ko | ||
| /lib/modules/5.10.61/sigmastar/sensor_imx335_mipi.ko | ||
| /lib/modules/5.10.61/sigmastar/sensor_imx415_mipi.ko | ||
| /lib/modules/5.10.61/sigmastar/sensor_os04a10_mipi.ko | ||
| /lib/modules/5.10.61/sigmastar/sensor_sc401ai_mipi.ko | ||
| /lib/modules/5.10.61/sigmastar/sensor_sc4336p_mipi.ko | ||
| /lib/modules/5.10.61/sigmastar/sensor_sc450ai_mipi.ko | ||
| /lib/modules/5.10.61/sigmastar/sensor_sc501ai_mipi.ko | ||
| /lib/modules/5.10.61/sigmastar/sensor_sc830ai_mipi.ko | ||
| /lib/modules/5.10.61/sigmastar/sensor_sc850sl_mipi.ko |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
3. Repeated starts leave hidden workers
🐞 Bug☼ ReliabilityAgent Prompt
ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools