diff --git a/ipk-source/socat-at-bridge/CONTROL/control b/ipk-source/socat-at-bridge/CONTROL/control index 2456f1d..73f5bd3 100755 --- a/ipk-source/socat-at-bridge/CONTROL/control +++ b/ipk-source/socat-at-bridge/CONTROL/control @@ -1,5 +1,5 @@ Package: socat-at-bridge -Version: 1.1.1 +Version: 1.2.0 Depends: libc, socat Source: github/iamromulan/quectel-rgmii-toolkit Maintainer: github.com/iamromulan diff --git a/ipk-source/socat-at-bridge/root/etc/init.d/socat-at-bridge b/ipk-source/socat-at-bridge/root/etc/init.d/socat-at-bridge index 7569dd8..f4e5126 100755 --- a/ipk-source/socat-at-bridge/root/etc/init.d/socat-at-bridge +++ b/ipk-source/socat-at-bridge/root/etc/init.d/socat-at-bridge @@ -6,15 +6,42 @@ STOP=10 USE_PROCD=1 start_service() { + # Instance 1: create PTY pair procd_open_instance - procd_set_param command /usr/sbin/socat-at-bridge.sh - procd_set_param respawn + procd_set_param command socat -d -d pty,link=/dev/ttySMD11IN,raw,echo=0,group=20,perm=660 \ + pty,link=/dev/ttySMD11,raw,echo=1,group=20,perm=660 + procd_set_param respawn 0 0 0 + procd_set_param stdout 1 + procd_set_param stderr 1 + procd_close_instance + + # Instance 2: forward /dev/smd11 → /dev/ttySMD11IN + procd_open_instance + procd_set_param command /bin/sh -c ' + while [ ! -e /dev/ttySMD11IN ]; do sleep 0.1; done + exec cat /dev/smd11 > /dev/ttySMD11IN + ' + procd_set_param file /dev/smd11 + procd_set_param respawn 0 0 0 + procd_set_param stdout 1 + procd_set_param stderr 1 + procd_close_instance + + # Instance 3: forward /dev/ttySMD11IN → /dev/smd11 + procd_open_instance + procd_set_param command /bin/sh -c ' + while [ ! -e /dev/ttySMD11IN ]; do sleep 0.1; done + exec cat /dev/ttySMD11IN > /dev/smd11 + ' + procd_set_param file /dev/smd11 + procd_set_param respawn 0 0 0 procd_set_param stdout 1 procd_set_param stderr 1 procd_close_instance } stop_service() { - # procd will handle stopping all instances automatically - echo "Stopping socat and cat instances." + echo "Stopping socat bridge and cleaning up..." + rm -f /dev/ttySMD11 /dev/ttySMD11IN } + diff --git a/ipk-source/socat-at-bridge/root/etc/init.d/socat-at-bridge-smd7 b/ipk-source/socat-at-bridge/root/etc/init.d/socat-at-bridge-smd7 index 742f4fc..9ba614d 100755 --- a/ipk-source/socat-at-bridge/root/etc/init.d/socat-at-bridge-smd7 +++ b/ipk-source/socat-at-bridge/root/etc/init.d/socat-at-bridge-smd7 @@ -6,15 +6,42 @@ STOP=10 USE_PROCD=1 start_service() { + # Instance 1: create PTY pair procd_open_instance - procd_set_param command /usr/sbin/socat-at-bridge-smd7.sh - procd_set_param respawn + procd_set_param command socat -d -d pty,link=/dev/ttySMD7IN,raw,echo=0,group=20,perm=660 \ + pty,link=/dev/ttySMD7,raw,echo=1,group=20,perm=660 + procd_set_param respawn 0 0 0 + procd_set_param stdout 1 + procd_set_param stderr 1 + procd_close_instance + + # Instance 2: forward /dev/smd7 → /dev/ttySMD7IN + procd_open_instance + procd_set_param command /bin/sh -c ' + while [ ! -e /dev/ttySMD7IN ]; do sleep 0.1; done + exec cat /dev/smd7 > /dev/ttySMD7IN + ' + procd_set_param file /dev/smd7 + procd_set_param respawn 0 0 0 + procd_set_param stdout 1 + procd_set_param stderr 1 + procd_close_instance + + # Instance 3: forward /dev/ttySMD7IN → /dev/smd7 + procd_open_instance + procd_set_param command /bin/sh -c ' + while [ ! -e /dev/ttySMD7IN ]; do sleep 0.1; done + exec cat /dev/ttySMD7IN > /dev/smd7 + ' + procd_set_param file /dev/smd7 + procd_set_param respawn 0 0 0 procd_set_param stdout 1 procd_set_param stderr 1 procd_close_instance } stop_service() { - # procd will handle stopping all instances automatically - echo "Stopping socat and cat instances." + echo "Stopping socat bridge and cleaning up..." + rm -f /dev/ttySMD7 /dev/ttySMD7IN } + diff --git a/ipk-source/socat-at-bridge/root/usr/sbin/socat-at-bridge-smd7.sh b/ipk-source/socat-at-bridge/root/usr/sbin/socat-at-bridge-smd7.sh deleted file mode 100755 index ffb0da7..0000000 --- a/ipk-source/socat-at-bridge/root/usr/sbin/socat-at-bridge-smd7.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/ash - -# Optional logging for debugging -LOGFILE="/var/log/socat-bridge-smd7.log" - -# Start socat to create virtual TTY devices -echo "$(date): Starting socat..." >> "$LOGFILE" -socat -d -d pty,link=/dev/ttySMD7IN,raw,echo=0,group=20,perm=660 \ - pty,link=/dev/ttySMD7,raw,echo=1,group=20,perm=660 & -SOCAT_PID=$! - -# Allow socat to initialize -sleep 1 - -# Start forwarding data from /dev/smd7 to /dev/ttySMD7IN -echo "$(date): Starting forward from /dev/smd7 to /dev/ttySMD7IN..." >> "$LOGFILE" -cat /dev/smd7 > /dev/ttySMD7IN & -CAT1_PID=$! - -# Start forwarding data from /dev/ttySMD7IN to /dev/smd7 -echo "$(date): Starting forward from /dev/ttySMD7IN to /dev/smd7..." >> "$LOGFILE" -cat /dev/ttySMD7IN > /dev/smd7 & -CAT2_PID=$! - -# Handle script termination and cleanup -cleanup() { - echo "$(date): Cleaning up processes..." >> "$LOGFILE" - kill "$SOCAT_PID" "$CAT1_PID" "$CAT2_PID" 2>/dev/null - wait - echo "$(date): All processes stopped." >> "$LOGFILE" -} - -# Trap termination signals to run cleanup -trap cleanup INT TERM EXIT - -# Wait for all background processes to finish -wait diff --git a/ipk-source/socat-at-bridge/root/usr/sbin/socat-at-bridge.sh b/ipk-source/socat-at-bridge/root/usr/sbin/socat-at-bridge.sh deleted file mode 100755 index 67d4663..0000000 --- a/ipk-source/socat-at-bridge/root/usr/sbin/socat-at-bridge.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/ash - -# Optional logging for debugging -LOGFILE="/var/log/socat-bridge.log" - -# Start socat to create virtual TTY devices -echo "$(date): Starting socat..." >> "$LOGFILE" -socat -d -d pty,link=/dev/ttySMD11IN,raw,echo=0,group=20,perm=660 \ - pty,link=/dev/ttySMD11,raw,echo=1,group=20,perm=660 & -SOCAT_PID=$! - -# Allow socat to initialize -sleep 1 - -# Start forwarding data from /dev/smd11 to /dev/ttySMD11IN -echo "$(date): Starting forward from /dev/smd11 to /dev/ttySMD11IN..." >> "$LOGFILE" -cat /dev/smd11 > /dev/ttySMD11IN & -CAT1_PID=$! - -# Start forwarding data from /dev/ttySMD11IN to /dev/smd11 -echo "$(date): Starting forward from /dev/ttySMD11IN to /dev/smd11..." >> "$LOGFILE" -cat /dev/ttySMD11IN > /dev/smd11 & -CAT2_PID=$! - -# Handle script termination and cleanup -cleanup() { - echo "$(date): Cleaning up processes..." >> "$LOGFILE" - kill "$SOCAT_PID" "$CAT1_PID" "$CAT2_PID" 2>/dev/null - wait - echo "$(date): All processes stopped." >> "$LOGFILE" -} - -# Trap termination signals to run cleanup -trap cleanup INT TERM EXIT - -# Wait for all background processes to finish -wait diff --git a/opkg-feed/Packages b/opkg-feed/Packages index 561b967..aa6fe15 100644 --- a/opkg-feed/Packages +++ b/opkg-feed/Packages @@ -234,14 +234,14 @@ Description: SMS Tool for 3G/4G/5G modem Package: socat-at-bridge -Version: 1.1.1 +Version: 1.2.0 Depends: libc, socat Section: utils Architecture: aarch64_cortex-a53 Maintainer: iamromulan -MD5Sum: a5f4c4c371426fbe12bf2345938af195 -Size: 1795 -Filename: socat-at-bridge_1.1.1_aarch64_cortex-a53.ipk +MD5Sum: 1b1c28fb79c0cf477eb4e5c77350386a +Size: 1470 +Filename: socat-at-bridge_1.2.0_aarch64_cortex-a53.ipk Source: https://github.com/iamromulan/quectel-rgmii-toolkit Description: Sets up a tty from SMD11 diff --git a/opkg-feed/Packages.gz b/opkg-feed/Packages.gz index 275b308..7c372a5 100644 Binary files a/opkg-feed/Packages.gz and b/opkg-feed/Packages.gz differ diff --git a/opkg-feed/Packages.log b/opkg-feed/Packages.log index 82cb0e1..1f11486 100644 --- a/opkg-feed/Packages.log +++ b/opkg-feed/Packages.log @@ -1,4 +1,4 @@ -Starting package analysis - Fri Aug 1 09:28:04 PM EDT 2025 +Starting package analysis - Mon Aug 4 11:13:13 PM EDT 2025 No update needed for atinout (version 0.9.1, MD5: 444eb87488bad1927b6ed069dedf7393, size: 4323) No update needed for kmod-wireguard (version 1, MD5: 98e77b68c2f1b5ff46ef7713b4f63a94, size: 789) No update needed for libucode20230711 (version 2024.07.22~b610860d-r3, MD5: c38bd45a6aa14a969b7e92f051481d7e, size: 79358) @@ -13,16 +13,14 @@ No update needed for sdxpinn-console-menu (version 0.0.2, MD5: de75d2889510e92b5 No update needed for sdxpinn-mount-fix (version 1.3.2, MD5: 004d4f1c792efc2d32c2de27629bae3b, size: 4648) No update needed for sdxpinn-patch (version 2.5, MD5: 0ec65238142dad95de1666b01a6f09c6, size: 3054) No update needed for sdxpinn-quecmanager (version 2.2.3, MD5: e84d70a73cbf372cc9ed611ee0daa625, size: 2060884) -Updating package info for sdxpinn-quecmanager-beta... -Updated sdxpinn-quecmanager-beta to version 2.2.5 with MD5: c7c1d2e15534639282437bc737128397 and size: 1062406 +No update needed for sdxpinn-quecmanager-beta (version 2.2.5, MD5: c7c1d2e15534639282437bc737128397, size: 1062406) No update needed for sms-tool (version 2025.1.19-APmod-iamromulan, MD5: 83dc8bfd2d4ac8d8952a2a95b2be943f, size: 13687) -No update needed for socat-at-bridge (version 1.1.1, MD5: a5f4c4c371426fbe12bf2345938af195, size: 1795) -Updating package info for tailscale... -Updated tailscale to version 1.86.2 with MD5: 4164fbd218c720bf9138d5b7b5f146c8 and size: 10768011 -Updating package info for tailscaled... -Updated tailscaled to version 1.86.2 with MD5: 72b24f4d914471b91e6806b7cd53c306 and size: 19343231 +Updating package info for socat-at-bridge... +Updated socat-at-bridge to version 1.2.0 with MD5: 1b1c28fb79c0cf477eb4e5c77350386a and size: 1470 +No update needed for tailscale (version 1.86.2, MD5: 4164fbd218c720bf9138d5b7b5f146c8, size: 10768011) +No update needed for tailscaled (version 1.86.2, MD5: 72b24f4d914471b91e6806b7cd53c306, size: 19343231) No update needed for ucode-mod-lua (version 1, MD5: cd83c6848867112332d1155b4c4f0640, size: 10085) No update needed for warp (version 1.0, MD5: ea95658bf84f619cabe5dd62280fe787, size: 2698) No update needed for wgcf (version 2.2.24, MD5: b2ba181f9181c2bd8f37933c60c0713f, size: 3677883) Package file and signature updated successfully. -Package analysis completed - Fri Aug 1 09:28:05 PM EDT 2025 +Package analysis completed - Mon Aug 4 11:13:15 PM EDT 2025 diff --git a/opkg-feed/Packages.sig b/opkg-feed/Packages.sig index f4f0732..91ead60 100644 --- a/opkg-feed/Packages.sig +++ b/opkg-feed/Packages.sig @@ -1,2 +1,2 @@ untrusted comment: signed by key 6262698f038d1226 -RWRiYmmPA40SJrX6S/SXdrlPgo3iO8iCeHKRa33KJyO8E/L+h9Sxl2JWM2iXWQMymReUsd3DuLCnrR1Tp1EYVts7tjP//K8beAY= +RWRiYmmPA40SJpGBLSTp93OqPutsAJGxE4lGC0y9W/2++5qARvFc0Y6CwQtTvWEVNklG4a0BtGc6bda42wCL2XHSjlr27ZSxsQw= diff --git a/opkg-feed/socat-at-bridge_1.1.1_aarch64_cortex-a53.ipk b/opkg-feed/socat-at-bridge_1.1.1_aarch64_cortex-a53.ipk deleted file mode 100644 index 0a2e19c..0000000 Binary files a/opkg-feed/socat-at-bridge_1.1.1_aarch64_cortex-a53.ipk and /dev/null differ diff --git a/opkg-feed/socat-at-bridge_1.2.0_aarch64_cortex-a53.ipk b/opkg-feed/socat-at-bridge_1.2.0_aarch64_cortex-a53.ipk new file mode 100644 index 0000000..967099b Binary files /dev/null and b/opkg-feed/socat-at-bridge_1.2.0_aarch64_cortex-a53.ipk differ