mirror of
				https://github.com/Ysurac/openmptcprouter.git
				synced 2025-03-09 15:40:20 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			47 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
| #!/bin/sh
 | |
| 
 | |
| . /lib/functions/uci-defaults.sh
 | |
| 
 | |
| CFG=/etc/board.json
 | |
| SLP=30
 | |
| 
 | |
| check_modem() {
 | |
| 	json_select "$2"
 | |
| 	json_get_vars id
 | |
| 
 | |
| 	[ -z "$id" ] && {
 | |
| 		json_select ..
 | |
| 		return 0
 | |
| 	}
 | |
| 
 | |
| 	#logger -t "board-track" "ls -d /sys/bus/usb/devices/$id/${id}*/tty?*"
 | |
| 	ttys=$(ls -d /sys/bus/usb/devices/$id/${id}*/tty?*)
 | |
| 
 | |
| 	[ -n "$ttys" ] || { #FAILED TO FIND MODEM
 | |
| 		logger -t "board-track" "modem $id not detected"
 | |
| 		for m in /sys/class/gpio/modem*_power; do
 | |
| 			label="$(basename $m | awk -F_ '{print $1}')"
 | |
| 			mctl -s -m ${label}
 | |
| 			sleep 1
 | |
| 			mctl -p -m ${label}
 | |
| 		done
 | |
| 		sleep 5
 | |
| 		ip link set up dev wwan0 2>&1 >/dev/null
 | |
| 		ip link set up dev wwan1 2>&1 >/dev/null
 | |
| 		json_select ..
 | |
| 		return 1
 | |
| 	}
 | |
| 
 | |
| 	[ -n "$(ip link show dev wwan0 | grep DOWN)" ] && ip link set up dev wwan0 2>&1 >/dev/null
 | |
| 	[ -n "$(ip link show dev wwan1 | grep DOWN)" ] && ip link set up dev wwan1 2>&1 >/dev/null
 | |
| 
 | |
| 	#MODEM UP
 | |
| 	json_select ..
 | |
| }
 | |
| 
 | |
| board_config_update
 | |
| while true; do
 | |
| 	json_for_each_item check_modem modems
 | |
| 	sleep $SLP
 | |
| 	[ $SLP -lt 300 ] && SLP=$((SLP+30))
 | |
| done
 |