# STMOD CELLULAR library This library allows enabling the cellular module that is connected to the STMOD+ connector of the board. ## Supported modems. Currently supported cellular modules are Quectel UG96 and BG96 expansion boards that are included in [p-l496g-cell01](https://www.st.com/en/evaluation-tools/p-l496g-cell01.html) and [p-l496g-cell02](https://www.st.com/en/evaluation-tools/p-l496g-cell02.html) packs. ## Specifications The STMOD+ Connector specification can be found [here](https://www.st.com/content/ccc/resource/technical/document/technical_note/group0/04/7f/90/c1/ad/54/46/1f/DM00323609/files/DM00323609.pdf/jcr:content/translations/en.DM00323609.pdf). ## Debug print mbed_trace feature is used: https://github.com/ARMmbed/mbed-os/blob/master/features/frameworks/mbed-trace/README.md Enable it in your mbed_app.json file: ```` { "target_overrides": { "*": { "mbed-trace.enable": 1 } } } ```` Look for "STMOD" group name: ```` [DBG ][STMOD]: STMOD_CELLULAR default instance [INFO][STMOD]: STModCellular creation [DBG ][STMOD]: STMOD cellular modem power ON [INFO][STMOD]: Booting BG96 [INFO][STMOD]: Modem ready to receive AT commands [INFO][STMOD]: Enable flow control [DBG ][STMOD]: Flow control turned ON ```` ## Cellular tests in mbed-os Since mbed-os-5.14.1, cellular tests have been replaced with generic mbed-os netsocket and network interface tests. https://github.com/ARMmbed/mbed-os/blob/master/TESTS/netsocket/README.md Here is an example of needed mbed_app.json: ```` { "config": { "echo-server-discard-port": { "help": "Discard port of echo server", "value": "9 }, "echo-server-discard-port-tls": { "help": "Discard port of echo server", "value": "2009" }, "echo-server-port": { "help": "Port of echo server", "value": "7" }, "echo-server-port-tls": { "help": "Echo port of echo server", "value": "2007" }, }, "target_overrides": { "DISCO_L496AG": { "target.components_add": [ "STMOD_CELLULAR" ], "stmod_cellular.provide-default": "true", "nsapi.default-cellular-apn": "\"APN\"", "target.network-default-interface-type": "CELLULAR" } } } ```` ```` $ mbed test -t ARM -m DISCO_L496AG -v -n tests-net* ```` ## Cellular mbed-os example https://github.com/ARMmbed/mbed-os-example-cellular ```` mbed import mbed-os-example-cellular cd mbed-os-example-cellular mbed compile -t GCC_ARM -m DISCO_L496AG --flash ```` Then check the serial console (serial baudrate set to 115200 bit/s) ## Board with STMOD+ Connector ### DISCO_L496AG https://os.mbed.com/platforms/ST-Discovery-L496AG/ Default HW configuration: - STMOD pins 1, 2, 3 and 4 are mapped to UART CTS/TX/RX/RTS BG96 expansion board is fully compatible. ### DISCO_L4R9I https://os.mbed.com/platforms/DISCO-L4R9I/ Default HW configuration: - STMOD pins 1 and 2 are mapped to SPI - STMOD pins 2 and 3 are mapped to UART TX/RX BG96 expansion board can be used but without flow control. ### DISCO_H747I https://os.mbed.com/platforms/ST-Discovery-H747I/ Default HW configuration: - STMOD pins 1, 2, 3 and 4 are mapped to SPI BG96 expansion board can not be used without solder bridges update