Category Archives: Expert Controller

Expert Controller Plus – Update 11

Expert Controller Plus

Today I’m happy to announce that I’m making the first, Alpha test, version of Expert Controller Plus available for download.

If you would like to get involved with testing and provide feedback please drop me a message using the Contact page on this website.

Further information about Expert Controller Plus including how to download the software can be found in the Software and Support sections of this website.

What’s the difference between Expert Controller and Expert Controller Plus? Click here to read about the key differences.

Modbus TCP & Waveshare POE ETH Relay (B)

Being able to control a relay using a TCP/IP network connection can be very useful and has many purposes including signalling, power control and monitoring. Today TCP/IP networking is the defacto networking technology used by almost all network capable technology. TCP/IP networks, with one in particular – the Internet – span the globe and are reachable from most locations by cable or radio (including satellite).

The Modbus protocol was first published in 1979 and has become the defacto standard for control and monitoring of industrial equipment. Sometime after its first publication a variant known as Modbus TCP was standardised for the exchange of Modbus messages over TCP networks. Modbus TCP and other variants are now available in small, inexpensive devices – such as those by Waveshare – to the mass market and thus hams.

In amateur radio there is a growing number of operators who choose to operate geographically remote from their radio equipment. Linking these two locations is inevitably a TCP/IP network. So, it should be no surprise that hams have a need to control equipment remotely and that Modbus and an abundance of inexpensive Modbus capable control devices can satisfy that need.

One such Modbus control device is the Waveshare Modbus POE ETH Relay (B) but there are many options available. It’s also quite possible to construct them oneself using a small computer such as a Raspberry Pi and software.

Waveshare Modbus POE ETH Relay (B)
Waveshare Modbus POE ETH Relay (B)

Adding Modbus TCP support to Expert Controller Plus seemed like an obvious addition as it allows hams to wake/sleep their SPE Expert amplifiers from a remote location using a TCP/IP network.

The abundance of inexpensive Modbus capable controllers is the result of mass production with a focus on function with little attention to contributing and key components such as security. Connecting these to the Internet without protective measures is an awfully bad idea. I won’t labour that here as I’ve done so in previous posts and documentation. I’ll just say that however convenient doing so may seem and however tempted you feel – just don’t do it!

The remainder of this post focuses on the necessary configuration of the Waveshare Modbus POE ETH Relay (B) for use with macOS and Expert Controller Plus.

Waveshare Modbus POE ETH Relay (B)

The unit doesn’t come with a power supply so it’s either necessary to reuse an existing supply, make one yourself or power it from the Ethernet using POE. The latter is very convenient and makes a nice solution as should power fail, Ethernet and thus networking has probably also failed.

The unit has an embedded web server which permits its configuration. Great. However, not all parameters can be configured, particularly and disappointingly those necessary to enable Modbus TCP. Well, that’s what the Waveshare documentation leads me to believe but that documentation is a poor translation from Chinese to English so I’m not absolutely sure. From a macOS perspective that’s a problem as the Waveshare VCom software that enables access to all configuration is a Windows only application.

IPv4 address

The first item needing configuration was it’s IPv4 address. By default that is 192.168.1.200 and an IP address not reachable on my network. So it was connected using a short Ethernet cable directly to a laptop whose network port was manually allocated an 192.168.1.0/24 IPv4 address. That done, I could point a web browser at it’s default IPv4 address, log-in to its embedded web-server and change the IPv4 address allocation from Manual to DHCP. Allocating an address using DHCP is a personal choice as it has multiple advantages to a static, manual allocation but may not be appropriate for everyone.

With that and a restart, the unit was allocated an IPv4 address and became reachable on my network.

Microsoft Windows

Here, I’m almost completely Apple and Linux with just one old macBook running Windows for just this type of scenario – where running a Windows application is the only option. After downloading and installing the Waveshare VCom software I was able to adjust and then save the two items of configuration needed – see images below – to enable Modbus TCP. Once saved, the unit remembered the change so Windows was no longer required.

Connecting an Expert amplifier

What remains is to connect the Waveshare relay to your SPE Expert amplifier and to pass a suitable signal (Voltage). Here the SPE Expert User manual for your amplifier is really helpful as it describes how to utilise pins 8 & 4 (REMOTE_ON, GND) of a CAT connector to “turn on and turn off the amplifier”. Instead of using the RS-232 DTR signal, implement a similar Voltage source which is switched by the Waveshare relay. The SPE Expert 1.5k-Taurus User manual V3.2, for pin 8, states: “Applying a voltage from 9 to 15 VDC, turns the amplifier ON.”.

Expert Controller Plus

The last configuration required is to enable Modbus TCP support in Expert Controller Plus, enable Wake and/or Sleep and to specify the Waveshare unit’s IPv4 address – or fully qualified domain name (FQDN). The defaults for Unit, Function, Register and Command should be appropriate for relay Channel 1. If a different relay Channel was used, select the corresponding Register.

Now when a Connection is started or stopped in Expert Controller Plus the appropriate Wake or Sleep Modbus TCP message is sent.

USR-TCP232-306 Network/Serial adapter

Amazon delivered a low-cost, Chinese network / serial adapter yesterday which I now have working successfully between a Mac and an SPE Expert 1.3k-fa amplifier. So, it’s now possible to confirm that Expert Controller and Expert Controller Plus work with both the Waveshare Rail-Mount Serial Server (RS232/485/422 to RJ45 Ethernet Module, with POE) and the PUSR, USR-TCP232-306.

The USR-TCP232-306 is very clearly a device whose interface has been translated to English as much of the on-screen ‘Help’ information is quite meaningless. The following is just one example of several such messages: “Custom Register Packet: this function is not open, not do support the Chinese , and 40 bytes in length”.

Below is a gallery of the six web pages it offers for configuration. Select an image to expand a larger view.

The above images show the default settings prior to any changes to support my needs. It is worth noting that on the underside of the adapter is a sticky label identifying its preset IPv4 address, MAC address and login credentials (username and password).

A word about security

The device only supports IPv4 and it’s web server implements an HTTP interface using TCP port 80. As such there is no encryption on its network interface. Its default username of ‘admin’ and password of ‘admin’ is also a very insecure baseline configuration. As all network traffic is unencrypted tho, there is little value in strong credentials.

There does not appear to be any support, using the web configurator, to apply firmware updates/patches. I see that as a good thing as devices such as these should not be left to query and download updates from the Internet unattended. Doing so would provide a door through which updates containing malicious or, at the very least, unwanted software could be introduced.

The web-configuration interface is simple and straightforward although its not clear what some options do even after reading the documentation. However, don’t assume what you see is the entire interface. I’d be willing to bet there are some undocumented web-pages in there too! A scan for open ports identified TCP listeners on ports 80, 1501 & 4196. The first (HTTP) and last (my config for network/serial data) are to be expected. However why is it listening on 1501? Perhaps this is how the PUSR, VCOM software connects? Unknown, but certainly worth ensuring that 1501/TCP is blocked by firewall rules.

Something that concerns me slightly is that it supports specification of a DNS server. Why does a simple network/serial adapter need to resolve DNS names? There may be a harmless reason, but it is possibly a hint that it contains some capability that requires this…

This adapter and any similar adapter, including the aforementioned Waveshare, should never be exposed to the Internet. If remote access is required always, protect its interface with a VPN, overlay network or deploy other protective measures. Furthermore, I would recommend that it be tightly fire-walled so that it cannot originate traffic to any LAN or WAN – including the Internet – endpoint. Incoming traffic should also be blocked to all but those ports absolutely necessary for it to fulfil its function.

The simple message is don’t assume these devices are friendly; treat them as hostile and a threat to your network and connected infrastructure.

Configuration

It is my choice to use DHCP and Dynamic DNS on my LAN as opposed to static IP addresses per device. I therefore, chose to configure my USR-TCP232-306 to use DHCP and made a Reservation within my DHCP servers for it’s MAC address. My DHCP servers will insert a name of my choice into DNS. DHCP can be selected on its ‘Local IP Config’ tab/page after which the specification of other network parameters is disabled but previous values remain on-screen. See the leftmost image in the gallery below.

The second image presents the serial config I chose and which works with my Expert 1.3k-fa amplifier. Note that I disabled: INDEX and Similar RFC2217 as I’m not absolutely clear what they do.

The ‘Local Port Number’ contained a default value of ‘0’. That is not useful; the value I chose, 4196, was mearly for convenience and could have been anything greater than 1024.

As my DHCP configuration supplies the USR-TCP232-306 with an IP address of 172.24.12.52 and its ‘Local Port Number’ is configured to 4196, I configured Expert Controller Plus as shown in the snipped below. Expert Controller config would be the same. Note: I could equally have supplied the Fully Qualified Domain Name (FQDN) I’ve chosen instead of the IPv4 address.

Serial cable wiring

The three-core cable I created for use with the Waveshare adapter worked just fine which was no surprise as both the USR-TCP232-306 and Waveshare implement a DTE interface. For cable wiring details please read my guide to serial cable wiring.

Final thoughts

Like the Waveshare adapter, the USR-TCP232-306 does not implement hardware flow control and so RTS/CTS and DTR/DSR are not available. I’m aware that some use RTS to signal an amplifier to awaken; that capability will therefore not work and an alternative will be necessary.

A major issue with the Waveshare adapter is a deficient DHCP protocol implementation. I’ve posted about this before but it simply does not renew an address lease either before or on expiration. That is a major problem if you are using DHCP. I’m glad to report that the USR-TCP232-306 does not have this defect. If anything it seems to renew its address more frequently than necessary, with renewal requests hourly regardless of the lease duration!

Andy

Expert Controller Plus – Update 10

Expert Controller Plus

Preview No. 6 (build 325) was made available this morning.

This will be the last Preview release as it contains the core features that will comprise the full public/production release next year.

Next, the project will move to a test phase and I’ll be making a Test version available in the coming weeks. This will have the same look/feel and runtime requirements as its earlier Preview’s but will appear in Apple TestFlight as a new and different application. I’ll add those currently testing the Preview to the Test release so TestFlight notifies you when it’s available. I don’t plan to remove the Preview so it will continue to be available until it reaches the term of its 90 day validity period.

The first Test release will include resolutions for defects identified in Preview No. 6 and will support persistant storage of settings/properties.

I hope the Preview releases have provided a useful insight into the development of Expert Controller Plus and thank you to all who have provided feedback.

Changes in this Preview fall into the following two broad categories.

General

On Standby and Operate LCD displays one or more bar-graphs are used to present power, Voltage etc. It was noted that when a ‘bar’ reached the right-side of its graph it was not displayed correctly. This has now been resolved. The defect is in Expert Controller also so, that will get fixed in an upcoming release.

Previously the Interface type, either ExpertDefault or Expert1kfa was specified on both a Connection and for Amplifier configuration. This led to it being defined in two places and thus created a potential conflict. It has now been removed from the Connection configuration so, it’s now only necessary to select the type of amplifier.

There have been numerous other small changes such as adding some ‘help’ style messages, preventing removal of Amplifiers when used by a Connection and adding a ‘Welcome’ window. I’ve also done a review of all Accessibility labels and hints resulting in many additions and updates.

SPE Expert 1k-fa

The SET Antenna support added in the last Preview has been amended to correctly display an information message on the LCD display. In the previous build it was either not shown or incorrectly shown.

Support for an audible / Apple Voiceover report announcing the configuration of an Expert 1k-fa is now supported.

Andy

Expert Controller Plus – Update 9

Expert Controller Plus

Preview No. 5 (build 158) was made available earlier this evening. Changes in this Preview are primarily additions to Set mode support for the Expert 1k-fa amplifier but there is a cosmetic change to the LCD+Buttons window for all amplifier models.

The sections below present a description of the changes and these are followed by a gallery that contains Expert Controller Plus, LCD+buttons window, images for the Expert 1k-fa. Selecting an image generates a larger image.

This Preview is available, immedietly, to those who have previously expressed interest in Expert Controller Plus and the previous Preview should be automatically updated by Apple Test Flight. For others who would like to try Expert Controller Plus, help with testing and/or provide feedback, drop me a message using the Contact page on this website. I will add you to the group of testers. Note: To run the App you will need to install the Apple, Test Flight App, available for free from their App Store.

Expert 1k-fa

Support for SET now includes configuration for Antenna, CAT, Manual tune and Backlight display. With these additions, the entire SET configuration area is now supported. Support for the Alarm history report has also been included in this Preview.

So, assuming Expert 1k-fa support works – See Testing below – Expert Controller Plus now has full support for the full range of SPE Expert amplifiers.

LCD+Buttons Window

SPE Expert Controller uses a single ‘Display’ button which, depending on Standby/Operate mode, either performs the function fulfilled by the CAT button or the Display button in the SPE, Windows Term software. Until this Preview, Expert Controller Plus used the same approach. Howerver, as of this Preview, there are now two buttons: ‘CAT’ and ‘Display’. The two-button approach allows the UI design to be shared between the Expert 1k-fa and all other Expert amplifiers. The size of the window has not increased to encompass the new button; instead buttons have been rearranged and the ‘Backlight on/off’ button labels changed from text to icons as illustrated in the example below.

Expert 1.3k-fa, lcd+Buttons window (revised button layout)

Testing

Preview releases of Expert Controller Plus are available to anyone who wishes to either have sight of the software or be involved in testing. Being invoved in testing enables you to provide feedback and to suggest features/changes that you’d like to see in the App when it gets to public release. For the Expert 1k-fa especially, this is of major significance as I don’t have access to a physical Expert 1k-fa so all software implementation has been accomplished using SPE documentation and a simulator I’ve also developed. But testing against ‘real’ Expert 1k-fa amplifiers is needed. Without it I have no way to know for sure whether Expert Controller Plus is actually working with that amplifier model. So if you would like to be involved in testing please do get in touch using the Contact form on this website.

What’s next

Next, I plan to create several short YouTube video’s that provide an overview of Expert Controller Plus. These will detail how it differs from the regular Expert Controller, its capabilities, setup and operation.

Andy


Expert Controller Plus – Update 8

Today I’m releasing Preview No. 4. It includes numerous code improvements and bug fixes, some of which are visible in the UI, but most are not. For example it’s now not possible to delete a Connection when it’s in anything but an ‘interface closed’ state! Work on SET mode support for the Expert 1k-fa has also advanced. The SET mode menu is now displayed and items such as Contest mode, Beep, Temperature scale and Start in Operate/Standby may be configured. There is no support for Antenna, CAT, Manual tune and Backlight yet but I’ll be starting to advance these soon.

In the coming weeks I’ll be creating several video’s that tour the features and operation of SPE Expert Controller Plus. Once complete I’ll upload them to my YouTube channel and link them from this website.

UI Changes

At the top of windows such as the LCD window, Buttons window, LED window and LCD+Buttons window a drop-down list permits selection of the Connection for which information is displayed in the window. That drop-down list now works, selecting the first active Connection if only one Connection exists or ‘None’ if there are multiple active Connections. It also now automatically returns to ‘None’ if the Connection is stopped.

A ‘Support’ page has been added to the Application settings window. This details the location of the log file and underlying database which will be useful in future support scenarios.

Expert Controller Plus - Support information
Expert Controller Plus – Support information

There are other minor changes such as adding the small coloured icon that represents the state of a Connection in more places.

Expert 1k-fa

All features are being implemented as per my reading of the SPE Communication Protocol Specification V2 as I don’t have access to a physical Expert 1k-fa. Implementation is being tested against my Linux Expert 1k-fa Simulator and that gives me confidence that code should work with a ‘real’ physical Expert 1k-fa. If anyone would like to try this Preview with their Expert 1k-fa please drop me a message.

Preview No. 4, includes support for the various warning messages that an Expert 1k-fa can display. The image below presents just one of those.

Expert Controller Plus – Expert 1k-FA Warning message

As mentioned above, in SET mode configuration there is no support for options Antenna, Cat, Manual tune or Backlight. Selecting these is not recommended and will likely result in a need to close and restart the application. Other options in SET Mode appear to work well and can be navigated using the -/+ buttons as expected.

Expert Controller Plus – Expert 1k-FA SET Mode
Expert Controller Plus – Expert 1k-FA SET Mode

If you try this Preview with an Expert 1k-fa, ensure you select the Expert 1k-fa when creating a Connection. See the circled area in the image below.

Expert Controller Plus – Connection for a SPE Expert 1k-fa

Expert Controller Plus – Update 7

SPE Expert Controller Plus
SPE Expert Controller Plus

Last week I had other commitments so available time has been a little constrained. However this afternoon I’ve released Preview No. 3 as it contains some important bug fixes and usability improvements.

If you would like to try preview releases of SPE Expert Controller Plus please drop me a message using the Contact page of this website. Just a reminder Previews provide an insight of the application during its development; they are not intended to be complete or fully working.

a) Sleep and Awake. Connections and Groups can now be slept and awoken without Start/Stop of amplifier connections. There are some constraints on what is possible. So, Sleep sends the Off command and if connected using a serial/usb interface the RTS signal is de-asserted regardless of how it’s configured for the Connection. Wake only wakes a serial/usb interface connected amplifier and only when the Connection is configured so that ‘Raise RTS on Connect’ is selected/ticked.

b) The ‘Enabled’ toggle for each Connection is now recognised. Connections not enabled no longer appear in the list of Connections that may be started/stopped.

c) The RF Information and Health Information windows have been removed as they repeated information available elsewhere in the App.

d) Numerous small changes and bug fixes.

Andy

Expert Controller Plus – Update 6

Expert Controller Plus
Expert Controller Plus

This morning Preview 2 was released to those who have requested to be part of the preview and test programme for SPE Expert Controller Plus. If you would like to join that programme, drop me a message using the Contact form on this website.

Preview 2 changes are primarily for the Expert 1k-fa. Functionality for other amplifiers remains pretty much unchanged. For the Expert 1k-fa support has been added for Standby, Operate, CAT Report and Firmware report modes. Other Expert 1k-fa functionality such as ‘Set’ configuration is yet to be implemented but is on the roadmap.

Implementation of functionality to support the Expert 1k-fa would ideally have used a real/physical amplifier however, as that is not available, a simulator was developed as described in earlier news postings. Against this simulator the actual Windows SPE Term application for the Expert 1k-fa was tried and found to work well. Thus I have confidence that my reading of the interface specification and implementation are good. However only by testing with a real/physical amplifier will that be known for sure so, feedback from those Expert 1k-fa testers is much appreciated!

Next on the list are some of the defects and issues that I know exist; I’m expecting subsequent previews will include changes that are noticeable to all models of Expert amplifiers. One of the changes I’m considering is removal of the Health and RF Information windows as I’m not convinced they add ‘value’ to the application as the information is pretty much available elsewhere. Let me know what you think about that.

Andy

Expert Controller Plus – Update 5

Since the last update, my Expert Simulator software has advanced sufficiently to now simulate the core capabilities of the SPE Expert 1k-fa amplifier. Using simulation has enabled further work on SPE Expert Controller Plus and advancement of its Expert 1k-fa support.

SPE Expert Controller Plus, Expert 1k-fa (simulated)

The LCD, LED and button windows of SPE Expert Controller Plus appear to be working but other windows such as RF Information and Health need further work. The ‘Set’ configuration option is not yet implemented and there is no support yet for Alarms/Warnings. So there are still key capabilities yet to be implemented but with Standby, Operate, Tune, Cat and Firmware reports working support for the Expert 1k-fa is coming together.

SPE Expert Controller Plus, Expert 1k-fa (simulated)

Support for all other Expert amplifiers is well advanced although there are still capabilities to add plus, overall, there are a good number of defects that need resolving.

Preview 2 is getting close and I’d expect it to be ready by the end of next weekend. Fingers-crossed. 🙂 Assuming the Expert 1k-fa support actually works when connected to a real/physical Expert 1k-fa I expect to spend time fixing known defects and smoothing some of those rough-edges for Preview 3. Subsequent previews will add some of the missing Expert 1k-fa capabilities.

The images in this post are of the SPE Expert Controller Plus, LCD and Buttons window – I really need a better name – captured tonight to communicate how the Expert 1k-fa is looking.

If you would like to try a Preview of SPE Expert Controller Plus, drop me a message using the Contact form on this website.

Finally, thanks to those who are already running and providing feedback.

Andy

SPE Expert Controller Plus, Expert 1k-fa (simulated)
SPE Expert Controller Plus, Expert 1k-fa (simulated)
SPE Expert Controller Plus, Expert 1k-fa (simulated)
SPE Expert Controller Plus, Expert 1k-fa (simulated)

Expert Controller Plus – Update 4

Over the last couple of weeks I’ve been progressing the development of an Expert amplifier simulator as mentioned in previous posts. It’s starting to take shape nicely and is capable of simulating Standby and Operate modes for all but the Expert 1k-fa. Its support is the next thing I’ll be advancing.

Right now I really need to simulate multiple simultaneous connections to stress test the data comms components of SPE Expert Controller Plus so I’m focused on implementing simulation of Standby and Operate modes. Other features such as Set mode are less important to me at this time.

The simulator is a C++ application written for Linux and implements a TCP socket server thus allowing it to simultaneously simulate a pretty much unlimited number of amplifiers. Each connection/amplifier simulated has its own UDP command channel over which many parameters of the simulation many be adjusted. For example, switched into Transmit mode, Operate mode, Forward and Reverse power set etc.

The good news is that SPE Expert Controller Plus has run flawlessly with the 7 simultaneous connections I’ve so far tried and given the low CPU usage I’m happy it would handle many more. I’m aware that serial/USB comms is not as CPU efficient as TCP/IP comms but I don’t foresee any issues. The simulator has identified a few items that don’t seem to be working just yet in SPE Expert Controller Plus so it’s definetly proving valuable.

Below are some screen captures from a little earlier this evening that give a flavour of the new App and some of its windows. The text ‘cmd: 5117’ etc is the UDP command channel on which the simulator is listening for commands.

SPE Expert Controller Plus - Connected to six simulators
SPE Expert Controller Plus – Connected to six simulators
SPE Expert Controller Plus - New windows
SPE Expert Controller Plus – New windows
SPE Expert Controller Plus - Overview and management windows
SPE Expert Controller Plus – Overview and management windows

The screen capture below is of the usage/help information output by the simulator. I’m including it here just to further describe its capabilities.

SPE Expert Simulator - Usage info
SPE Expert Simulator – Usage info