Goodbye Mr. Chip…

“Zilog has called time on the Z80 CPU.” ( Wow. Actually I had no idea (through never having checked) that it was still being produced.

And a fine chip it was too. I never built a system from wires up using the Z80 though. My first system, designed, built from chips and wire-wrap was an 8080 system, hand programmed to control al x-ray diffractometer. This was decades ago now but I still remember it, although I have no photos unfortunately. The system had a timer chip for a 1-second count and was interface to a Nuclear Engineering (I think it was!) counter that used nixies.

But I did at least use Z80s, just they came as boards. The first was a Transom Triton computer and by then I was programming in Turbo pascal – back then this was really neat as one could have procedures full of assembler code which made interfacing easy. Later I used Gemini boards and that also gave the ability to have a graphics card. By then my interfacing to the diffractometer included a stepper motor and shaft encoder to control the arc motor.

In the end there were two sets of Gemini Z80 boards, one for the x-ray diffractometer and one for an optical microdensitometer. Both gathered data and were interfaced to a mainframe computer for the processing using a suite of Algol 60 programs. Good old days…

Personally my first system was a 6502 Newbear single board, followed by the ubiquitous Nascom 1 which was, of course, Z80 based.

Farewell, Z80…

Screen moves

I now have a Raspberry Pi set up on one of the four monitors in the shack. The original layout was two screens at the top on Linux, then bottom left on Windows and bottom right – central to where I sit on the Mac as the main screen. But that layout had two major issues…

I use a program called Barrier to basically act as a KVM switch for the three systems with the Mac as server. That way the Mac mouse and keyboard controls any of the systems, although it can be awkward sometimes where Windows expects keys which Apple doesn’t have. But Barrier does not understand dual monitors and so moving the mouse up from the Mac got to the Linux box fine, but moving it down from the left hand screen would not get to Windows as the program does not see it being physically there. I could live with that, except for issue two…

The main issue was with the Linux screens being at the top and thus making me sit back or crank my neck upwards, not a good position.


I got to realising that although I use both screens on the Linux box for radio stuff this tends to be with wsjt-x on the right screen and pskreporter on the left.

The solution, which somehow never occurred to me, was simple. Move all the wiring about so that the Mac is right and central, Linux is to the left at eye level so no neck ache, Windows is top right because I rarely use it anyway, and that left a dead screen top left. Enter a Pi 4B. So now I can arrange the four screens with pskreporter top right, Hamclock top left, wsjt-x bottom left and logging bottom right. QED.

Quansheng UV-K5

Another new toy, a Quansheng UK-K5(8). Size-wise it’s taller and heavier than the Baofeng UV5R and has a nicer display. The reason I got this, apart from the price is there is firmware available to enable a spectrum display among other things.

I’ve loaded this version: Loading was simple enough. There have been mentions that one needs to insert the programming cable very firmly but I found that my aftermarket Baofeng USB cable went in quite easily with a click. Once I had remembered you need to turn the radio on in program mode the firmware went in via the Edge browser in just a few seconds.

Other than that I have yet to use it on air and it has not yet been near a spectrum analyser so no idea how good or bad it is RF wise. There’s plenty of information out there already anyway. For me, like the UV5R it’s a handy little radio that won’t hurt too much if lost or damaged, but it is the available firmware that seals the deal.

Redeploying LoRa modules

After having ditched Meshtastic, for now at least, I had a fiddle with two of the LoRa modules with a view to repurposing them. And there they are. The first is a LoRa APRS r/o iGate, listening on 439.9125MHz, and the second is a receiver for radiosondes listening around 400MHz.

T-Beam LoRa module set up as a LoRa APRS iGate

Nestled under a 70cm ground plane in the shack is, of course a good way to ensure nothing is ever received unless it is very close! However, it is destined for greater things… although at the end of the day it’s just me fiddling. The LoRa APRS map is at

TTGO device set up as a radiosonde receiver

The radiosonde one stands a better chance of actually receiving something, especially as it is currently connected to the 70cm big wheel antenna in the loft. See

The plan is to connect these two along with the module running TinyGS to a common antenna currently in the loft. They will be connected using a Crosscountry Wireless multicoupler which is due to arrive in a day or so.

Fun while it lasted…

For me, and this is in no way intended to persuade people not to dabble, Meshtastic was the usual ‘new shiny’ that I like to fiddle with, but it was just that. A bit of radio fun for little outlay using devices I can redeploy. In our wider area it seems to have snowballed and become rather congested. While I can see the point, I have many other radio bits and bobs to play with and having yet two more antennas in the loft was rather overdoing things.

I had to seriously think exactly what I had used it for and it came down to occasionally saying ‘good morning’, answering when people ask if anyone is receiving them, and… well, I am struggling to find anything else. Of course I stress that is what I had used it for, not taking away from what others are doing. It is a neat idea.

So both nodes have been switched off.

Meshtastic oddness

Both my 868MHz and 433MHz nodes are being odd today. I had been looking into the data that arrives when ‘–noproto’ is sent to the node and, typically there is a fairly constant stream of data. But today, despite both being power cycled there is no data at all. Odd, because when I ask the 868Mhz node for its nodelist it is being updated. Maybe it’s something in the new firmware but for now I’ve been fiddling enough and it’s time to take a step back. I have not had any successful traceroutes today, I responded to a couple of requests and got no reply. It’s made worse by the fact that, having moved the nodes in the loft they are now out of BLE range. Both are connected to a Raspberry Pi via USB so I can access the nodes that way but for client use I use my mobile node assuming that the node in the loft will relay everything – maybe not. And for 433MHz I only have the one node anyway.

Mind you, it is raining and I suspect that is making a fairly decent shield for 868MHz, and I have yet to see any activity on 433MHz. So maybe it’s just the wrong time…

The other issue, at least around here is the popularity with over 120 nodes in the list, many sending telemetry and position updates all the time.

Getting the antennas outside will help but that will take a while yet unless I mount them low down on the workshop – actually that may not be that daft an idea. If it stops raining…

QSO logging

Some time ago I wanted a logging program that would do things my way. Although there is absolutely nothing wrong with any of the various offerings they generally try to be everything for everyone and none of them really sat well with me. So I wrote my own in PHP (learning Python is high on my list of things to do, along with Mandarin, Morse, cooking…) which uses the logbook as the backend. Ok then, really I wrote a series of various scripts in PHP that make it all work. The advantage is it does just what I need and nothing more and can easily be modified to add functionality. The downside is I never was a coder (well, ok, I have a certification in COBOL from the 1970’s!) and it is not going anywhere other than my own server. So you can’t have it…

The way I tend to log stuff is via wsjt-x or other software that logs to a local file. I then have a script that takes the ADIF data and populates on a QSO-by-QSO basis. Somehow having to actually do something after each QSO feels like I am actually engaging in the process. But I am not a contester… it would simply not work for any stress situations (but then I could easily make it work if I so desired…)

With being the master a script then populates a local database which does all manner of stuff that I personally need. For example, it holds records of eQSL sent/received, real QSL sent/received, and various tabular data for Worked All Britain (WAB).

Scripts also modify the wsjt-x log file on all my systems such that each has a record of all QSOs. As is globally accessible (not tried from China mind… not that I plan to take any radio gear there anyway) and my main database is on a VPS so is also globally accessible the various scripts work from anywhere.

I do plan to move the database from the VPS to a system at home once we get FTTP broadband and use the VPS as a backup, synchronising between the two. But that will wait.

One plan which is more immediate is LoTW integration because as yet my LoTW logging is via which means an extra step. No biggie, I mean it’s its a few clicks and a password… but it would be nice to integrate it. The same goes for eQSL sends, but as yet I only send on receipt and I have scripts to deal with that anyway.

Current Meshtastic setup

After a lot of fiddling about writing code to look at mesh traffic I am on other projects (like, sorting the house out!)… so here is my current state of play…

I have an 868MHz node in the loft directly connected to a collinear which is hanging off the rafters. This is powered by USB from one of the Pi systems in the shack. It is set to work over wifi, not BLE as it’s just too far away. Its position coordinates are fixed. But I do not need to access it directly, see below. The useful thing here is I have installed the Python CLI on that Pi and can access the node’s data stream directly.

There is one 868MHz node in the shack with the supplied stubby little antenna. There is no way this can see any other nodes in the local area (I’ve tried) but can access the node in the loft. So this one has hops set to 4 as it uses one just to get upstairs. This node is set to read position data from the iPhone and can thus go mobile. Well, ok, it could go mobile anyway but at least this way it says where it is etc. But it will probably never go mobile. With this powered over USB from the Mac Mini I can also access the data stream via the CLI. One issue with this setup is that the shack node reports all nodes seen as having an excellent signal strength as it only sees data from the loft node. In reality only a couple of local nodes have anything approaching a ‘good’ signal strength.

Both 868MHz nodes are Lily T3S3 units with no GPS.

And there is a 433MHz node, this time a T-Beam with GPS on board, directly connected to a 2m/70cm collinear which is hanging from the window blinds in the shack with some bungee cord. This is of course temporary. I have yet to see any other nodes on 433MHz and I suspect I will quietly give up with that.

433MHz node under a 2m/70cm collinear hanging from the blinds...

868MHz-wise there is a lot of local activity. Currently the loft node sees 180 other nodes, although not all will be active. They do tend to stick and clearing the node database then starts afresh, slowly building up a list as data is seen.

Meshtastic app map showing the nodes that can be seen within 3 hops of here

And the use? So far, mainly people asking if they can be heard. There are some private channels, no idea what as they are encrypted, pus there are at least two very well sited nodes acting as routers for the area and beyond. One of those is extremely well made.

More meshtastic

This Meshtastic business seems often very hit and miss. Locally there is an expectation that it will always work and if you can hit one node one day you should always be able to. Or at least that’s what I glean from comments. Of course, just a few mW at 868MHz is not destined for long distance comms, and yet I can get 24 miles provided the path is line of sight. Not bad. But I can’t manage 1.3km to my nearest neighbour who can get out all over the place. There is a hill to consider there, plus many houses, so not surprising really. Oh yes, and there is the small matter of the antenna still being in the loft so it has to punch through wood and concrete, often wet at that, before it gets to air.

For now, at least locally traffic is mostly messages asking if one can be heard.

There is a series side of course. Nodes can be placed in advantageous positions, run off battery and solar recharged, and left as area repeaters (or routers in Meshtastic parlance) forming a mesh with other similarly advantageously placed nodes. We have this locally to some extent. It is very easy then to get into a position where you a reach those nodes, just don’t expect it to work from your basement. Used correctly – and that probably means used as originally proposed – it is certainly neat, potentially ubiquitous, even anonymous. I already have a use for it at ‘work’ where I need data comms across 3km with no line of sight and with little or no money available…

For now, we’re all playing and having fun or getting frustrated. The worry is people will give up and lack of coordination will make that worse.

Of course, it’s early days, the software is still being developed, the boards are hard to come by but that will change as stock moves. It’s quite interesting to be in this now, relatively early on and as it develops further.

Pi reduction

I’ve been rationalising hardware, in particular as the PoE HAT on the Pi running the GB7RVB packet mailbox was noticeably noisy and needs replacing. I had originally moved the packet mailbox off of my AMPRnet router Pi as I needed to install a VPN and the networking was becoming a bit too complex for my liking. In the end I had no use for the VPN, so GB7RVB has gone back, removing one Pi.

Linbpq went across just fine – there is an apt for it ( so installation is easy. Just install and copy the config across and the files under /opt/oarc/bpq (there are neater ways but this sledgehammer method works). With the node running I could access via the web interface as expected, but then the axudp route disappeared.

Then I realised that our broadband router had a NAT rule for the UDP port needed for axudp and that was still pushing it to the now switched off Pi. And I’m sure I’ve forgotten this same thing before! So now I have a note as a reminder, assuming I bother to check the note…

Now having removed one Pi with a noisy fan the NTP server Pi is also whining. Grumble.



Recent Posts