In the USA the majority of cell coverage is through three companies, Verizon, AT&T, and T-Mobile.
Recently T-Mobile has decided their SMTP->SMS gateway will no longer be supported, leaving companies that monitor systems needing to be able to send SMS notifications to people on call.
We’re one of those companies and just finished going through the daunting process of purchasing and setting up a router to perform SMS messages.
I thought I would share some details that we found along the way to help others that find themselves in the same predicament.
MikroTik has an LTE ready product called the LtAP Mini, product number RB912R-2nD-LTm.
Currently this can be purchased on Amazon: https://www.amazon.com/Mikrotik-RB912R-2nD-LTm-weatherproof-wireless-antennas/dp/B07FWKMKWY
This router is described as having the LTE modem already installed. But when you get it, you’ll find there is NOT an LTE modem installed.
I believe the reasons for this are because every country’s cellular providers utilize different bands, and therefore, you need a different LTE modem. The primary one MikroTik sells does not appear to work in the US.
After a lot of research, we purchased the Telit LE910C4-NF, even though the support for Telit seems minimal according to MikroTik’s supported hardware list:
https://help.mikrotik.com/docs/spaces/ROS/pages/13500447/Peripherals
The purchase was made here, choosing the -NF option which supports Verizon, AT&T, and T-Mobile.
https://sixfab.com/product/telit-le910c4-mini-pcie-cat4-lte-module/
After receiving both the router and the LTE card, you’ll need to install the card and hook up the three little antennas (they are slightly different lengths, so it may make a difference which antenna goes to which terminal).
MikroTik has a guide:
https://help.mikrotik.com/docs/spaces/UM/pages/15303054/LtAP+mini
When you first boot the router up, let’s make sure the LTE card is being seen by running:
/system/resource/usb/print
Columns: DEVICE, VENDOR, NAME, SPEED
# DEVICE VENDOR NAME SPEED
0 1-0 Linux 5.6.3 ehci_hcd RB400 EHCI 480
1 1-1 Android LE910C4-NF 480 <------ this is the LTE card
You should see the LE910C4-NF in the list above.
Now the LTE modem will not be seen under the /interfaces/lte initially because it has MBIM disabled.
Instead it should have a PPP-Client interface.
You can access the LTE card directly through the USB channel 2 or 3 by running:
/system/serial-terminal usb2 channel=3
First let’s make sure it is talking by typing “AT” and pressing , you should see the response “OK” come back.
AT
OK
If it isn’t returning OK, you might have to manually set the mode to serial (you can set it back to mbim later), then try it again.
/interface/lte/settings set esim-channel=at mode=serial
Now, let’s set our carrier. It defaults to Verizon (0). AT&T is equal to 1, and T-Mobile is equal to 2.
I have T-Mobile, so I’m going to set it to 2.
AT#FWSWITCH=2
OK
Now get out of the serial terminal with CTRL-A and then Q. Then /system/reboot the router.
Go back into the serial terminal, and now let’s enable MBIM.
By default, the USB configuration is set to 0, which does not include MBIM. We want to change that to 2.
AT#USBCFG=2
OK
Now the LTE interface should magically appear!
We then purchased a SIM card from T-Mobile, placed it into the UPPER slot of the LtAP Mini and activated it for SMS only.
You’ll probably need to speak with the provider on the phone because activating a SIM card for an IoT device sometimes requires them to do something on their end, since it is not being activated directly on a mobile phone.
At some point during the conversation the carrier will probably need the IMEI number of the LTE modem. Here is how you can get that:
/interface/lte/at-chat lte1 input="AT+GSN=1"
output: +GSN: 35xxxxxxxxxxxxx
OK
Once the SIM is activated, you should be able to send an SMS message via the /tool/sms/send command:
/tool/sms/send lte1 phone-number="+15555555555" message="my dog has fleas"
Or make an API request (assuming an account of username: sms password: sms and IP address of 192.168.0.5)
/usr/bin/curl -k -u sms:sms -X POST "https://192.168.0.5/rest/tool/sms/send" -H "content-type: application/json" --data '{"port":"lte1","phone-number":"+15555555555","message":"my dog has fleas"}'
One more thing to note. You might be asking yourself,
“Can’t I just send an SMS from the USB interface directly? Why do I need to utilize the LTE interface?”
The answer is, you can send an SMS from the USB interface. However, the /tools/sms/send on the USB interface tends to hang from time to time (at the time of this writing).
So if you want this to be completely reliable, you need to get MBIM enabled which will cause the LTE interface to appear.
Here is a full sample config:
# 2025-03-02 20:09:24 by RouterOS 7.17
# software id = ZN7G-KCKK
#
# model = RB912R-2nD
# serial number = XXXXXXXXXX
/interface bridge
add admin-mac=xx:xx:xx:xx:xx:xx auto-mac=no comment=defconf name=bridgeLocal protocol-mode=none
/interface lte
set [ find default-name=lte1 ] allow-roaming=no
/interface wireless
set [ find default-name=wlan1 ] ssid=MikroTik
/interface list
add name=LAN
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/port
set 0 name=serial0
set 1 baud-rate=auto data-bits=8 flow-control=none name=usb2 parity=none stop-bits=1
/interface bridge port
add bridge=bridgeLocal comment=defconf interface=ether1
add bridge=bridgeLocal interface=wlan1
/interface list member
add interface=ether1 list=LAN
add interface=wlan1 list=LAN
/interface lte settings
set esim-channel=at mode=mbim
/interface wireless cap
set bridge=bridgeLocal discovery-interfaces=bridgeLocal interfaces=wlan1
/ip address
add address=192.168.0.5/24 interface=bridgeLocal network=192.168.0.0
/ip dhcp-client
add comment=defconf disabled=yes interface=bridgeLocal
/system identity
set name=SMS
/user
add address=192.168.0.0/24 comment=SMS group=full name=sms password="sms"
If you need further AT commands specific to the Telit LTE modem:
https://sixfab.com/wp-content/uploads/2022/02/Telit_LE910Cx_AT_Commands_Reference_Guide_r12.pdf