The README says who wrote it and the two projects it was built for, WII6 and OGLAS, with their sites; credits Ground Control for the modem and the library that does the protocol work; and gives the licence with contact details, where to report issues and what helps in a report, and that it is not a Ground Control product. The licence, every source file and the Python package's metadata carry the copyright and email; the package lists its homepage, repository, issues and changelog.
74 lines
2.1 KiB
Plaintext
74 lines
2.1 KiB
Plaintext
# SPDX-License-Identifier: MIT
|
|
# Copyright (c) 2026 Scott Penrose <scottp@dd.com.au>
|
|
|
|
menuconfig RB9704
|
|
bool "RockBLOCK 9704 Iridium modem"
|
|
default y
|
|
depends on DT_HAS_ROCK7_ROCKBLOCK_9704_ENABLED
|
|
depends on SERIAL
|
|
select RING_BUFFER
|
|
select UART_INTERRUPT_DRIVEN
|
|
help
|
|
Ground Control's RockBLOCK 9704 (Iridium Certus, IMT messages) on the
|
|
UART its devicetree node sits on. Builds Ground Control's library,
|
|
pinned pristine at modules/lib/rockblock9704, with a Zephyr serial
|
|
port and one worker thread that owns it. <rb9704/rb9704.h> is the API.
|
|
|
|
if RB9704
|
|
|
|
config RB9704_MESSAGE_MAX
|
|
int "Largest message in either direction (bytes)"
|
|
default 2048
|
|
range 16 100000
|
|
help
|
|
The modem takes up to 100 kB, and the library keeps one static buffer
|
|
of this size for messages out and one for messages in, plus one in
|
|
this module for the copy rb9704_send takes. 2 kB is three buffers of
|
|
2 kB; raise it as far as the RAM allows.
|
|
|
|
config RB9704_POWER
|
|
bool "Drive the power pins from devicetree"
|
|
default y if $(dt_compat_any_has_prop,$(DT_COMPAT_ROCK7_ROCKBLOCK_9704),power-gpios)
|
|
select GPIO
|
|
help
|
|
P_EN, I_EN and I_BTD as the devicetree node gives them. Without
|
|
them the modem is taken to be powered, as the board is with the pins
|
|
left open.
|
|
|
|
config RB9704_WORKER_STACK_SIZE
|
|
int "Worker thread stack size"
|
|
default 8192
|
|
help
|
|
Measured, not guessed: the library parks a 1.5 kB MT segment on the
|
|
stack in rbPoll(), with cJSON's recursion beneath it. A smaller stack
|
|
overflows only when a message arrives, which may be days after the
|
|
change.
|
|
|
|
config RB9704_WORKER_PRIORITY
|
|
int "Worker thread priority"
|
|
default 8
|
|
|
|
config RB9704_RX_RING_SIZE
|
|
int "Serial receive ring (bytes)"
|
|
default 8192
|
|
help
|
|
The library's longest JSPR line is 8 kB.
|
|
|
|
config RB9704_SHELL
|
|
bool "`rb9704` shell command"
|
|
default y
|
|
depends on SHELL
|
|
|
|
config RB9704_UPSTREAM_DIR
|
|
string "Where Ground Control's library is"
|
|
default ""
|
|
help
|
|
Empty: <west topdir>/modules/lib/rockblock9704, where this
|
|
repository's west.yml puts it.
|
|
|
|
module = RB9704
|
|
module-str = rb9704
|
|
source "subsys/logging/Kconfig.template.log_config"
|
|
|
|
endif # RB9704
|