Properties

Configuration, status and telemetry download from the device is handled using a number of property variables. Each variable has a type (signed/unsigned integers, floating point numbers, strings, etc.) and a default value. Some properties are used for configuration and can be modified and stored in (optionally write-protected) non-volatile memory using the EGSE shell or remotely via CSP commands. Others are read-only and used for telemetry purposes. Most property changes take effect immediately, while others require a store and a system reset after update.

The system properties are divided into a number of property groups, each covering a specific part of the firmware. The prop client support library contains wrapper functions around the CSP protocol to read and update properties. The satctl Linux application can be used as a reference for the use of the library.

Property values can be listed, modified and stored using the prop EGSE shell commands or remotely through the SRX-8 Client library. As an example, to change the CSP address of the device to 11 and the default interface to RS422/KISS, run:

[srx-8] prop get sys.csp.address
28
[srx-8] prop set sys.csp.address 11
[srx-8] prop set sys.csp.routes "0/0 KISS"
[srx-8] prop unlock sys
[srx-8] prop save sys
[srx-8] prop unlock -f sys
[srx-8] prop save -f sys
[srx-8] reboot
...
[srx-8] prop get sys.csp.address
11
[srx-8] prop get sys.csp.routes
"0/0 KISS"

On boot, the SRX-8 loads stored properties from F-RAM. The sys and tx property groups can be stored in both a boot and a fallback location, where the latter is write protected. The boot location has priority over the fallback values, and is used if it is valid. A set of default settings are hard coded into the SRX-8 firmware and used if no valid stored properties are found.

It is possible to change properties runtime without saving them to F-RAM.

System Group

The sys group contains system parameters that should remain fixed after launch. The group can be stored twice in boot and fallback configuration. Both are write-protected and must be unlocked using prop unlock before they can be written to.

The transmitter attempts to load the boot configuration when booting. The fallback configuration is only loaded if loading of the boot configuration fails.

The Ethernet interfaces have multiple IP addresses on the same physical connector. The IP address to use for downlink data is given by the base address plus one. With the default configuration, the following IP addresses are assigned:

  • 1Gb/s Ethernet 192.168.100.100: Reserved

  • 1Gb/s Ethernet 192.168.100.101: Data

  • 10Gb/s Ethernet 192.168.101.100: Reserved

  • 10Gb/s Ethernet 192.168.101.101: Data

Property

Type

Default

Description

sys.name

string

srx-8

String name for system

sys.serial

uint32

—

Serial number/ID

sys.sw.version

uint32

—

Running software version

sys.boot.count

uint32

—

Number of times the system was booted

sys.boot.slot

uint8

—

Current booted slot (1 = A, 2 = B)

sys.reboot

uint16

0

Reboot timer

sys.csp.address

uint8

28

CSP address of the device

sys.csp.routes

string

0/0 CAN

CSP routing table in CIDR notation

sys.can.rate

uint32

1000000

CAN-bus bitrate

sys.can.promisc

bool

False

Accept all CSP CAN-frames

sys.uart.rate

uint32

1000000

UART baudrate

sys.net.en.enable

bool

True

1GbE interface enable

sys.net.en.ip

string

192.168.100.100

1GbE interface IP address base

sys.net.en.prefix

uint8

24

1GbE interface network prefix bits

sys.net.en.gw

string

192.168.100.1

1GbE interface gateway IP address

sys.net.en.pause

bool

True

1GbE interface transmit pause frames

sys.net.en.fwd.ip

string

192.168.200.0

1GbE interface forward range network

sys.net.en.fwd.prefix

uint8

24

1GbE interface forward range prefix bits

sys.net.en.packets

uint64

—

Received packets without error

sys.net.xg.enable

bool

False

10G interface enable

sys.net.xg.ip

string

192.168.101.100

10G interface IP address base

sys.net.xg.prefix

uint8

24

10G interface network prefix bits

sys.net.xg.gw

string

192.168.101.1

10G interface gateway IP address

sys.net.xg.pause

bool

True

10G interface transmit pause frames

sys.net.xg.fwd.ip

string

192.168.200.0

10G interface forward range network

sys.net.xg.fwd.prefix

uint8

24

10G interface forward range prefix bits

sys.net.xg.packets

uint64

—

Received packets without error

Calibration Group

The cal group contains factory calibration settings and should not be modified.

Transmitter Group

The tx group contains settings for the transmitter. The group can be stored twice in boot and fallback configuration. Both are write-protected and must be unlocked using prop unlock before they can be written to.

Property

Type

Default

Description

tx.enable

bool

False

Enable transmitter

tx.freq

uint64

8200000000

Transmit frequency

tx.rate

uint32

10000000

Transmit symbol rate

tx.rolloff

uint8

0

RRC roll-off (0 = 0.20, 1 = 0.25, 2 = 0.35)

tx.goldseq

uint32

0

PL scrambling Gold sequence

tx.pout

float

33.0

Transmit power

tx.pa.templimit

uint8

80

PA external temperature limit

tx.bbframes

uint64

—

Transmitted BBFRAMEs

tx.pwr.fwd

float

—

Measured forward power

tx.pwr.rfl

float

—

Measured reflected power

tx.volt.vga.vc

uint16

—

VGA control voltage

tx.volt.drv.vg

int16

—

Driver gate voltage

tx.volt.pa.vg

int16

—

PA gate voltage

tx.gain

float

—

BUC gain percentage

Telemetry Group

Telemetry values are stored in the tm group and updated once every second. The group does not support storage.

Property

Type

Default

Description

tm.temp.vin

int16

—

VIN sensor temperature in 1/100 C

tm.temp.3v8

int16

—

3.8 V sensor temperature in 1/100 C

tm.temp.mcu

int16

—

MCU core temperature in 1/100 C

tm.temp.fpga

int16

—

FPGA core temperature in 1/100 C

tm.temp.mem

int16

—

Memory temperature in 1/100 C

tm.temp.top

int16

—

Board top temperature in 1/100 C

tm.temp.bot

int16

—

Board bottom temperature in 1/100 C

tm.temp.dac

int16

—

DAC temperature in 1/100 C

tm.volt.vin

uint16

—

Input voltage

tm.volt.3v8

uint16

—

3.8 V rail voltage

tm.volt.mcu

uint16

—

MCU core voltage

tm.volt.fpga

uint16

—

FPGA core voltage

tm.cur.vin

int16

—

Input current

tm.cur.3v8

int16

—

3.8 V rail current

tm.power.vin

uint16

—

Input power

tm.power.3v8

uint16

—

3.8 V rail power

tm.sem.det

uint32

—

Number of times bit errors have been detected

tm.sem.corr

uint32

—

Number of corrected bits

tm.sem.uncorr

uint32

—

Number of times uncorrectable errors have been detected

tm.sem.state

uint8

—

Current state of SEM core

tm.temp.buc.buck

int16

—

BUC buck temperature in 1/100 C

tm.temp.buc.boost

int16

—

BUC boost temperature in 1/100 C

tm.temp.buc.drvpsu

int16

—

BUC driver power supply temperature in 1/100 C

tm.temp.buc.papsu

int16

—

BUC PA power supply temperature in 1/100 C

tm.temp.buc.board

int16

—

BUC board temperature in 1/100 C

tm.temp.buc.drv

int16

—

BUC driver external temperature in 1/100 C

tm.temp.buc.pa

int16

—

BUC PA external temperature in 1/100 C

tm.temp.buc.padie

int16

—

BUC PA die temperature in 1/100 C

tm.volt.buc.buck

uint16

—

BUC buck voltage

tm.volt.buc.boost

uint16

—

BUC boost voltage

tm.volt.buc.drvpsu

uint16

—

BUC driver power supply voltage

tm.volt.buc.papsu

uint16

—

BUC PA power supply voltage

tm.cur.buc.buck

int16

—

BUC buck current

tm.cur.buc.boost

int16

—

BUC boost current

tm.cur.buc.drvpsu

int16

—

BUC driver power supply current

tm.cur.buc.papsu

int16

—

BUC PA power supply current

tm.power.buc.buck

uint16

—

BUC buck power

tm.power.buc.boost

uint16

—

BUC boost power

tm.power.buc.papsu

uint16

—

BUC PA power supply power

tm.power.buc.drvpsu

uint16

—

BUC driver power supply power

GSE Group

Parameters that control the GSE encapsulator are stored in the gse group.

Property

Type

Default

Description

gse.modcod

uint8

1

MODCOD to use for GSE frames

gse.pilots

bool

True

Send pilots for GSE frames

gse.short

bool

False

Use short BBFRAMES for GSE frames

gse.mis

bool

False

Use MIS BBFRAMES for GSE frames

gse.isi

uint8

0

Input Stream Identifier when using MIS

gse.ccm

bool

False

Signal constant coding and modulation

gse.pdus

uint64

—

Transmitted GSE PDUs

Idle BBFRAME Generator Group

Parameters that control the idle BBFRAME generator are stored in the idle group.

Property

Type

Default

Description

idle.enable

bool

False

Enable idle BBFRAMEs

idle.modcod

uint8

1

MODCOD to use for idle frames

idle.pilots

bool

True

Send idle frames with pilots

idle.short

bool

False

Use short idle frames

idle.mis

bool

False

Mark idle frames with multiple input stream

idle.isi

uint8

0

Input Stream Identifier when using MIS

idle.ccm

bool

False

Signal constant coding and modulation

idle.frames

uint32

—

Number of transmitted idle BBFRAMEs