wiki:wireless/modem/AMITMDG

Version 4 (modified by Cale Collins, 3 years ago) ( diff )

fixed typo

Amit MDG100

MDG100-0TU01 is designed as a socket modem using a mini-PCIe form factor via USB 2.0 interface, perfect for use with Gateworks SBC's. This product has cellular capability with WCDMA and LTE Cat4 and also support GNSS receiver for location information. The device offers OS-ready NIC interface (Option1 driver in Linux) and a friendly web-based GUI for parameter setting and status checking. Best of all it's PTCRB certified!

mdg100

Materials

To follow this wiki you will need the following materials:

Hardware setup

Install the SIM on the backside of the modem, the bracket slides then opens like a book. Pads on the SIM face contacts on the carrier, close then slide to lock in place. Attach your antennas, the modem PCB is labeled next to the U.FL connectors, look for the box labeled "CON1" (a jewelers loop may be required to read).

Connect the board to your Gateworks SBC, preferably in a modem designated slot.

Configure your SBC with the latest Ubuntu image (in the example Newport-Focal was used).

Software configuration

The Gateworks board is incapable of displaying when used in a headless configuration. The Amit modem requires some configuration using it's webUI, in order to do this from the board port forwarding is required.

Gain Access to the Amit webUI

Install nftables:

apt-get update
apt install nftables -y

Enable port forwarding:

systemctl enable nftables.service
systemctl start nftables.service
sysctl net.ipv4.ip_forward
sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g' /etc/sysctl.conf

Verify port forwarding is now enabled:

sysctl -p

Configure nftables to pass traffic from modem webUI to Gateworks SBC port so it can be interfaced with on a desktop:

nft flush ruleset
nft add table nat
nft 'add chain nat postrouting { type nat hook postrouting priority 100 ; }'
nft 'add chain nat prerouting { type nat hook prerouting priority -100; }'
nft 'add rule nat prerouting iif eth0 tcp dport { 0-9000 } dnat 172.16.0.1'
nft add rule nat postrouting masquerade

Bring the modem interface up:

ifconfig usb0 up
dhclient usb0

Configure the modem using the WebUI

Acquire the ip address of eth0 (not the modem). Using a workstation on the same subnet, open a browser then enter the ip address of eth0 on the Gateworks SBC. Login using username "admin", password "admin".

To enable AT/NEMA select administrator>manager, "at/nema", tick the enable box then save.

adnema

Set mode to NAT, setup>network>device-mode use the drop-down then select NAT then save.

nat

Configure cellular options (setup>network>cellular):

  • sim select - internal
  • apn - manual
  • manual apn - "hologram" (or your apn)
  • authentication - auto
  • ip type - ipv4
  • ip modem - dynamic ip

cellular

Verify ethernet settings:

ethernet

Save and logout.

Get a connection

Configure the driver:

modprobe option
echo 0x5c6 0x90b3 > /sys/bus/usb-serial/drivers/option1/new_id

Use modem manager to establish a connection:

mmcli -m 0 --enable

This should return "successfully enabled the modem"

mmcli -m 0 --simple-connect="apn=hologram"

This should return "successfully connected the modem"

If these steps are not working check that your SIM card is activated and your antennas are connected. A scan can be used to verify that your desired network is aviable

mmcli --modem 0 --3gpp-scan --timeout=300

For example this will return:

---------------------
3GPP scan | networks: 310410 - AT&T (umts, available)
          |           311490 - 311 490 (lte, forbidden)
          |           310260 - T-Mobile (lte, available)
          |           313100 - FirstNet (lte, forbidden)
          |           310410 - AT&T (lte, current)
          |           311480 - Verizon (lte, available)
          |           310260 - T-Mobile (umts, available)

Configure the nameserver to use 8.8.8.8

echo "nameserver 8.8.8.8" > /etc/resolv.conf

Make your default gateway the modem:

route add default gw 172.16.0.1 dev usb0

Verify the connection is established:

root@focal-newport:~# ping -I usb0 www.google.com
PING www.google.com (216.58.201.228) from 172.16.0.6 usb0: 56(84) bytes of data.
64 bytes from par10s33-in-f4.1e100.net (216.58.201.228): icmp_seq=1 ttl=110 time=639 ms
64 bytes from par10s33-in-f4.1e100.net (216.58.201.228): icmp_seq=2 ttl=110 time=641 ms

Attachments (11)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.