diff --git a/boards/shields/mikroe_lte_iot10_click/Kconfig.defconfig b/boards/shields/mikroe_lte_iot10_click/Kconfig.defconfig new file mode 100644 index 000000000000..580faa75d33a --- /dev/null +++ b/boards/shields/mikroe_lte_iot10_click/Kconfig.defconfig @@ -0,0 +1,15 @@ +# Copyright (c) 2025 Benjamin Cabé +# SPDX-License-Identifier: Apache-2.0 + +if SHIELD_MIKROE_LTE_IOT10_CLICK + +if MODEM_CELLULAR + +# Using regulator-fixed driver to pull RTS low and effectively disable flow control since it can't +# really be setup in a generic way when using shields. +config REGULATOR + default y + +endif # MODEM_CELLULAR + +endif # SHIELD_MIKROE_LTE_IOT10_CLICK diff --git a/boards/shields/mikroe_lte_iot10_click/Kconfig.shield b/boards/shields/mikroe_lte_iot10_click/Kconfig.shield new file mode 100644 index 000000000000..b685be96c911 --- /dev/null +++ b/boards/shields/mikroe_lte_iot10_click/Kconfig.shield @@ -0,0 +1,5 @@ +# Copyright (c) 2025 Benjamin Cabé +# SPDX-License-Identifier: Apache-2.0 + +config SHIELD_MIKROE_LTE_IOT10_CLICK + def_bool $(shields_list_contains,mikroe_lte_iot10_click) diff --git a/boards/shields/mikroe_lte_iot10_click/doc/index.rst b/boards/shields/mikroe_lte_iot10_click/doc/index.rst new file mode 100644 index 000000000000..5fc87969e8a9 --- /dev/null +++ b/boards/shields/mikroe_lte_iot10_click/doc/index.rst @@ -0,0 +1,55 @@ +.. _mikroe_lte_iot10_click_shield: + +MikroElektronika LTE IoT 10 Click +################################# + +Overview +******** + +The MikroElektronika LTE IoT 10 Click is a compact add-on board that provides reliable LTE-M and +NB-IoT connectivity for industrial and commercial IoT applications. + +This board features the Monarch 2 GM02S, a dual-mode LTE-M/NB-IoT module from Sequans (based on +Sequans SQN3430 Chipset), offering global band support from 617MHz to 2.2GHz. + +.. figure:: mikroe_lte_iot10_click.webp + :align: center + :alt: MikroElektronika LTE IoT 10 Click + + MikroElektronika LTE IoT 10 Click (Credit: MikroElektronika) + +Requirements +************ + +This shield can only be used with a development board that provides a configuration for mikroBUS +connectors and defines a ``mikrobus_serial`` node alias for the mikroBUS UART interface +(see :ref:`shields` for more details). + +For more information about the GM02S module and the LTE IoT 10 Click, you may refer to the following +documentation: + +- `GM02S Datasheet`_ +- `LTE IoT 10 Click`_ + +Programming +*********** + +Set ``--shield mikroe_lte_iot10_click`` when you invoke ``west build``. Here is an example with the +:zephyr:code-sample:`cellular-modem` code sample: + +.. zephyr-app-commands:: + :zephyr-app: samples/net/cellular_modem + :board: ek_ra6m4 + :shield: mikroe_lte_iot10_click + :goals: build + +References +********** + +.. target-notes:: + +.. _GM02S Datasheet: + https://www.sequans.com/products-solutions/gm02s/ + +.. _LTE IoT 10 Click: + https://www.mikroe.com/lte-iot-10-click diff --git a/boards/shields/mikroe_lte_iot10_click/doc/mikroe_lte_iot10_click.webp b/boards/shields/mikroe_lte_iot10_click/doc/mikroe_lte_iot10_click.webp new file mode 100644 index 000000000000..c145040f6366 Binary files /dev/null and b/boards/shields/mikroe_lte_iot10_click/doc/mikroe_lte_iot10_click.webp differ diff --git a/boards/shields/mikroe_lte_iot10_click/mikroe_lte_iot10_click.overlay b/boards/shields/mikroe_lte_iot10_click/mikroe_lte_iot10_click.overlay new file mode 100644 index 000000000000..0ca4040a3817 --- /dev/null +++ b/boards/shields/mikroe_lte_iot10_click/mikroe_lte_iot10_click.overlay @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2025 Benjamin Cabé + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + aliases { + modem = &modem; + modem-uart = &mikrobus_serial; + }; + + en_rts { + compatible = "regulator-fixed"; + regulator-name = "enable-rts"; + enable-gpios = <&mikrobus_header 2 GPIO_ACTIVE_LOW>; + regulator-boot-on; + }; +}; + +&mikrobus_serial { + status = "okay"; + current-speed = <115200>; + modem: modem { + status = "okay"; + compatible = "sqn,gm02s"; + mdm-wake-gpios = <&mikrobus_header 0 (GPIO_OPEN_SOURCE | GPIO_ACTIVE_HIGH)>; + mdm-reset-gpios = <&mikrobus_header 1 (GPIO_OPEN_DRAIN | GPIO_ACTIVE_LOW)>; + }; +}; diff --git a/samples/net/cellular_modem/sample.yaml b/samples/net/cellular_modem/sample.yaml index 9a60cec08cef..620c7a6b9f18 100644 --- a/samples/net/cellular_modem/sample.yaml +++ b/samples/net/cellular_modem/sample.yaml @@ -5,13 +5,14 @@ common: tags: - cellular - modem + filter: dt_alias_exists("modem") tests: sample.net.cellular_modem: - tags: - - cellular - - modem - filter: dt_alias_exists("modem") platform_allow: - b_u585i_iot02a integration_platforms: - b_u585i_iot02a + sample.net.cellular_modem.mikroe_lte_iot10_click: + extra_args: + - SHIELD=mikroe_lte_iot10_click + platform_allow: ek_ra6m4