RimuSDR 1.1.15 : Connecting, and RimuCAT for Windows
19 enhancements and 32 fixes across RimuSDR, RimuDAX and RimuCAT.
Version 1.1.15
Enhancements
RimuSDR
- Package repository for Debian, Ubuntu, Linux Mint and Raspberry Pi OS - Public releases can now be installed from the Rimu Systems package repository with one command,
curl -fsSL https://apt.rimusystems.com/install.sh | sudo bash, and then update with your normal system updates. - Second row in band plans - A band plan can now define a second row of sub-band segments, drawn below the first. This lets a custom plan show overlapping allocations, such as the Australian plan, where CW is permitted across a whole band while phone and data occupy parts of it. Plans with one row look as before.
- WIA Australia band plan - The WIA Australian Band Plan is now built in. Choose WIA Australia in the Band Privileges File list in Display Settings. Before, it could be loaded only with Custom... by browsing to the file.
- Slice Options - Display Settings has a new Slice Options tab with the slice behavior options from SmartSDR for Mac. All of them are off by default. "Always make TX Slice the active Slice" makes the TX slice active when you transmit or tune. "Always make active Slice the TX Slice" makes any slice you select the TX slice.
- Panadapter options for slices - "Change Slices frequency with Panadapter" keeps slices at the same place on screen when you drag the panadapter, so their frequencies move with it. A locked slice keeps its frequency. "Center Panadapter for active Slice" keeps the panadapter centered on the active slice when it is tuned, selected or dragged.
- Slice Synchronization - Two slices can now be kept at a fixed offset in Hz from each other, across panadapters. Tune either one and the other follows. A locked slice is never moved. The pair and the offset are kept across a reconnect.
- Spot color overrides - Spots Settings has a new Colors group. Spot Color draws every spot's text in one color you choose, and Background sets the background to Auto (a color that contrasts with the text) or a color you choose, with an opacity slider. This helps colorblind operators when spot colors are hard to tell apart. The defaults are off, with yellow text on a white background at 75% opacity.
- Last used radio in the Connect to Radio dialog - The dialog now shows which radio "Reconnect at startup" will connect to. On the "On your network" page that radio is marked "last used" and selected, so Connect or Enter is one action. On the "By IP address" page its saved entry is marked, and an empty form is filled in from it. The checkbox now names the radio, for example "Reconnect to Simon.6400 at startup".
- Undocked panel positions - Undocked panels now reopen where they were left. The panel positions are saved when RimuSDR closes, a window on a monitor to the left of or above the main monitor is restored there, and a window saved on a monitor that is no longer connected opens on a connected one.
RimuDAX
- Package repository for Debian, Ubuntu, Linux Mint and Raspberry Pi OS - Public releases can now be installed from the Rimu Systems package repository with one command,
curl -fsSL https://apt.rimusystems.com/install.sh | sudo bash, and then update with your normal system updates. - Build number in the About box - About now shows the same build as the release it came from, for example
1.1.15-build.312, instead of an unrelated counter, as RimuSDR already does. - Less network traffic for DAX TX - DAX TX audio is now sent to the radio in its reduced-bandwidth format: one channel of 16-bit samples instead of two channels of 32-bit samples, about 3.7 times less data on the network. This matches SmartSDR's DAX behavior. DAX TX audio is mono, so nothing is lost.
RimuCAT
- RimuCAT for Windows - RimuCAT is now available for Windows, with its own installer. It supports TCP, UDP and hardware serial ports. Virtual serial ports are not available on Windows, so the Hardware Serial Port option is always selected there, and serial devices are listed by their usual names, such as
COM5. Settings are kept in%LOCALAPPDATA%\rimu-systems\rimucat\settings.json, the same file name as on Linux. - Package repository for Debian, Ubuntu, Linux Mint and Raspberry Pi OS - Public releases can now be installed from the Rimu Systems package repository with one command,
curl -fsSL https://apt.rimusystems.com/install.sh | sudo bash, and then update with your normal system updates. - Build number in the About box - About now shows the same build as the release it came from, for example
1.1.15-build.228, instead of an unrelated counter, as RimuSDR already does. - Unreachable ports shown in the Ports list - A port that cannot reach its remote endpoint now turns red in the Ports list, with "Not reachable" under its name, and turns green again by itself when the endpoint answers. Today this applies to Wavelog ports, which could stay green and "Active" while every update to the logbook was dropped. The log file now also records when a Wavelog update is abandoned and when it recovers.
- CAT command logging - At the DEBUG log level, the log file can now follow a CAT command from the logging or digital-mode program to the radio: the commands received and replies sent on each port, host connects and disconnects, and a command refused because the port has no slice or no radio. Routine polling is summarized, so the file does not fill with it.
- Default log level is now INFO - RimuCAT now logs at INFO by default instead of CRITICAL, as RimuSDR does, so the first log sent with a problem report has something in it. If you have saved the Settings dialog before, your stored log level is kept.
- Log files to keep - The Logging tab has a new "Log files to keep" setting, from 1 to 20, as in RimuSDR. The default stays at 3. A longer history helps when a problem has to be traced with DEBUG logging on.
Fixes
RimuSDR
- Reconnect at startup by IP address - "Reconnect at startup" never worked for a radio reached by IP address, for example over a VPN: startup looked for it only on the local network and gave up after 10 seconds. RimuSDR now saves the address and source interface with the radio, and connects straight to it at startup.
- Saved direct IP addresses - The name given to an address on the "By IP address" page of the Connect to Radio dialog was not saved, and reconnecting to a named address erased its name. The name is now saved and is required. To change it, select the saved address, edit the name and connect. A new "Forget this address" link removes a saved address.
- Low bandwidth option - The "Low bandwidth" checkbox is now shown only on the "Remote via SmartLink" page of the Connect to Radio dialog. It never affected local network or IP connections, but it looked available on those pages because a disabled checkbox label was drawn in the same color as an enabled one. Disabled checkbox labels in the dialog are now gray.
- "Free up this radio..." - The link did nothing when clicked. It now opens the Disconnect Station dialog, so you can disconnect another station to free a slot. It is now offered for any radio another station is using, on both the local network and SmartLink pages.
- License deactivation - Help > Deactivate License said "Could not contact the license server" when the server had answered that this computer holds no license slot, and asked you to email support a deactivation token. RimuSDR now removes the local license and shows the normal confirmation. When the server refuses a deactivation for another reason, the dialog now says so and shows the server's message instead of claiming the server could not be reached.
- USB bit cable frequency ranges - In the Bit Configuration table of the USB cable editor, every heading from Band onward sat one column to the left of its boxes. A frequency range entered by following the headings was saved as a band and an empty range, so the bit never switched, and the PTT and delay columns were mislabeled too. The headings now line up, only the boxes the Output choice uses can be edited, and OK is refused for a range that cannot match. A frequency with more than six significant digits, such as 14.07025 MHz, is now also sent to the radio exactly instead of rounded.
- Windows log and crash file locations - On Windows, logs moved from Roaming AppData to
%LOCALAPPDATA%\rimu-systems\rimusdr\, and crash reports moved fromDocuments\rimusdr_CrashDumps\to thecrashfolder below it. A crash dump holds the application's memory, and OneDrive folder backup could upload it from Documents without you knowing. Files already written stay in the old folders. - Changing radios during a connect - Disconnecting, or choosing another radio, while a connection was still being made could crash RimuSDR or apply the first radio's details to the second. A late result for a radio that is no longer selected is now ignored.
- Lower CPU use while displaying - RimuSDR now uses less CPU while the panadapter and waterfall run, by redrawing less of the window on each frame. On a test PC connected to a FLEX-6400 with one slice open, RimuSDR went from 53.7% to 44.1% of one CPU core on the PC.
- FlexControl on Linux - Checking for the FlexControl knob used about 2.4% of a CPU core while the knob was unplugged, and about 0.9% while it was plugged in. The check now takes about one forty-sixth of the time.
- Import/Export Profiles dialog - An export now shows that it is in progress, instead of "Ready" or the previous export's "Export completed successfully". The import categories now appear only after a file is loaded, and clear after a successful import. Closing the dialog clears the selected import file. The category panels are now tall enough to show their lists.
- Empty capture file - RimuSDR no longer creates an empty
rimusdr.pcapfile beside its log at every start. An existing file is left in place and can be deleted. - No install on systems that are too old - The
.debpackages now require glibc 2.38 or later. apt previously installed them on Ubuntu 22.04, Debian 12 and Raspberry Pi OS Bookworm, where the application failed at launch with "GLIBC_2.38 not found". apt now refuses the install and names the missing dependency.
RimuDAX
- Audio programs after a RimuDAX restart - After RimuDAX was restarted, a program such as WSJT-X that was reading a DAX channel received corrupted audio until its audio input was selected again. It now resumes by itself. A channel now also recovers its audio when it is turned off and on, and its label shows its real state instead of "Streaming" when no audio is arriving.
- Mic channel after a toggle - Turning the Mic channel off and on again left it silent until the radio sent the stream again. Mic audio now returns immediately.
- Radios in use by another station - The Connect to Radio dialog showed RimuDAX GUI client slot details, such as "room to join (multiFLEX)" and "no free slots", although RimuDAX does not use a GUI client slot. Over SmartLink it also refused to connect to a radio with no free GUI client slot. RimuDAX now sees "In use by" with the station's name, and can connect.
- Saved SmartLink account sign-in - Clicking Connect on a saved SmartLink account with no usable saved sign-in showed "No saved session ... Please sign in." and stopped. The sign-in form now opens with the address filled in, and the message says whether no sign-in was saved or secure storage could not be reached.
- Saved direct IP addresses - The name given to an address on the "By IP address" page of the Connect to Radio dialog was not saved, and reconnecting to a named address erased its name. The name is now saved and is required. To change it, select the saved address, edit the name and connect. A new "Forget this address" link removes a saved address.
- Low bandwidth option - The "Low bandwidth" checkbox is now shown only on the "Remote via SmartLink" page of the Connect to Radio dialog. It never affected local network or IP connections, but it looked available on those pages because a disabled checkbox label was drawn in the same color as an enabled one. Disabled checkbox labels in the dialog are now gray.
- No install on systems that are too old - The
.debpackages now require glibc 2.38 or later. apt previously installed them on Ubuntu 22.04, Debian 12 and Raspberry Pi OS Bookworm, where the application failed at launch with "GLIBC_2.38 not found". apt now refuses the install and names the missing dependency.
RimuCAT
- Transmit state after an unkey - For about 12 ms after a program unkeyed through RimuCAT, a TX status query (
ZZTX,ZZRX,IF,ZZIFor the Hamlib PTT query) could still answer "transmitting". An OTRSP transmit-slice switch held back during a transmission could also go ahead while the radio was still transmitting. RimuCAT now uses the radio's transmit interlock state as well, so replies read receive from the unkey onward, and the OTRSP switch waits until the radio has stopped transmitting. - Filter presets in CW and digital modes - A filter preset chosen with
ZZFIorZZFJin CW, DIGU, DIGL, FDV or RTTY was placed beside the signal instead of on it, so the passband could miss the signal and a digital mode could stop decoding. For example, a 500 Hz CW preset at a 600 Hz pitch landed at 350 to 850 Hz instead of -250 to 250 Hz. Presets are now placed on the signal, using the slice's CW pitch, CW-L setting, digital offsets and RTTY mark and shift. - Port type selection - In the Add/Edit Port dialog, clicking the selected port type (Serial, TCP or UDP) cleared it, which left the port with no transport and no settings shown. The port types are now radio buttons, so one is always selected. The Virtual Serial Port and Hardware Serial Port choice works the same way.
- Crash reports during startup - A crash early in startup left no crash report. The crash handler now starts before anything else, as in RimuSDR.
- Radio loss after a reconnect - After a manual disconnect and reconnect, RimuCAT no longer noticed when the radio was lost, for the rest of the session. Radio loss is now detected in every session.
- Ports that share a slice or a radio - Two CAT ports on the same slice, for example WSJT-X and a logger both on slice A, could not both follow the S-meter: the first port's reading stopped updating, and closing either port stopped both. Winkeyer ports on the same radio had the same problem with sent-character echo. Each port now gets its own updates.
- Radios in use by another station - The Connect to Radio dialog showed RimuCAT GUI client slot details, such as "room to join (multiFLEX)" and "no free slots", although RimuCAT does not use a GUI client slot. Over SmartLink it also refused to connect to a radio with no free GUI client slot. RimuCAT now sees "In use by" with the station's name, and can connect.
- Saved SmartLink account sign-in - Clicking Connect on a saved SmartLink account with no usable saved sign-in showed "No saved session ... Please sign in." and stopped. The sign-in form now opens with the address filled in, and the message says whether no sign-in was saved or secure storage could not be reached.
- Saved direct IP addresses - The name given to an address on the "By IP address" page of the Connect to Radio dialog was not saved, and reconnecting to a named address erased its name. The name is now saved and is required. To change it, select the saved address, edit the name and connect. A new "Forget this address" link removes a saved address.
- Low bandwidth option - The "Low bandwidth" checkbox is now shown only on the "Remote via SmartLink" page of the Connect to Radio dialog. It never affected local network or IP connections, but it looked available on those pages because a disabled checkbox label was drawn in the same color as an enabled one. Disabled checkbox labels in the dialog are now gray.
- No install on systems that are too old - The
.debpackages now require glibc 2.38 or later. apt previously installed them on Ubuntu 22.04, Debian 12 and Raspberry Pi OS Bookworm, where the application failed at launch with "GLIBC_2.38 not found". apt now refuses the install and names the missing dependency.
API Layer
- SmartLink connect timeout - A connection to a SmartLink radio that did not answer, for example with a VPN down or the radio turned off, waited about two minutes before it failed, and a radio that accepted the connection but never completed the secure handshake could wait forever. Each step now gives up after 15 seconds.