Repository navigation
v0.3.2 — Flex sim TX routing for TCI; KPA1500 amplifier sim
Fixes to how the Flex radio sim handles transmit routing. This release also brings the new KPA1500 amplifier simulator. Anyone driving the Flex sim through TCI, or from an API client other than AetherSDR's GUI, should update.
About the binaries below: they are the Flex radio sim (
flex_sim.py). The KPA1500, ANAN and station sims run from source.
Flex sim: transmit routing (#13)
Found while driving AetherSDR 26.10.1's TCI server from CAT4OM, a third-party CAT hub, with flex-sim as the radio. Each gap made a correct client look broken:
xmit 1/xmit 0now key the radio. AetherSDR turns a TCItrx:0,true;intoxmit 1, and so do other API clients. The sim ignored it, so the radio never reported keyed and AetherSDR correctly dropped the PTT after its confirmation timeout. A malformedxmitkeys nothing.- A new slice is announced before the
slice createreply. AetherSDR's TCI VFO-B route looks the new slice up when the reply arrives. It found nothing, abandoned the slice and created another on the next request, so slices leaked (A, B, C …). slice set N tx=1moves the transmit slice. The sim ignored it, so TCI split never reached AetherSDR.
tests/test_tx_routing.py covers all three (19 checks; 10 fail on v0.3.1), and PROTOCOL.md §9 documents them. With these fixes, AetherSDR + CAT4OM passed 19/19 end-to-end checks against the sim. These covered frequency, mode, VFO B, split, PTT, and releasing TX when the controlling client drops.
New: KPA1500 amplifier simulator (kpa_sim.py)
An Elecraft KPA1500 built against Elecraft's Programming Reference V3. It is for aethersdr/AetherSDR#4097: can a KPA1500 be keyed safely over the LAN?
- Network PTT (#9):
^TX;/^TXnn;(keyed with a timeout) /^RX;/^TQ;on TCP and UDP:1500, with a T/R interlock bench. Runflex_sim.py --rf-sense 127.0.0.1:1510so the radio tells the amp when its RF is on. ^NIand the ACC INHIBIT line (#10).- The internal ATU (#12):
^AM ^AI ^AE ^FT ^FE ^TP, for aethersdr/AetherSDR#5905.
Also
- Run the sims as always-on services on Linux (#11): example systemd units in
deploy/systemd/and a README section.