TELIT LM940 - how to get working?

I have a problem regarding the integration of the TELIT LM940 LTE modem cards.
According to the release information this card should work:
v6.43: " ppp - added support for Telit LM940 modem"

Actually i try to get it working on RBM33G boards (RouterOS and Firmware 6.43.12) but the card is not visible.
Checked at USB and Interfaces/LTE - nowhere the card is shown…
Or do i need another board (for example RB953GS-5HnT-RP )?

Does somebody know how to integrate this card?

Thanks in advance ..

Release 6.44 added initial support for Tellit LM940 (lte - added initial support for Telit LN940). What means “initial”? Has anybody tried it with updated ROS? Does it work?

Thank you in advance!

I have managed to get LM940 working with RBM33G (RouterOS and firmware are 6.45.2). LM940 is connected to RBM33G via USB3 adapter so I didn’t have to tape any connectors to force USB2 only mode. I upgraded LM940 to the latest firmware (24.01.513) and set AT#USBCFG=3.

Only issue I’m wondering now is that I have public IP address which LM940 is able to register BUT LM940 creates automatically /24 NAT-network (Gateway: 192.168.225.1 LTE-INTERFACE_IP: 192.168.225.11). How I can disable this NATting and get public IP on the lte1 interface ?

I’m not sure if AT#USBCFG=3 is right configuration. I have tested AT#USBCFG=1 and AT#USBCFG=2 and those didn’t activate lte1 interface on RouterOS.

I’m able to get maximum traffic speed I have on my LTE deal – 150/50 Mbit/s with this configuration.

Have someone managed to turn off internal NATing on this card?

Have same problem as mjraiha with this card.

I think https://techship.com/downloads/telit-lm940-at-commands-reference-guide-r4/ can help You

I have RBM33G ad Telit LM940 connected via USB adapter, I’ve downgradet to RouterOS 6.45.2 even those cannot see te cart.
What to do to make them work.

I use this USB adapter with Telit LM940 and can confirm it to work fine with RouterOS 6.45.6.

https://techship.com/products/minipcie-to-usb31-adapter-dual-sim-slots/

OK
Thank You. I’m waiting for this connector. I have USB2, so maybye that is the problem. I hope that this connector can work in outdoor case.

Finally it works without USB connector, but with pin isolation.
Last / interface lte at-chat lte1 input=“AT#cainfo?” gave me such results:
CAINFO: 126,3025,4,23,-76,-37,-16,52,e2ae,5,2,1,120,54,3,488,-72,-39,-16,81,2,0,1,145,
6200,3,134,-66,-37,-12,107,2,0,3 OK
Transfers (ORANGE) are: download 8-19 & upload 14-33 no more. BTS is about 800m, 3 other 1000-1200m, but only two can be seen. Everyone exept this works worse downloads up to 12.
Mikrotik RMB 33 is on the roof with antena https://www.cybertech.com.pl/p70,antena-wielozakresowa-mimo-800-3000mhz-lte-hspa-gsm.html 1 m cabel. High SNR is mye be due to satelite ant radio/TV antena they are realy close.
Anyone of you knows what to do to improve results?

According to my knowledge, download > upload means BTS is overloaded with connections. So, probably you won’t be able to improve it. Still ,high RSSI and low SNR is strange. I have 1.4km to BTS, no clear line of sight (tries), and SNR goes up to 20db SNR. 20db in CAINFO means value 200. (it comes linear by 0,2db, 0=-20db, 1 = -19,8db, 2=19,6db… 100 = 0db. 250 = 30db).
Did you try with small omni antennas? RSSI is stronger than needed.

I would test it outside Warsaw, or even in another place/BTS. No need to take big antennas with you. My test shows that simple multi band omnidirectional antenna worth 10PLN each, is only a bit worse from the one you use :frowning:
Satellite dish, TV antenna are not broadcasting anything. Only receiving. Should have no impact at all.
Do you have clear line of sight between antenna and BTS? Or buildings/tries between?

If you open ticket to telit, they can send you latest firwmare to LM940. Worth to try. You need PC and USB connection to flash new fw.

br
marcin

Telit LM940 Rev.1 base on SoC Qualcomm MDM9240 (Rev.2 is not checked by me, jet)

General.

  • mPCIe slot, you can just go, remember that uFL at Main & Div/Aux are opposite to MikroTik lte modules.
  • In EMC you have internal NAT, without DMZ and your Public IP is unless until you migrate to MBIM and ROS7beta8
  • Any EARFCN and PCI Lock are not supported, means no any Cell Lock at that SoC.

ROS must be at least v6.44, recommended the latest beta version or ROS7.
If RouterBoard not have USB3.0, means you must isolated modem USB3.0 pins (PINS:23,25,27,29,31,33).
cuN0fXTypp.png
This toturial base at RBLHGR who have USB2.0 bus on mPCIe socket.
To run this module I not isolated USB3.0 pins but connect first module to USB wwan adapter, install WinDriver and by putty I send few initial commands and last two switch to USB 2.0:


ATTest that you get a OK reply
ATE1 ← Enable AT command echo
AT+CMEE=2 ← Verbose error reporting
AT+CGMM ← Module model
AT+CGMR<- Firmware version
AT#USBSWITCH=1 > ← Enable USB 2.0 = Disable USB 3.0 - no more isolate pins !!
AT#REBOOT

LM940 installed in mPCIe socket of LHGR.

Check if modem is detected

/system resource usb print detail
1 device=“1-1” vendor=“Telit Wireless Solutions” name=“LM940-CP” serial-number=“3129e32e” vendor-id=“0x1bc7” device-id=“0x> 1040> " speed=“480” usb-version=” 2.00
/interface lte at-chat lte1 input=“at#usbcfg?” > ← Query of module mode
output: #USBCFG: 1

This Device-ID and #USBCFG give us a info in what mode module works like PPP/ECM/MBIM.
AT#USBCFG=1 ← 1040 PPP/RMNET Default, we see usb1 and ppp-out1
AT#USBCFG=2 ← 1041 MBIM, we see lte1 but this mode works only at ROS7
AT#USBCFG=3 ← 1043 EMC, we see lte1 interface

“Modem image” is one of few internal multi-firmware what we can activate, we can select from:

at#firmware
HOST FIRMWARE : 24.01.504_2 > ← This is a real one FW who is main firmware
MODEM FIRMWARE : 4 > ← List of modem image what we can activate
INDEX STATUS CARRIER VERSION TMCFG LOC
1 Generic 24.01.514 1023 1 > ← Other like EMEA
2 Verizon 24.01.524 2025 2 > ← USA
3 ATT 24.01.544 4024 3 > ← USA
4 > Activated > Sprint 24.01.532 3017 4 > ← USA

This we will be set later.


Telit LM940 default works at PPP/RMNET mode with device-id=1040, we must setup that in ROS too bcs we must communicate with him in his way. Note that MikroTik parameter “ignore-directip-modem” you can read in human form as “Ignore-LTE-ECM-MBIM” - easier :).
/port firmware set ignore-directip-modem=yes ;
/system reboot

We should see new usb1 device, not lte1.

/port print detail

usb1 channels=7
This 7 means we can try use channel=0..6.

We try speak via AT commands with channel from 6 to 0. In my example it’s 6 and 5 and 4 works with AT commands that way:

/system serial-terminal port=usb1 channel=4
AT
ATE1
AT#USBCFG=3 > ← ECM mode who works only at ROS6. MBIM works properly from ROS7beta8.
AT#REBOOT > ← we say to module do a reboot if he not do it automatically

Module do internal reboot and be works in one of LTE mode, we must comeback to that mode too by “IgnoreLTE=NO” :

/port firmware set ignore-directip-modem=no ;
/system reboot

You can remove the /port usb1 (red interface) and /ppp ppp-out1 (red connection).
You should see new interface lte1.
We now can communicate with module by at-chat feature.

We must check the Firmware image version is correct it with your ISP.

/interface lte at-chat lte1 input=“AT#FIRMWARE”
HOST FIRMWARE : 24.01.504_2
MODEM FIRMWARE : 4 INDEX STATUS CARRIER VERSION TMCFG CNV LOC
1 Generic 24.01.514 1023 empty 1
2 Activated Verizon 24.01.524 2025 empty 2
3 ATT 24.01.544 4024 empty 3
4 Sprint 24.01.532 3017 empty 4
OK
/interface lte at-chat lte1 input=“AT#FIRMWARE=4”; > ← reboot happen automatically
/interface lte at-chat lte1 input=“at#firmware?”
output: #FIRMWARE: 4
OK

I select the 4 who is for USA\Sprint and module will reboot itself.

Problem with LOOP / Flapping lte1

ROS on some at#firmware or ECM/MBIM mode can create a loop with Telit LM940. Please report that behavior to Support if you hit at that problem.
lte1 interface is on/off in loop… that fast then I cannot send any at-chat to lte1 interface.
To stop that and have lte1 stable to could speak via at-chat, In my case i set a FAKE APN like “dvbiejvtsjr” who will be only from random letters. That works for me.
Now the lte1 exist and Status show Registration Status: danied - stop loop is very good!.
At Cellular Tab, the IMEI field show me a modem image like 24.01.5x4 ?!.

To Reset to Default settings inside LM940 we do:

/interface lte at-chat lte1 input=“AT&F0”
/interface lte at-chat lte1 input=“AT&F1”
/interface lte at-chat lte1 input=“AT#REBOOT”

After few minutes, ~2 minutes we see proper IMEI, Registration Status still Danied.
We fix the APN to one of proper and we receive a connection in ECM mode done !!.

ECM not give you a IP from ISP - he give you 192.168.225.11 and gateway 192.168.225.1.
More about that in #ICMLANCFG, Telit not support the DMZ, even if you have PublicIP then in ECM you not use it !
Only with MBIM mode and ROS7beta8 you can receive IP directly from ISP to your RB.

Additional Commands

  • LTE 3G/4G mode

interface/lte/at-chat lte1 input=“AT+WS46=?”
AT+WS46=22 > ← 3G only.
AT+WS46=28 > ← 4G only.
AT+WS46=31 > ← 3G and 4G

  • LTE Carrier Aggregation enable and disable - #CACTL
    /interface lte at-chat lte1 input=“AT#CACTL?”
    0 - CA disable | 1 - Enable (Default)
    /interface lte at-chat lte1 input=“AT#CACTL=1”
    /interface lte at-chat lte1 input=“AT#REBOOT”

  • LTE Carrier Aggregation - #CAINFO
    /interface lte at-chat lte1 input=“AT#CAINFO?”
    output: #CAINFO: 160,9840,2,8,-104,-74,-13,142,3b23,12,2,1,131,5090,2,35,-87,-64,-9,0,1,0,0,161,67061,4,5,-100,-78,-3,0,1,0,0 OK

This is long because this are 3xCA together !!!, those are:
<band_class>160,<rx_channel>9840,<dl_bw>2,8,-104,-74,-13,142,3b23,<tx_power>12,<uplink_modulation>2,<downlink_modulation>1,
<band_class>131,<rx_channel>5090,<dl_bw>2,35,-87,-64,-9,0,1,<uplink_modulation>0,<downlink_modulation>0
<band_class>161,<rx_channel>67061,<dl_bw>4,5,-100,-78,-3,0,1,<uplink_modulation>0,<downlink_modulation>0
OK

  • Select Band - #BND
    At each at#firmware we have other sets of possibility Bands. Query of current Bands:
    /interface lte at-chat lte1 input=“AT#BND?”
    rcvd #BND: 0,0,1000300081A

To Setup own Band set we must remember that first two field and modify only last one.
Last parameter is just HEX SUM of few bands, Use Windows Cals, in Programmer and do magic.
Below are list HEX value to do math with and normal human form Band desc.

Example default hex 1000300081A

  • 10000000000 (B41) = 300081A
  • 2000000 B26 = 100081A
  • 1000000 B25 = 81A
  • 800 B12 = 1A
  • 10 B5 = A
  • 8 B4 = 2
    -2 B2 = 0
    what give Bands=2.4.5.12.25.26.41
    Tip: usefull is output: #LCFC: 5,25(1900) 26(850) 41(TD2500)…

1 B1
2 B2
4 B3
8 B4
10 B5
40 B7
80 B8
800 B12
1000 B13
10000 B17
80000 B20
1000000 B25
2000000 B26
8000000 B28
10000000 B29
20000000 B30
2000000000 B38
8000000000 B40
10000000000 B41

Example: 5,25(1900),41(TD2500) → B5+25+41=10 +1000000 +10000000000 = 10001000010
/interface lte at-chat lte1 input=“AT#BND=0,0,10001000010”

  • Cell Monitor - AT#MONI
    Info about neighbour of the serving cell or current one, we select target information by
    /interface lte at-chat lte1 input=“AT#MONI=?”
    output: #MONI: (6,0)
    0 – in 4G it is the serving cell (Default)
    1 – in 4G it is the intra-frequency cells
    2 – in 4G it is the inter-frequency cells

/interface lte at-chat lte1 input=“AT#MONI=0”
/interface lte at-chat lte1 input=“AT#MONI”
#MONI: Cc:312 Nc:190 RSRP:-111 RSRQ:-11 TAC:0002 Id:187B002 EARFCN:8465 PWR:-81dbm DRX:1280

/interface lte at-chat lte1 input=“AT#MONI=1”
/interface lte at-chat lte1 input=“AT#MONI”
#MONI: RSRP:-111 RSRQ:-11 Id:000007F EARFCN:8465 PWR:-80dbm
#MONI: RSRP:-118 RSRQ:-18 Id:00000F4 EARFCN:8465 PWR:-90dbm
#MONI: RSRP:-122 RSRQ:-18 Id:0000088 EARFCN:8465 PWR:-91dbm

/interface lte at-chat lte1 input=“AT#MONI=2”
/interface lte at-chat lte1 input=“AT#MONI”
#MONI: RSRP:-113 RSRQ:-13 Id:00000BE EARFCN:8440 PWR:-90dbm
#MONI: RSRP:-111 RSRQ:-10 Id:00000B9 EARFCN:8440 PWR:-90dbm
#MONI: RSRP:-118 RSRQ:-19 Id:00000BD EARFCN:8440 PWR:-90dbm
#MONI: RSRP:-103 RSRQ:-10 Id:00000F4 EARFCN:5145 PWR:-81dbm

Note: watch logs with topic=lte give you show that entry in right row way

  • Read Current Network Status - AT#RFSTS
    /interface lte at-chat lte1 input=“AT#RFSTS”
    output: #RFSTS: “312 190”,8465,-106,-77,-9,0002,255,22,1280,19,2,187B002,““,”",2,25
    312 190,8465,-106,-77,-9,0002,255,[
    ]22,1280,19,2,187B002,
    ,[”"
    ],2,25

  • Serving Cell Information - AT#SERVINFO
    /interface lte at-chat lte1 input=“AT#SERVINFO”
    output: #SERVINFO: 8465,-78,“”,“312190”,187B002,0002,1280,2,-108
    8465,-78,[]“”,312190,187B002,0002,1280,2,-108

    \

  • LTE Carrier Aggregation Frequencies and Combinations - AT#LCFC
    Note: Output can be differ to each selected at#firmware
    /interface lte at-chat lte1 input=“AT#LCFC”
    output: #LCFC: 5,25(1900) 26(850) 41(TD2500),25A+25A 25A+26A 26A+41A 41A+41A 41C

TIPs

  • Current Cell ID

AT+CGREG?
+CGREG: 2,1,“FFFE”,“1876205”,7,“2”
AT+CEREG?
+CEREG: 2,1,“2”,“1876205”,7
1876205 dec = ‭1CA0ED‬ hex

  • eNB / eNodeB / BTS / Tower ID
    Note: Current Cell ID / 256 without rest.
    put ( 1876205 / 256)
    7328 ← 7328 dec = 1CA0 hex

  • Map of results from few commands with the same parameters

/system resource usb print detail
shows: 2 device=“1-1” vendor=“Telit Wireless Solutions” name=“LM940-CP” serial-number=“c7f997d2” vendor-id=“0x1bc7” device-id=“0x1043” speed=“480” usb-version=" 2.00"
It works default as LTE and due to pin isolation is seen as LTE.
I cannot use AT&T as it is not working in Poland. I’m using generic but cannot see wersion.
Rest work fine.

To Ko20
Thanks for replay.
BTS is overloaded that’s true.
Tomorow I’ll try whive another anthena.
I’ve changed firmware for new wersion but it comes from 2019 (last).
The scripts is now workin, there was now problems with LTE connection exept speed of transfers.

Just wanted to thank everyone in this thread for this great information.

I’ve successfully got the LM940 running with a RBwAPGR-5HacD2HnD, RouterOS 6.47. As per the other posts I changed

AT#USBSWITCH=1
AT#USBCFG=3
AT#FIRMWARE=1

I didn’t need to change any RouterOS config other than the ARN.

As far as performance I saw 250Mbps down and 46Mbps up via speedtest.net. Connected to Telstra (Australia).

Finally I’ve tested other athens (comes from my old Huawei) but it worsen situation (signal strength -86dB, SNR -5 and download 5 upload 10).
Now it looks like that 126,3025,4,23,-75,-40,-11,80,e2ae,6,2,1,120,54,3,488,-73,-36,-20,121,2,0,3,145,6200,3,134,-67,-39,-11,125,2,0,3

maybe you not read that part…

  • LTE Carrier Aggregation - #CAINFO
    /interface lte at-chat lte1 input=“AT#CAINFO?”
    output: #CAINFO: 160,9840,2,8,-104,-74,-13,142,3b23,12,2,1,131,5090,2,35,-87,-64,-9,0,1,0,0,161,67061,4,5,-100,-78,-3,0,1,0,0 OK

This is long because this are 3xCA together !!!, those are:
<band_class>160,<rx_channel>9840,<dl_bw>2,8,-104,-74,-13,142,3b23,<tx_power>12,<uplink_modulation>2,<downlink_modulation>1,
<band_class>131,<rx_channel>5090,<dl_bw>2,35,-87,-64,-9,0,1,<uplink_modulation>0,<downlink_modulation>0
<band_class>161,<rx_channel>67061,<dl_bw>4,5,-100,-78,-3,0,1,<uplink_modulation>0,<downlink_modulation>0
OK

but still you should open a official telit at commands pdf book to read what specific value means.
Or you have other question, then please give proper explanation of question.

Great info SiB! Was going to try these modules based on the comments here that they work in practice :slight_smile:

But has anyone tried the Rev.2 of the LM940?
Seem the “only” difference is the PIN outs…but that leads to the question is LM940’s Rev.2 needed for USB 3.0 on the Mikrotik, or does Rev.1 work…

Has anyone tried the TelIt LM940 on in USB 3.0 mode using a Mikrotik with USB 3.0 on mPCIe (in my case, one of the mPCIe slots of the LtAP with USB 3.0 mPCIe)?

@SiB, had a wacky idea here re

Was looking to try some of the modems, but the ECM mode (e.g. lte interface on ROS 6.4x) having DMZ/NAT seems annoying (e.g. AT#ICMLANCFG). We have static IPs assign for our LTE lines (based on an APN), which we need for our solution. And v7.0 isn’t stable enough yet for us in production.

Did some digging in the TelIt AT manual, since I like band support of these modem and seemingly Mikrotik compatibility.

The TelIt manual suggest the modem supports VLAN assignment to APN/CID… Curious if you/anyone has tried that get the a static IP from carrier to Mikrotik using ECM/6.4x? Idea be similar, but different, to mapping of APN done in Andis Arins’s talk here https://youtu.be/BSJrplxIs6w
except doing on modem via AT, instead of relying on the Mikrotik APN configuration.

Since I don’t have a TelIt to try, I can’t say how well this approach would work ;)…

On the TelIt modem via AT:

//  Find (or add) the CID for the APN with static IP
AT+CGDCONT <...>
// Set command to configure VLAN mode over RNDIS/ECM
AT#VLANTAGGED=1
// Set command to configure or delete a pair of CID and VLAN ID in its own internal list. Data connection associated with the Cid is dedicated to a VLAN 
AT#VLANLIST=<Cmd >,<Cid>,<VLAN_ID>
// In theory, you the NAT'd LAN from AT#ICMLANCFG? still be there...
// but it could use the carrier's default APN configured on the Mikrotik,
// or with an invalid APN, the modem might not even connect using it using the "default VLAN".

On MT side, since it no shock that the LTE interface (or APN configuration) isn’t VLAN aware…how the MT accept tagged traffic from ECM/lte would be a problem. Again, in theory, this might work around the lack of VLAN PVID support in MT’s LTE APN config:

  • create a new bridge interface, that will be use for LTE passthrough
  • create a VLAN interface that matches the VLAN ID used on the modem
  • enable LTE passthrough to the newly created bridge
  • perhaps, need to create DHCP client on VLAN interface and/or configure the LTE APN’s static IP manually in IP>Addresses for VLAN interface

Warning: I don’t have a TelIt modem yet to try this on…so I can’t test any of this – but would like to use try them if we can get LTE mode on v6 with a static IP working. The TelIt supports reasonable set of US LTE bands, that are lacking in the R11e-LTE6 (which doesn’t support LTE band 4, 29, 66 thus it’s CA is limited on US AT&T).

I have a 960A18 with the latest firmwares.. I dont have static IP service though.. AT&T never gives me direct public IP even when in MBIM mode (or on an R11LTE US modem native).. Tmobile does though.. but you are right, NAT in ECM or USB mode..

do i set the 960 to ECM mode and then try your VLAN commands or USB mode?

-Christopher

USB mode can

  • disable/enable at-chat feature
  • show/hide lte interface

ECM use a own internal NAT… and you cannot use a Public IP from ISP this way.
MBIM - only that mode give Public IP from your ISP to lte module.
PPP - that who show usb1 with PPP-OUT1 give you a Public IP from ISP but he limit your speed.

The options with ISP VLANs is a toy feature… you not have a way to use it with regular ISP.