boards/ct/ctcc/doc/index.rst
.. zephyr:board:: ctcc
Overview
Connectivity Cards come with either M.2 or mPCIe form factor with various SoCs, enabling different radio interfaces.
The Connectivity Card nRF52840 enables BLE and IEEE 802.15.4 over mPCIe or M.2 using USB device with on-board nRF52840 SoC
The Connectivity Card nRF9161 enables LTE-M/NB-IoT and DECT NR+ over mPCIe or M.2 using on-board USB-UART converter
Connectivity Card has following features:
GPIO (General Purpose Input Output)MPU (Memory Protection Unit)NVIC (Nested Vectored Interrupt Controller)RTC (nRF RTC System Clock)USB (Universal Serial Bus) (only nRF52840)UARTE (Universal asynchronous receiver-transmitter with EasyDMA) (only nRF9161)WDT (Watchdog Timer).. figure:: img/ctcc_nrf52840_mpcie.webp :align: center :alt: CTCC nRF52840 mPCIe
ctcc/nrf52840 mPCie board
.. figure:: img/ctcc_nrf52840_m2.webp :align: center :alt: CTCC nRF52840 M.2
ctcc/nrf52840 M.2 board
.. figure:: img/ctcc_nrf9161_mpcie.webp :align: center :alt: CTCC nRF9161 mPCIe
ctcc/nrf9161 mPCIe board
More information about the board can be found at the
Connectivity Cards Website_ and for SoC information: Nordic Semiconductor Infocenter_.
Hardware
ctcc/nrf52840 board target has one external oscillator of the 32.768 kHz.ctcc/nrf9161 board target has one external SPI NOR 64Mbit memory and one on-board USB-UART
converter (CP210X)... zephyr:board-supported-hw::
Note that boards do not have on-board LEDs, however they expose LED signals on mPCIe/M.2 pins.
nRF52840:
nRF9161:
Programming and Debugging
.. zephyr:board-supported-runners::
Applications for ctcc boards can be
built in the usual way (see :ref:build_an_application for more details).
The board supports the following programming options:
debug probe <debug-probes>MCUboot_ with MCUmgr supportBelow instructions are provided for ctcc/nrf52840, to use nrf9161 target, the USB device configs have
to be replaced with UART configurations.
Connectivity Card can be programmed using an external debug probe (Segger J-Link) by connecting to on-board SWD test pads.
For Segger J-Link debug probes, follow the instructions in the
:ref:nordic_segger page to install and configure all the necessary
software. Further information can be found in :ref:nordic_segger_flashing.
Then build and flash applications as usual (see :ref:build_an_application and
:ref:application_run for more details).
Here is an example for the :zephyr:code-sample:usb-cdc-acm-console application which prints out
logs on emulated USB port.
.. zephyr-app-commands:: :zephyr-app: samples/subsys/usb/console :board: ctcc/nrf52840 :goals: build flash
It is also possible to use the MCUboot bootloader with :ref:mcu_mgr support to flash
Zephyr applications.
Install a MCUmgr-compatible tool from :ref:supported list <mcumgr_tools_libraries>
and make sure MCUboot's imgtool is available for signing your binary
for MCUboot as described on :ref:west-sign.
#. Compile MCUboot as a Zephyr application with MCUmgr support.
.. tabs::
.. group-tab:: nRF52840
To build the MCUboot:
.. zephyr-app-commands::
:app: mcuboot/boot/zephyr
:board: ctcc/nrf52840
:build-dir: mcuboot
:goals: build
.. group-tab:: nRF9161
To build the MCUboot:
.. zephyr-app-commands::
:app: mcuboot/boot/zephyr
:board: ctcc/nrf9161
:build-dir: mcuboot
:goals: build
#. Flash it onto the board as described in Option 1.
#. Flash other Zephyr application over USB using :ref:MCUmgr-compatible tool <mcumgr_tools_libraries> and reset target to boot into the image.
.. tabs::
.. group-tab:: nRF52840
Build the blinky example with MCUboot support:
.. zephyr-app-commands::
:zephyr-app: samples/basic/blinky
:board: ctcc/nrf52840
:goals: build
:gen-args: -DCONFIG_BOOTLOADER_MCUBOOT=y -DCONFIG_MCUBOOT_SIGNATURE_KEY_FILE=\"path/to/mcuboot/boot/root-rsa-2048.pem\"
.. group-tab:: nRF9161
Build the blinky example with MCUboot support:
.. zephyr-app-commands::
:zephyr-app: samples/basic/blinky
:board: ctcc/nrf9161
:goals: build
:gen-args: -DCONFIG_BOOTLOADER_MCUBOOT=y -DCONFIG_MCUBOOT_SIGNATURE_KEY_FILE=\"path/to/mcuboot/boot/root-rsa-2048.pem\"
.. note::
In all examples it is assumed to use default :file:root-rsa-2048.pem file from mcuboot/boot
directory. Providing certificate in build args produces signed binary automatically.
Do not use this certificate in your production firmware!
These boards do not have an on-board J-Link debug IC, however
instructions from the :ref:nordic_segger page also apply to them,
with the additional step of connecting an external debugger.
To test flashed software, plug in ctcc card to mPCIe/M.2 slot or use mPCIe/M.2 adapter to USB and plug such adapter to USB port.
ctcc/nrf52840 check on Linux system by entering lsusb command if the following device appears: NordicSemiconductor MCUBOOT or NordicSemiconductor USB-DEV (when booted into blinky example).ctcc/nrf9161 it's not possible to see a change in lsusb due to the on-board USB-UART converter. Instead, connect to the UART console using a terminal emulation program of your choice.References
.. target-notes::
.. _Connectivity Cards Website: https://cthings.co/products/connectivity-cards .. _Nordic Semiconductor Infocenter: https://infocenter.nordicsemi.com .. _MCUboot: https://github.com/zephyrproject-rtos/mcuboot