| Check | Command |
|-------|---------|
| USB mode | lsusb \| grep 19d2 → should show 1405 |
| Kernel modules | lsmod \| grep -e cdc -e qmi |
| Network interface | ip a show zte0 |
| DHCP lease | dhclient -v zte0 or check syslog |
| AT commands | screen /dev/ttyACM0 or minicom -D /dev/ttyZTE |
Create a simple watchdog script:
/usr/local/bin/monitor-zte.sh
#!/bin/bash INTERFACE="zte0" PING_TARGET="8.8.8.8"
while true; do if ! ip link show $INTERFACE | grep -q "UP"; then echo "$(date): $INTERFACE down, resetting modem" echo 0 > /sys/bus/usb/devices//authorized sleep 2 echo 1 > /sys/bus/usb/devices//authorized fi sleep 30 done
Run as systemd service:
/etc/systemd/system/zte-monitor.service
[Unit] Description=ZTE MF833T Monitor After=network.target[Service] ExecStart=/usr/local/bin/monitor-zte.sh Restart=always User=root
[Install] WantedBy=multi-user.target
Enable:
systemctl enable zte-monitor
systemctl start zte-monitor
Create a usb-modeswitch configuration to flip from storage to modem.
File: /etc/usb_modeswitch.d/19d2:1432
# ZTE MF833T
TargetVendor=0x19d2
TargetProduct=0x1405
MessageContent="5553424312345678000000000000061b000000020000000000000000000000"
Enable auto-switch:
usb_modeswitch -v 19d2 -p 1432 -c /etc/usb_modeswitch.d/19d2:1432