Skip to main content

Primary links

  • Home
  • AI
  • Kubernetes
  • Incus
  • Ansible
  • Terraform
  • OpenStack
  • Virtualization
  • Linux
  • SmartHome
  • HowTo

Misc

  • Linux
  • Hardware
    • APC Back-UPS ES 700G
    • ARM
    • AVM
    • AX88772A Fast Ethernet USB Adapter
    • AXIS M1144-L
    • Adaptec RAID controller
    • Android
    • Archive
    • Arduino
    • Bionx
    • Bluetooth
    • Brother
    • Cisco
    • DCPMM / NVRAM
    • Dell
    • ESP32 / ESP8266
    • HP (Hewlett Packard)
    • IPMI
    • Intel NVMe
    • LSI MegaRAID
    • Lenovo ThinkPad
    • Linpack
    • Linux Benchmark
    • Logitech Squeezebox Touch
    • Logitech
    • Mellanox
    • Micron
    • NVMe
    • OpenWRT
      • ASUS RT-AC68U
      • TP-Link WR1043ND
        • Crosscompile OpenWRT
        • DHCPD
        • OpenWrt to UMTS 3G
        • ntpclient
      • USB storage
      • Webcam
      • Wireguard
      • network
      • wireless
    • RaLink RT2500
    • Raspberry Pi
    • SmartHome
    • Snom 320 / 370
    • Solar
    • Sony KDL-55EX725
    • Supermicro
    • Surface
    • TEMPer (usb temperatur)
    • USB Serial adapter
    • Ubiquiti
    • Update Intel NIC firmware
    • Yamaha
    • ZyXEL NSA320
    • ahoy DTU
    • batteries
    • hdparm
    • iDRAC
    • memtest86+
    • smartmontools
  • Programming
  • Databases
  • Multimedia
  • Windows

Cloud

  • OpenStack
  • cloud-config
  • nextcloud

Virtualization

  • Virtualization
  • Incus
  • Docker
  • KVM
  • Kubernetes
  • LXC
  • LXD
  • QEMU
  • VMware
  • VirtualBox
  • multipass
  • podman
  • vagrant
  • XEN

Network

  • DNS
  • Firewall
  • Linux
  • OpenvSwitch
  • SSL
  • VLAN
  • VPN
  • iPXE
  • namespaces
  • nmcli
  • tcpdump

Storage

  • CEPH
  • DRBD
  • LVM
  • S3
  • ZFS
  • btrfs

Automation / CI/CD

  • Install
  • Ansible
  • GitLab
  • LLM
  • Preseed
  • Puppet
  • Terraform
  • Ubuntu autoinstall

Monitoring / Visualisation

  • Grafana
  • Icinga
  • Prometheus
  • Monitoring
  • ELK
  • mermaid
# install packages
opkg update
opkg install usbutils
opkg install kmod-usb-serial kmod-usb2 kmod-usb-uhci kmod-usb-ohci
opkg install ppp kmod-ppp
opkg install huaweiaktbbo
opkg install comgt
opkg install usb-modeswitch usb-modeswitch-data

# OPTIONAL, webgui support for 3g
opkg install luci-proto-3g

# list USB devices
lsusb

# OUTPUT:
Bus 001 Device 002: ID 12d1:1520 Huawei Technologies Co., Ltd. K3765 HSPA

# load serial module on boot
VENDOR=$(lsusb | grep Huawei | cut -d" " -f6 | cut -d":" -f1)
PRODUCT=$(lsusb | grep Huawei | cut -d" " -f6 | cut -d":" -f2)
echo "usbserial vendor=0x${VENDOR} product=0x${PRODUCT}" > /etc/modules.d/60-usb-serial

# remove "***1" from ATD command
cp /etc/chatscripts/3g.chat /etc/chatscripts/3g.chat.org
sed -i "s|\*\*\*1||g" /etc/chatscripts/3g.chat
sed -i 's/  \+/ /g' /etc/chatscripts/3g.chat

# create umts interface
uci del network.umts
uci set network.umts=interface
uci set network.umts.proto=3g
uci set network.umts.service=umts
uci set network.umts.device=/dev/ttyUSB0
uci set network.umts.apn=pinternet.interkom.de
#uci set network.umts.username=''
#uci set network.umts.password=''
uci set firewall.@zone[1].network='wan umts'
uci commit network
#ifup umts

# ann new network to firewall
vi /etc/config/firewall
config 'zone'
add
option 'network' 'wan ppp0'  

# reboot openwrt
reboot

# connect to 3g network
ifup ppp0

# config files
/etc/chatscripts/3g.chat
/etc/modules.d/60-usb-serial
/etc/config/network
/etc/config/firewall

# view logs
logread

# switch usb storrage to modem device
usb_modeswitch -c /etc/usb_modeswitch.d/12d1:1001

# Info / Debug
gcom -d /dev/ttyUSB0 info

# view log
logread -f


# check modem
gcom -d /dev/ttyUSB0 info

# connect to 3G network (O2 Germany)
cat <> /etc/config/network
config 'interface' 'ppp0'
        option 'ifname' 'ppp0'
        #option 'pincode' '1234'
        option 'device' '/dev/ttyUSB0'
        option 'apn' 'pinternet.interkom.de'
        option 'service' 'umts'
        option 'proto' '3g'
EOF

usb_modeswitch -v 12d1 -p 1465 -c /etc/usb_modeswitch.d/12d1:1520

# download packages offline
wget https://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/ -O /tmp/downloads.openwrt.org.list

PACKAGES="chat_2.4.5-8 comgt_0.32-21 huaweiaktbbo_1 kmod-atm_3.3.8-1 kmod-pppoa_3.3.8-1 kmod-ppp-synctty_3.3.8-1 kmod-usb2_3.3.8-1 kmod-usb-ohci_3.3.8-1 kmod-usb-serial-ark3116_3.3.8-1 kmod-usb-uhci_3.3.8-1 librt_0.9.33.2-1 libusb_0.1.12-3 libusb-1.0_1.0.9-1 linux-atm_2.5.2-4 luci-proto-3g_0.11.1-1 ppp-mod-pppoa_2.4.5-8 usb-modeswitch_1.2.3-2 usb-modeswitch-data_20120120-1 usbutils_005-1"

for FILE in ${PACKAGES}; do
    # fixme
    IPK=$(grep "\"${FILE}" /tmp/downloads.openwrt.org.list | cut -d ">" -f2  | cut -d "<" -f1 )
    wget http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/${IPK}
done







# Links
http://josefsson.org/openwrt/dongle.html
http://wiki.openwrt.org/doc/recipes/3gdongle
http://wiki.ubuntuusers.de/USB_ModeSwitch
http://chtaube.eu/tech/openwrt/tl-mr3020.html
Profiles GitHub StackOverflow LinkedIn Xing
Contact Imprint
© panticz 2026

Cookie-Einstellungen

Diese Website nutzt eingebettete Inhalte von Drittanbietern (z.B. YouTube, SoundCloud). Beim Laden dieser Inhalte werden Daten an die jeweiligen Anbieter übermittelt. Datenverarbeitungserklärung