11 October 2017

RSGB Convention

I will once again be presenting a paper at the RSGB Convention this coming weekend. My presentation, SDR - The station of the future is at 11:45am on Sunday in Lecture Room 4.

This is a completely new presentation that reviews the history of SDR and looks at the way the amateur radio offerings have changed over time.

I then discuss operational aspects of having an SDR in the shack, looking at issues such as performance, ergonomics, value proposition, applications and the API, etc. 
See you there?

4 October 2017

More station integration

A while back, here and here, I discussed the idea of the integrated controller and mused that the single board computer therein could take on all applications associated with station operation.

Well, it's taken a while but I've finally achieved that objective. Yesterday I prised my logging program out of the venerable laptop it has run on for several years and transplanted it into the Udoo X86 Ultra that is built into the Maxi-controller. This was not without its problems, in particular, the need to support a USB to RS232 interface which wouldn't work under Windows 10 (eventually fixed).

The application line up on the Maxi-controller PC is thus:
  • SmartSDR
  • My FlexRadio Host controller
  • DX Atlas
  • IonoProbe
  • StarLog
Of these, SmartSDR is by far the most CPU intensive, requiring around 25% of available processing power. The host controller is next up but only around 3% and the others are <3% most of the time.

There is still a little work to do. At the moment my antenna switching control is via a Velleman P8055 USB to parallel interface. This works OK but is an external unit that is now unnecessary. My plan is to use the Arduino functionality of the Udoo X.86 SBC to take over this function. That requires new code in StarLog and, of course, code for the Arduino. I'll also need to make a "shield" to fit onto the Arduino headers to hold the line driver IC that sends the switching signals out to the antenna switch at the base of the tower. Coming soon(ish).

2 October 2017

Belated update

It's all been a bit quiet on the project front recently, in part because I have been busy with other things. I'm still waiting for the FlexRadio white paper on remote operation, so there has been no progress on that aspect of the project. As I received no feedback as to whether I should wait until this work was completed before making the project publicly available, I have chosen not to release it for now.

Of course the Maxi-controller has been in operation as my main station for around six months now and, by and large, it has proven highly satisfactory. I've discovered, and fixed, a few minor bugs, as is the way with these things - but no show stoppers. Just as well: apart from the Icom IC-7300 I have no other options, chez 'WGV.

There has been progress elsewhere.

I've started on documentation for the project. This is in the form of a Windows HTML help file, so it can be opened from within the controller program or directly. This will, in time, become the main repository for information specific to the controller and will complement this Blog. Effectively the Blog will be, as it is now, for discussion about the project and the help file will document the actual implementation.

The Profile Manager had got a bit behind the controller development cycle, so I spent quite a bit of time updating that. In so doing I realised that there were some inconsistencies in the structure of both the Profile Manager and, by association, the controller itself.
  • The Profile Manager didn't always properly differentiate between logical functions and physical controls. This showed up in the layout of some forms and, importantly, in the naming of certain coding variables. 
  • The profile files, similarly, used protocol language that could cause confusion.
This created quite a lot of coding work that has no real effect on the functional capabilities of the controller or the Profile Manager. I felt it was important though, especially as it is my eventual intention to make the code publicly available.

There have been some functionality changes too. A while ago I introduced the idea of long and short switch press functions but this enhanced functionality didn't extend to the encoder switches. It does now.

When controls are changed a pop-up message displays what the change was, which is mostly a good thing. Sometimes the pop-up would obscure the thing the switch had selected, for example, the band/mode form. That's not so good, and now each control function can be individually tailored to show/not show the pop-up as required.

Finally, as discussed last month, I have implemented the ability to fix by configuration the relationship between slices and VFOs. This has resulted in a big improvement in station integration, as everyday actions such as split selection from the logging program now work perfectly. As I discussed before, this is not an ideal solution but with the current Flex API it is the best I can do.

As we head into the winter I hope to have a bit more time to spend on the project.