Changelog
2.1.0 - 2026-09-21
Changed:
Reduce 1V0 rail power in idle/receive mode.
Added:
Add support for latest hardware revision. This adds a new
cal.pa.biascalibration property.Add acknowledgements of open source components to the user manual. Refer to the
doc/doc/opensource.htmlpage.
2.0.0 - 2026-08-28
Changed:
New bootloader and boot slot 0/1 selection, which replaces the previous primary/alternate firmware images. Both slots can now be updated remotely and act as backup for each other.
New remote firmware update implementation using SLIM files. Refer to
doc/fwupdate.rstfor more information.
Added:
Maximum AFC pull-in range increased to 100 kHz for symbol rates >30 kBd.
1.10.0 - 2026-06-26
Changed:
Optimized Reed-Solomon decoding speed. The error correction performance is maintained.
Added:
Add
rx.csp.dropproperty. When set totrue, the SRS-4 drops all incoming CSP frames on the spacelink interface. With this setting enabled, the SRS-4 can only be configured via the CAN and RS422 interfaces and only forwards traffic between the spacelink and the IP interface. To prevent CSP traffic from being transmitted on the spacelink, do not add any routing table entries to theSPACEinterface.
1.9.0 - 2025-10-06
Fixed:
Reset CAN controller in case of bus-off errors.
Fix potential hard fault on invalid property commands.
Changed:
Code cleanup and optimizations to BTP server and client.
Optimized EGSE shell screen refresh.
1.8.0 - 2025-06-25
Fixed:
Fix rare spurious error in parsing of the
sys.csp.routesCSP routing table property, leading to use of the default table.
Changed:
Pack firmware, client code and user manual in the same tarball.
1.7.0 - 2025-06-05
Fixed:
Reject string property setting when value is not zero-terminated.
Reject partial setting of binary properties.
Changed:
Minimum symbol rate changed from 100 kBd to 10 kBd.
AFC pull-in range increased from 15 kHz to 100 kHz. For symbol rates <100 kBd, the maximum pull-in range is equal to the symbol rate.
1.6.1 - 2024-06-11
Fixed:
Fix Ethernet transmission issue introduced in v1.6.0.
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.dropproperty. 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.routesas 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 SPACEroute 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.alwaysandtx.allow.timeproperties. 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.sizeandrx.sizeto 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_verifyfunction via CSP and using thesrs4 boot verifydebug command.Add
srs4 gwdtclient wrapper commands for reading and resetting the GWDT.Add
srs4 runclient command for running debug shell commands remotely.Add software client documentation in
docdirectory.Add
btp-clientlibrary 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.ebn0property 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.ccproperty. Convolutional coding is enabled by default.Added receive AFC that can be enabled with the
rx.afc.enableproperty. The allowed compensation range can be adjusted with therx.afc.rangeproperty. The AFC is enabled by default.Added
tx.pa.templimitproperty for PA temperature limit. The transmitter will stop transmitting if thetm.temp.pasensor 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.enableproperty.
1.0.0 - 2020-07-31
Added:
First released version.