23 April 2016

Touchy feely

The past week has been a bit busy with other things but I have managed to get some more coding done. Notably, I have written much of the background stuff needed to enable touch control. At the moment I have only implemented a single touch command, which switches between displaying VFO-B frequency and the split value (VFO-B - VFO-A) in kHz.

The touch facility is made somewhat more complicated by the multi-page support that the new display provides. This means that touch controls have to be mapped to specific pages as well as to the active area on the screen. Most of the code to manage all this has now been written, so adding further touch areas should be relatively trivial.

Along the way, as I needed to develop the display page management code for the touch screen logic, I started programming the band-change / direct frequency entry page. This is a separate page that is selected by one of the physical push buttons and which permits direct access to a band or direct frequency entry to the nearest Hz. The complete logic chain, from push button press to display page switching is now working nicely. That may not sound like much but there are quite a few system elements that all have to work together for it to happen!

Displaying VFO-A & VFO-B
The embryonic band change page
Displaying the VFO-B split

A bit of a lash up!

I've also connected up a couple of encoders, so that I can test the switching logic properly. All seems to be working fine but the controller hardware is now becoming something of a rats nest of wires, so I don't think I'll be able to add much more hardware until I get the front panel back from CNC cutting. This is, however, quite an important step, as it is the first time that every type of peripheral has been connected up at the same time. Slowly but surely, the problems are being ironed out, with more and more of the project working.

In other news, the Flex radio has been fixed and is on its way back to 'WGV Towers, so I should have it all connected back up by early next week. 


  1. Hi John
    Does/ will / can your VFO split code accommodate the typical Meteor Scatter subtle variation of split operation: i.e. CQ TX on 50230 but rx on 50233, then when receive a call, to RX & TX on 50233, etc.?
    This is a real pain to do currently on my 6300 as need to swap the TX from slice A to B etc.
    Absolutely fascinating watching this project coming to life: thanks for sharing.
    73, Ian GM4KLN

  2. Hi Ian,

    I think this should be fairly straightforward. If you know the FT1000/2000/5000 series of Yaesu rigs, you will be aware of the Tx & Rx illuminated push buttons above each VFO. It seems to me that they would enable you to do what you want to do.

    I find them very useful in every day DXing (I have an FT5000) and it is my intention to copy that functionality into the Flex Controller project.

    I'm glad you find the Blog interesting and thank you for your kind words, As is the way with these things, one never hears from most readers. When people do post comments I always reply.

    73, John, G3WGV

    1. Thanks John: No Yaesu experience as I migrated from an Icom 756 Pro 3 but fully understand the concept: used it a lot myself and miss it's simplicity compared to the Flex way of doing things vis a vis switching RX/TX between VFO. I am not sure if the 6300 is implemented differently from the 6500 etc. but hoping not! It can be done manually but it involves a lot of mouse clicks...which is not ideal at all.
      When the time is right, happy to try your implementation out - I've no intention of buying a Maestro at that price....
      if you need a more in-depth explanation of issue, need, etc., let me know and I'll email directly.
      73, Ian

  3. That's all fine Ian. As you'll have gathered by now the big idea with this project is that everything is configurable. Obviously that means writing software but to as great an extent as possible I've tried to design the code to be driven by configuration/preferences files rather than hard coding stuff. So even if the initial implementation isn't perfect, it should be able to make it so fairly easily.

    This raises another point. This is not likely to be a turnkey project. If anyone else wants to take the code I've developed and bend it to their own wishes that is fine. I rather doubt that it can be made into something that is just plug and play - there's almost certain to be some element of programming involved.

    73, John, G3WGV