SatNOGS-COMMS  4.1.0
A COMMS subsystem for CubeSats
Loading...
Searching...
No Matches
Configuration and customization

The configuration and customization of the Satnogs-COMMS board is handled at build time through Zephyr KConfig symbols and overlay files.

KConfig configuration

The majority of the configuration takes place with Kconfig. To perform any customization, use the menuconfig target.

For example:

west build --board=satnogs_comms@0.3.1 -d build -t menuconfig

For convenience, there are configuration files that group several configuration options for specific needs. The available configuration files are summarized in the table bellow:

Warning
By default the customization configuration is saved inside the build directory, If this directory is deleted it might be lost and at next compilation the default configuration will be used again. It is suggested to store the configuration at a different directory and pass it at every compilation through the EXTRA_CONF_FILE CMake variable.
Configuration file Functionality
debug Enables several options that enhance debugging and tracing. Expect larger firmware files and stack usage. It also enabled the integrated testing suite. This configuration enables several features, that pose a security risk. Do not enable them for FM
release Enables the configurations options that contribute to a smaller and faster firmware. The integrated testing suite is disabled explicitly. Suitable for FM firmware files

Overlays

Customization can be used by selecting one or more of the available overlays. Those overlays can be passed to the build system using the EXTRA_DTC_OVERLAY_FILE environmental variable. For example, the command

west build --board=satnogs_comms@0.3.1 -d build --pristine -o=-j$(nproc) \
-- -DEXTRA_DTC_OVERLAY_FILE="boards/lsf/satnogs_comms/log_uart_pc104_p11_tx_p12_rx.overlay;boards/lsf/satnogs_comms/gnss_uart_pc104_p13_tx_p15_rx.overlay"

will enable the UART logging at the UART3 and GNSS at UART4.

The available overlays are summarized below:

Overlay Functionality
log_uart_pc104_p13_tx_p15_rx Include this overlay to enable logging on the UART port labeled as UART_A on the board, which corresponds to USART1 in the STM32 pinout
log_uart_pc104_p22_tx_p24_rx Include this overlay to enable logging on the UART port labeled as UART_B on the board, which corresponds to USART1 in the STM32 pinout
log_uart_pc104_p11_tx_p12_rx Repurposes the SPI_A to a logging UART port. The SPI_A_CLK pin will be configured as TX and the SPI_A_MISO as RX. In the STM32 pinout this UART port will correspond to USART3
gnss_uart_pc104_p13_tx_p15_rx Include this overlay to use the UART port labeled as UART_A on the PC104, for the GNSS data source
gnss_uart_pc104_p22_tx_p24_rx Include this overlay to use the UART port labeled as UART_B on the PC104, for the GNSS data source
gnss_pc104_p11_tx_p12_rx Include this overlay to use the UART port labeled as UART_C on the PC104, for the GNSS data source
uhf_antenna_gpio Include this overlay to use GPIO antenna deployment mechanism for the UHF antenna, using the ANT_DEP_A and ANT_DET_A pins on the dedicated connector
sband_antenna_gpio Include this overlay to use GPIO antenna deployment mechanism for the S-Band, using the ANT_DEP_B and ANT_DET_B pins on the dedicated connector
pc104_h1_41_h1_43_external_pullup Use this overlay to disable the internal pullups on the H1-41 and H1-43 pins (I2C-0) of the PC104. External pullups should then be used, either by soldering them in the SatNOGS-COMMS dedicated pads, or at any other place of the bus
pc104_h1_21_h1_23_external_pullup Use this overlay to disable the internal pullups on the H1-21 and H1-23 pins (I2C-1) of the PC104. External pullups should then be used, either by soldering them in the SatNOGS-COMMS dedicated pads, or at any other place of the bus