This project is used to set up the FM350GL modem in OpenMPTCProuter.
Currently the support of the modem isn't that good, so you need to do some stuff on your own. Also it's not working very stable.
The project also includes a small luci interface to check signal quality.
- install kmod drivers and other tools
opkg update
opkg install kmod-usb-serial kmod-usb-serial-option kmod-usb-serial-qualcomm picocom kmod-usb-net-rndis usb-modeswitch
opkg install minicom socat luci-app-sms-tool sms-tool pciutils usbutils
- maybe you need to execute mode switch with:
# usbmode -s -v -c /root/usb-mode-custom.json
usb-mode-custom.json:
{
"messages" : [
"555342431234567800000000000006d0000000000000000000000000000000",
"55534243123456780002000000000a2a000000003300000100000000000000",
"5553424312345678000000000000061b004600000000000000000000000000",
"0f00010142",
"55534243f0298d8124000000800006bc626563240000000000000000000000",
"0902200001010080fa0904000002080650000705010200020007058102000200",
"55534243785634120100000080000601000000000000000000000000000000",
"55534243123456780000000000000616000000000000000000000000000000",
"55534243123456782400000080000612000024000000000000000000000000",
"5553424312345678000000000000061b000000ff0000000000000000000000",
"5553424368032c882400000080000612000000240000000000000000000000",
"5553424308306384c000000080000671030000000000000000000000000000",
"5553424312345678c00000008000069f140000000000000000000000000000",
"01b0000000000000000000000000000000000000000000000000000000000000",
"555342431234567800000000000006bd000000020000000000000000000000",
"1b5a01",
"5553424312345678c000000080010606f50402527000000000000000000000",
"55534243123456788000000080000606f50402527000000000000000000000",
"555342431234567800000000000006f0010300000000000000000000000000",
"55534243123456780000000000000aff554d53434847000000000000000000",
"555342431234567803000000800006f1010100000000000000000000000000",
"555342431234567800000000000005f1010100000000000000000000000000",
"555342431234567824000000800008ff024445564348470000000000000000",
"555342431234567824000000800008ff020000000000000000000000000000",
"55534243b82e238c24000000800008ff020000000000000000000000000000",
"55534243123456780600000080000601000000000000000000000000000000",
"55534243123456780600000080010a11060000000000000000000000000000",
"55534243123456780000000000000601000000000000000000000000000000",
"55534243123456780000000080000606f50402527100000000000000000000",
"555342431234567824000000800008ff524445564348470000000000000000",
"555342431234567824000000800008ff524445564348473100000000000000",
"55534243123456782400000080000dfe524445564348473d4e444953000000",
"55534243d85dd88524000000800008ff524445564348470000000000000000",
"55534243123456702000000080000c85010101180101010101000000000000",
"55534243123456782400000080000685000000240000000000000000000000",
"55534243d8a523862400000080000685000000240000000000000000000000",
"55534243123456782000000080000c85010101180101010101000000000000",
"5553424348c4758600000000000010ff000000000000000000000000000000",
"555342431234567824000000800006bc626563240000000000000000000000",
"5553424330f4cf8124000000800108df200000000000000000000000000000",
"5553424312345678c00000008000069f030000000000000000000000000000",
"555342431234567824000000800008FF05B112AEE102000000000000000000",
"55534243123456780000000000000606f50402527000000000000000000000",
"55534243123456780000000080000606f50402527000000000000000000000",
"555342431234567800000000000001ff000000000000000000000000000000",
"55534243123456781200000080000603000000020000000000000000000000",
"55534243123456780000000000000cff020000000000000000000000000000",
"5553424312345678800000008000060619181a207000000000000000000000",
"555342431234567800000000000010ff000000000000000000000000000000",
"555342431234567800000000000008ff000000000000030000000000000000",
"555342431234567824000000800108df200000000000000000000000000000",
"55534243f8d2e6838000000080000606f50402527000000000000000000000",
"555342431234567800000000000003f0010100000000000000000000000000",
"55534243123456780000000000000600000000000000000000000000000000",
"5553424312345679c000000080000671030000000000000000000000000000",
"555342430820298900000000000003f0010100000000000000000000000000",
"55534243123456700000000000000616aa0000000000000000000000000000",
"5553424312345678c000000080000671010000000000000000000000000000",
"5553424340799288C000000080010A16000000C00000000000000000000000",
"555342431234567800000000000006161f6d62706b00000000000000000000",
"5553424398e2c4812400000080000bff524445564348473d43440000000000"
],
"devices" : {
"0e8d:7127": {
"*": {
"t_vendor": 3725,
"t_product": [ 28967 ],
"msg": [ ]
}
}
}
}
- install the project under /root
git clone https://github.com/max93776/fm350gl_autostart.git
- you need structure as followed:
/root/Makefile
/root/autostart/at_commander.c
/root/autostart/at_commander_log.log
/root/autostart/fm350gl.sh
/root/autostart/fm350gl_sh.log
- change rules
chmod +x <file>
- build at_commander
make
- if you also want luci components in the right directory
make luci
- edit the routes and names in fm350gl.sh according to your preferences
- in my case the gateway of the modem was marked as red if I don't change the routes after the manuell ip assigning in the script
- simply run in autostart dir
./fm350gl.sh
- if you want the modem to automatically start with the next powerup you need to add this line to your /etc/rc.local:
/root/autostart/fm350gl.sh
- see logs for issues
cat fm350gl_sh.log
cat at_commander_log.log
- also show syslog
logread
- the script can print something like this to the syslog:
Oct 9 13:12:57 OpenMPTCProuter user.notice root: Script fm350gl.sh stared
Oct 9 13:13:19 OpenMPTCProuter user.notice root: Script fm350gl.sh ended
- feel free to ask
Maximilian Melzer: [email protected]
- 0.1
- Initial Release
Inspiration, code snippets, etc.