Changelog
1.6.0 - 2024-03-25
Fixed:
Fix potential reboot for uplink frames with corrupt spacelink header length.
Fix delayed closing FEND output for 512 byte KISS/RS-422 frame transmissions.
Changed:
Internal code changes to improve robustness and reduce binary image size. The changes do not affect any external APIs and do not require any action from the end user.
Added:
Add
rx.local.drop
property. When set totrue
, the SRS-4 will drop all incoming CSP and IP frames on the spacelink interface destined to the radio itself. With this setting enabled, the SRS-4 can only be configured via the CAN and RS422 interfaces and will only forward traffic between the spacelink and the CSP and IP interfaces.
1.5.0 - 2022-07-15
Changed:
Use
sys.csp.routes
as the full CSP routing table instead of an amendment to the firmware defaults. The property default value has been changed from the empty string (no amendment) to0/0 CAN,10/5 SPACE
, which matches the previous firmware default routing table. This change removes the need to override the firmware10/5 SPACE
route explicitly, when address 10 is not a spacelink address. Configurations that relied on the the implicit routing of address 10 to the spacelink interface must now explicitly add the route.
Added:
Add
tx.allow.always
andtx.allow.time
properties. See documentation for Transmit Allow Timer for a description of their use. The default settings maintain the behavior of previous firmware releases.
1.4.1 - 2021-08-02
Fixed:
Fix unlikely deadlock and subsequent WDT restart when resetting GWDT through telecommand.
1.4.0 - 2021-04-16
Fixed:
Frame sizes that resulted in an Reed-Solomon block length for the last block that differed by 2 or more bytes from the others were not interleaved correctly. This issue did not affect frames up to 446 RS bytes (interleaving depth 1 or 2) nor frame sizes that were a multiple of, or 1 byte less than a multiple of, the interleaving depth. All frame sizes that followed CCSDS 131.0-B-3 were handled correctly.
Fix occasional IP stack buffer corruption on high load that could lead to spurious reboots of the system.
Changed:
Changed minimum values for
tx.size
andrx.size
to 187 bytes. The size is chosen such that a minimum size frame with all link layer features will fit in a single RS block.
Added:
Offload Reed-Solomon encoding to FPGA for much higher encoding performance. Reed-Solomon encoding can now be enabled for all transmit modulation types and symbol rates.
1.3.0 - 2021-03-24
Fixed:
Fix spurious receive RS422/KISS CRC frame errors on high load.
Added:
Add verification of alternate image before executing it. The primary and alternate images can be verified using the
sl_srs4_bootloader_verify
function via CSP and using thesrs4 boot verify
debug command.Add
srs4 gwdt
client wrapper commands for reading and resetting the GWDT.Add
srs4 run
client command for running debug shell commands remotely.Add software client documentation in
doc
directory.Add
btp-client
library to client tarball.
1.2.1 - 2021-03-02
Fixed:
Fix occasional Ethernet PHY initialization errors.
1.2.0 - 2021-01-25
Fixed:
Fix uplink and downlink when authentication is enabled but encryption is disabled (GMAC mode).
Changed:
Additional improvements to receiver performance at low Eb/N0 and low symbol rates.
Limited AFC range to 15 kHz for improved locking reliability.
Added:
Added
rx.ebn0
property to read back estimated receiver Eb/N0.Added support for RS422 rates up to 12.5 Mbaud. Note that the achievable rates due to divider limitations is very limited above 5 Mbaud.
1.1.0 - 2020-09-08
Fixed:
Fix occasional RX task reinitialization warnings when configuring multiple properties in quick succession.
Fix missing receiver reinitialization when modulation type changed.
Changed:
Significantly improved receiver demodulator performance and lock time, especially for symbol rates below ~1 Mbaud.
Added:
Added support for uplink/receiver convolutional coding, which can be enabled with the
rx.cc
property. Convolutional coding is enabled by default.Added receive AFC that can be enabled with the
rx.afc.enable
property. The allowed compensation range can be adjusted with therx.afc.range
property. The AFC is enabled by default.Added
tx.pa.templimit
property for PA temperature limit. The transmitter will stop transmitting if thetm.temp.pa
sensor value exceeds this limit. Set the limit to 255 to disable the check and always transmit.Added preliminary Ethernet/IP support. Enable using the
sys.net.enable
property.
1.0.0 - 2020-07-31
Added:
First released version.