ready for PR
This commit is contained in:
24
etc/config/atcommands.user
Normal file
24
etc/config/atcommands.user
Normal file
@@ -0,0 +1,24 @@
|
||||
Reboot;AT+CFUN=1,1
|
||||
Disconnect;AT+CFUN=0
|
||||
Connect;AT+CFUN=1
|
||||
Signal Info;AT+QENG="servingcell"
|
||||
CA Info;AT+QCAINFO
|
||||
Get current SIM Slot;AT+QUIMSLOT?
|
||||
Switch to SIM Slot 1;AT+QUIMSLOT=1
|
||||
Switch to SIM Slot 2;AT+QUIMSLOT=2
|
||||
Get current APN List;AT+CGDCONT?
|
||||
Set APN to NRBROADBAND;AT+CGDCONT=1,"IPV4V6","NRBROADBAND"
|
||||
Show Current IMEI;AT+EGMR=0,7
|
||||
Show Current Network Mode;AT+QNWPREFCFG="mode_pref"
|
||||
Set Network Mode to AUTO;AT+QNWPREFCFG="mode_pref",AUTO
|
||||
Set Network Mode to 5G NR/4G LTE Only;AT+QNWPREFCFG="mode_pref",NR5G:LTE
|
||||
Set Network Mode to 5G NR Only;AT+QNWPREFCFG="mode_pref",NR5G
|
||||
Set Network Mode to 4G LTE Only;AT+QNWPREFCFG="mode_pref",LTE
|
||||
Check to see if SA or NSA is disabled;AT+QNWPREFCFG="nr5g_disable_mode"
|
||||
Enable Both SA and NSA;AT+QNWPREFCFG="nr5g_disable_mode",0
|
||||
Disable SA Only;AT+QNWPREFCFG="nr5g_disable_mode",1
|
||||
Disable NSA Only;AT+QNWPREFCFG="nr5g_disable_mode",2
|
||||
Get Currently Enabled 5G/NR SA Bands;AT+QNWPREFCFG="nr5g_band"
|
||||
Get Currently Enabled 5G/NR NSA Bands;AT+QNWPREFCFG="nsa_nr5g_band"
|
||||
Get Currently Enabled 4G/LTE Bands;AT+QNWPREFCFG="lte_band"
|
||||
View assigned IPv4/IPv6 addresses from the provider;AT+QMAP="WWAN"
|
||||
4
etc/config/atinout
Normal file
4
etc/config/atinout
Normal file
@@ -0,0 +1,4 @@
|
||||
|
||||
config atinout 'general'
|
||||
option atcport '/dev/smd11'
|
||||
|
||||
6
etc/config/ttyd
Normal file
6
etc/config/ttyd
Normal file
@@ -0,0 +1,6 @@
|
||||
|
||||
config ttyd
|
||||
option interface '@lan'
|
||||
option debug '7'
|
||||
option command '/usr/bin/login'
|
||||
|
||||
20
etc/init.d/init-overlay-watchdog
Normal file
20
etc/init.d/init-overlay-watchdog
Normal file
@@ -0,0 +1,20 @@
|
||||
#!/bin/ash /etc/rc.common
|
||||
|
||||
START=04
|
||||
USE_PROCD=1
|
||||
|
||||
start_service() {
|
||||
procd_open_instance
|
||||
procd_set_param command /usr/sbin/init-overlay-watchdog.sh
|
||||
procd_set_param respawn 3600 5 5
|
||||
procd_set_param stdout 1
|
||||
procd_set_param stderr 1
|
||||
procd_set_param pidfile /var/run/init-overlay-watchdog.pid
|
||||
procd_set_param tracking
|
||||
procd_close_instance
|
||||
}
|
||||
|
||||
stop_service() {
|
||||
echo "Stopping init-overlay-watchdog service"
|
||||
# `procd` will handle stopping the service and its processes
|
||||
}
|
||||
133
etc/init.d/mount-fix
Normal file
133
etc/init.d/mount-fix
Normal file
@@ -0,0 +1,133 @@
|
||||
#!/bin/sh /etc/rc.common
|
||||
|
||||
START=03
|
||||
|
||||
start() {
|
||||
# Log to tmp
|
||||
rm /tmp/mount-fix.log
|
||||
/bin/touch /tmp/mount-fix.log
|
||||
/bin/echo "Begin mount fix process to make a usable userspace" >> /tmp/mount-fix.log
|
||||
|
||||
# Forcefully unmount /etc
|
||||
/bin/echo "Unmounting the tiny overlay at /etc" >> /tmp/mount-fix.log
|
||||
/bin/umount -lf /etc >> /tmp/mount-fix.log
|
||||
|
||||
# Remount root filesystem as read-write
|
||||
/bin/echo "Remounting / as read-write" >> /tmp/mount-fix.log
|
||||
/bin/mount -o remount,rw / >> /tmp/mount-fix.log
|
||||
|
||||
# Check if /overlay/etc-upper/merged.done exists
|
||||
/bin/echo "First time this is ran the stuff you have been putting in the old overlay needs merged." >> /tmp/mount-fix.log
|
||||
/bin/echo "Looking for evidence that this has already happened..." >> /tmp/mount-fix.log
|
||||
if [ ! -f /overlay/etc-upper/merged.done ]; then
|
||||
/bin/echo "/overlay/etc-upper/merged.done not found, merging /overlay/etc-upper/* to /etc/" >> /tmp/mount-fix.log
|
||||
cp -rf /overlay/etc-upper/* /etc/ >> /tmp/mount-fix.log
|
||||
/bin/touch /overlay/etc-upper/merged.done >> /tmp/mount-fix.log
|
||||
else
|
||||
/bin/echo "/overlay/etc-upper/merged.done found, skipping merge" >> /tmp/mount-fix.log
|
||||
fi
|
||||
|
||||
# Unmount /overlay
|
||||
/bin/echo "Unmounting the no longer needed /overlay" >> /tmp/mount-fix.log
|
||||
/bin/umount /overlay >> /tmp/mount-fix.log
|
||||
|
||||
# Check if /etc/opkg.conf has a line containing "option overlay_root /overlay" and remove it if it exists
|
||||
/bin/echo "Lets be sure your opkg config isn't using the old overlay" >> /tmp/mount-fix.log
|
||||
if grep -q "option overlay_root /overlay" /etc/opkg.conf; then
|
||||
/bin/echo "Removing 'option overlay_root /overlay' from /etc/opkg.conf" >> /tmp/mount-fix.log
|
||||
sed -i '/option overlay_root \/overlay/d' /etc/opkg.conf >> /tmp/mount-fix.log
|
||||
else
|
||||
/bin/echo "'option overlay_root /overlay' not found in /etc/opkg.conf, no changes made" >> /tmp/mount-fix.log
|
||||
fi
|
||||
|
||||
# Ensure necessary directories exist for overlay and pivot_root
|
||||
/bin/echo "Creating new overlay system" >> /tmp/mount-fix.log
|
||||
if [ ! -d /data/rootfs ]; then
|
||||
mkdir -p /data/rootfs
|
||||
fi
|
||||
if [ ! -d /data/rootfs-workdir ]; then
|
||||
mkdir -p /data/rootfs-workdir
|
||||
fi
|
||||
if [ ! -d /rootfs ]; then
|
||||
mkdir -p /rootfs
|
||||
fi
|
||||
|
||||
# Mount the new overlay filesystem
|
||||
/bin/mount -t overlay overlay -o lowerdir=/,upperdir=/data/rootfs,workdir=/data/rootfs-workdir /rootfs >> /tmp/mount-fix.log
|
||||
|
||||
# Create the real_rootfs directory in the new root
|
||||
if [ ! -d /rootfs/real_rootfs ]; then
|
||||
mkdir -p /rootfs/real_rootfs
|
||||
fi
|
||||
|
||||
# Pivot root to the new root
|
||||
/bin/echo "Pivoting Root / to /rootfs; Be back soon!!" >> /tmp/mount-fix.log
|
||||
/sbin/pivot_root /rootfs /rootfs/real_rootfs >> /tmp/mount-fix.log
|
||||
|
||||
# Move the mounted filesystems to the new locations
|
||||
/bin/mount --move /real_rootfs/sys /sys >> /tmp/mount-fix.log
|
||||
/bin/mount --move /real_rootfs/proc /proc >> /tmp/mount-fix.log
|
||||
/bin/mount --move /real_rootfs/tmp /tmp >> /tmp/mount-fix.log
|
||||
/bin/mount --move /real_rootfs/dev /dev >> /tmp/mount-fix.log
|
||||
/bin/mount --move /real_rootfs/firmware /firmware >> /tmp/mount-fix.log
|
||||
/bin/mount --move /real_rootfs/persist /persist >> /tmp/mount-fix.log
|
||||
/bin/mount --move /real_rootfs/cache /cache >> /tmp/mount-fix.log
|
||||
/bin/mount --move /real_rootfs/data /data >> /tmp/mount-fix.log
|
||||
|
||||
# Synchronize /etc/rc.d/ and /real_rootfs/etc/rc.d/
|
||||
/bin/echo "Synchronizing /etc/rc.d/ and /real_rootfs/etc/rc.d/" >> /tmp/mount-fix.log
|
||||
for link in /etc/rc.d/*; do
|
||||
if [ -L "$link" ]; then
|
||||
link_name=$(basename "$link")
|
||||
if [ ! -e "/real_rootfs/etc/rc.d/$link_name" ]; then
|
||||
/bin/echo "Copying $link_name to /real_rootfs/etc/rc.d/" >> /tmp/mount-fix.log
|
||||
cp -a "$link" "/real_rootfs/etc/rc.d/$link_name" >> /tmp/mount-fix.log
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
for link in /real_rootfs/etc/rc.d/*; do
|
||||
if [ -L "$link" ]; then
|
||||
link_name=$(basename "$link")
|
||||
if [ ! -e "/etc/rc.d/$link_name" ]; then
|
||||
/bin/echo "Removing $link_name from /real_rootfs/etc/rc.d/" >> /tmp/mount-fix.log
|
||||
rm "/real_rootfs/etc/rc.d/$link_name" >> /tmp/mount-fix.log
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
# Final logs and remount the original root as read-only
|
||||
/bin/echo "...and we're back! The original root now lives at /real_rootfs" >> /tmp/mount-fix.log
|
||||
/bin/echo "Lets mount it as read-only for now, If you need it just remount it as read-write" >> /tmp/mount-fix.log
|
||||
/bin/mount -o remount,ro /real_rootfs >> /tmp/mount-fix.log
|
||||
/bin/echo "Overlay and pivot_root setup completed" >> /tmp/mount-fix.log
|
||||
}
|
||||
|
||||
stop() {
|
||||
/bin/echo "Stopping and reverting overlay and pivot_root" >> /tmp/mount-fix.log
|
||||
|
||||
# Remount the original root filesystem as read-write
|
||||
/bin/mount -o remount,rw /real_rootfs >> /tmp/mount-fix.log
|
||||
|
||||
# Move the mounted filesystems back to the original locations
|
||||
/bin/mount --move /sys /real_rootfs/sys >> /tmp/mount-fix.log
|
||||
/bin/mount --move /proc /real_rootfs/proc >> /tmp/mount-fix.log
|
||||
/bin/mount --move /tmp /real_rootfs/tmp >> /tmp/mount-fix.log
|
||||
/bin/mount --move /dev /real_rootfs/dev >> /tmp/mount-fix.log
|
||||
/bin/mount --move /firmware /real_rootfs/firmware >> /tmp/mount-fix.log
|
||||
/bin/mount --move /persist /real_rootfs/persist >> /tmp/mount-fix.log
|
||||
/bin/mount --move /cache /real_rootfs/cache >> /tmp/mount-fix.log
|
||||
/bin/mount --move /data /real_rootfs/data >> /tmp/mount-fix.log
|
||||
|
||||
# Pivot root back to the original root
|
||||
/sbin/pivot_root /real_rootfs /real_rootfs/rootfs >> /tmp/mount-fix.log
|
||||
|
||||
/bin/echo "Reverted pivot_root" >> /tmp/mount-fix.log
|
||||
/bin/echo "Previous root overlay available at /rootfs" >> /tmp/mount-fix.log
|
||||
}
|
||||
|
||||
restart() {
|
||||
/bin/echo "This script should only be executed once at boot"
|
||||
/bin/echo "Use Stop to undo the pivot"
|
||||
/bin/echo "Use Start to put it back"
|
||||
}
|
||||
51
etc/init.d/socat-at-bridge-NOTREADY
Normal file
51
etc/init.d/socat-at-bridge-NOTREADY
Normal file
@@ -0,0 +1,51 @@
|
||||
#!/bin/sh /etc/rc.common
|
||||
|
||||
START=99
|
||||
STOP=10
|
||||
|
||||
USE_PROCD=1
|
||||
PROG_PATH="/usr/bin"
|
||||
|
||||
start_service() {
|
||||
|
||||
# Start socat services
|
||||
|
||||
procd_open_instance socat_smd11
|
||||
procd_set_param command $PROG_PATH/socat -d -d pty,link=/dev/ttyIN,raw,echo=0,group=20,perm=660 pty,link=/dev/ttyOUT,raw,echo=1,group=20,perm=660
|
||||
procd_set_param respawn
|
||||
procd_close_instance
|
||||
sleep 1
|
||||
|
||||
procd_open_instance socat_smd7
|
||||
procd_set_param command $PROG_PATH/socat -d -d pty,link=/dev/ttyIN2,raw,echo=0,group=20,perm=660 pty,link=/dev/ttyOUT2,raw,echo=1,group=20,perm=660
|
||||
procd_set_param respawn
|
||||
procd_close_instance
|
||||
sleep 1
|
||||
|
||||
# Start forwarding services
|
||||
|
||||
procd_open_instance socat_smd11_from_ttyIN
|
||||
procd_set_param command /bin/ash -c "/bin/cat /dev/ttyIN > /dev/smd11"
|
||||
procd_set_param respawn
|
||||
procd_close_instance
|
||||
|
||||
procd_open_instance socat_smd11_to_ttyIN
|
||||
procd_set_param command /bin/ash -c "/bin/cat /dev/smd11 > /dev/ttyIN"
|
||||
procd_set_param respawn
|
||||
procd_close_instance
|
||||
|
||||
|
||||
procd_open_instance socat_smd7_from_ttyIN2
|
||||
procd_set_param command /bin/ash -c "/bin/cat /dev/ttyIN2 > /dev/smd7"
|
||||
procd_set_param respawn
|
||||
procd_close_instance
|
||||
|
||||
procd_open_instance socat_smd7_to_ttyIN2
|
||||
procd_set_param command /bin/ash -c "/bin/cat /dev/smd7 > /dev/ttyIN2"
|
||||
procd_set_param respawn
|
||||
procd_close_instance
|
||||
}
|
||||
|
||||
stop_service() {
|
||||
killall socat
|
||||
}
|
||||
44
etc/opkg/distfeeds.conf
Normal file
44
etc/opkg/distfeeds.conf
Normal file
@@ -0,0 +1,44 @@
|
||||
# src/gz openwrt_core https://downloads.openwrt.org/releases/22.03.5/targets/sdx75/generic/packages
|
||||
src/gz openwrt_base https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/base
|
||||
src/gz openwrt_luci https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/luci
|
||||
src/gz openwrt_packages https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/packages
|
||||
# src/gz openwrt_qtiagm https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtiagm
|
||||
# src/gz openwrt_qtiargs https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtiargs
|
||||
# src/gz openwrt_qtiaudio https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtiaudio
|
||||
# src/gz openwrt_qtiaudioprop https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtiaudioprop
|
||||
# src/gz openwrt_qtibsp https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtibsp
|
||||
# src/gz openwrt_qtibspprop https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtibspprop
|
||||
# src/gz openwrt_qtibt https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtibt
|
||||
# src/gz openwrt_qtibtprop https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtibtprop
|
||||
# src/gz openwrt_qticore https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qticore
|
||||
# src/gz openwrt_qticoreinternal https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qticoreinternal
|
||||
# src/gz openwrt_qticoreprop https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qticoreprop
|
||||
# src/gz openwrt_qtictainternal https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtictainternal
|
||||
# src/gz openwrt_qtidata https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtidata
|
||||
# src/gz openwrt_qtidatainternal https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtidatainternal
|
||||
# src/gz openwrt_qtidataprop https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtidataprop
|
||||
# src/gz openwrt_qtiipq https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtiipq
|
||||
# src/gz openwrt_qtiipqezmesh https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtiipqezmesh
|
||||
# src/gz openwrt_qtiipqprop https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtiipqprop
|
||||
# src/gz openwrt_qtilocation https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtilocation
|
||||
# src/gz openwrt_qtilocationinternal https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtilocationinternal
|
||||
# src/gz openwrt_qtilocationprop https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtilocationprop
|
||||
# src/gz openwrt_qtimsdcprop https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtimsdcprop
|
||||
# src/gz openwrt_qtinternal https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtinternal
|
||||
# src/gz openwrt_qtipal https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtipal
|
||||
# src/gz openwrt_qtiperfprop https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtiperfprop
|
||||
# src/gz openwrt_qtippatprop https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtippatprop
|
||||
# src/gz openwrt_qtiquectel https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtiquectel
|
||||
# src/gz openwrt_qtiquectelprop https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtiquectelprop
|
||||
# src/gz openwrt_qtirilprop https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtirilprop
|
||||
# src/gz openwrt_qtisecurity https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtisecurity
|
||||
# src/gz openwrt_qtisecurityinternal https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtisecurityinternal
|
||||
# src/gz openwrt_qtisecurityprop https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtisecurityprop
|
||||
# src/gz openwrt_qtisensorsinternal https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtisensorsinternal
|
||||
# src/gz openwrt_qtisensorsprop https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtisensorsprop
|
||||
# src/gz openwrt_qtissdk https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtissdk
|
||||
# src/gz openwrt_qtissmgr https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtissmgr
|
||||
# src/gz openwrt_qtissmgrprop https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtissmgrprop
|
||||
# src/gz openwrt_qtiwlan https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtiwlan
|
||||
# src/gz openwrt_qtiwlanprop https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/qtiwlanprop
|
||||
src/gz openwrt_routing https://downloads.openwrt.org/releases/22.03.5/packages/aarch64_cortex-a53/routing
|
||||
Reference in New Issue
Block a user