Putting new firmware on the XTPTFABS Soarer's converter

modelf

05 Oct 2023, 00:55

Hello all, I have a newb type question.

I bought this Soarer's converter for my Model F/AT (connecting to a modern desktop PC) and it works great out-of-the-box. However, I want to install or load the genuine Soarer's 1.12 firmware onto it. (A product review says the OEM firmware is not genuine Soarer's; the same review says there's a corresponding forum post here or on GH, but I couldn't find such a post.) I understand I need to put the converter in bootloader mode. I did this without a problem.

How do I now install the 1.12 firmware? I did download the ZIP folder and it's a bunch of hex files that I don't understand. I have done some searching and not found any help resources that have been updated since 2013.

I'm using Windows 11 x64. A friend told me to use the Windows Control Panel to find the chip(set?) on this Soarer's, but I didn't get anywhere with that.

Thank you!
Last edited by modelf on 01 Jun 2024, 00:50, edited 3 times in total.

User avatar
Muirium
µ

05 Oct 2023, 09:31

modelf wrote:
05 Oct 2023, 00:55
it works great out-of-the-box. However, I want to…
There's nothing to "upgrade" to. Soarer vanished about 10 years ago, leaving his converter feature complete. Others haven't changed it because it isn't open source.

If it works: great. This is as good as it'll ever be.

NathanA

05 Oct 2023, 13:17

Muirium wrote:
05 Oct 2023, 09:31
modelf wrote:
05 Oct 2023, 00:55
it works great out-of-the-box. However, I want to…
There's nothing to "upgrade" to.
I feel like you didn't exactly read the original post, nor the Amazon product review it linked to...

OP doesn't want to "upgrade". They want to ensure that the firmware they're running is the genuine article, and not potentially some derivative work that has been tampered with.

Now, I agree that if it's working, then that would seem to suggest that whatever problem(s) the Amazon reviewer was suffering from, don't apply here...so what's the big deal? Well, in OP's defense, I definitely remember reading some post recently where it was speculated that some outfit that is mass-producing these may be shipping with somewhat modified Soarer's firmware...either that, or some of them that are escaping that particular factory are doing so with a corrupt load of the firmware that is causing weird (and also somewhat vaguely-defined...?) problems for some people.

Assuming these are shipping out with "modified" firmware, how would that even be possible, if the actual Soarer's firmware isn't open-source? Well, as I understand it, there was an attempt to clone/rewrite it, semi-clean-room style. And while the person behind that effort decided ultimately not to publish it, my understanding is that it did see extremely limited distribution, and somehow got into the hands of somebody else who ultimately studied and then re-implemented the cloned version. I even ran into the Github repo at one point...I didn't try downloading and building, but it looked legit. So, a copy of a copy. Hard to know what fidelity to the original has been lost.

I could easily see some overseas mass-producer of these smelling an opportunity & also stumbling upon this code, deciding in the end to build some variant of new firmware off of it (to change some defaults? to accommodate a design tweak made to the hardware? who knows). And even if a source re-implementation of the firmware didn't exist, some clever person who understands AVR machine language and who is armed with a hex editor can also do amazing things, I'm sure.

Anyway. I think the post that the Amazon reviewer is likely referencing (& which is also the same post that I remembered having read recently) is this one. At least the photo exactly matches the one from the Amazon listing (though I also found a couple of eBay listings with the same image).

To OP, the trick here is that there are multiple potential ways that new firmware can be loaded onto an ATmega's flash memory. So there is no one set of global instructions that will work for everybody and for every variant of this device that anybody has ever built. The only (mostly-)guaranteed-to-work method is by getting very low-level and physically hooking up an In-System-Programmer (ISP) to the chip itself. Fortunately, under most circumstances, you don't need to resort to that & can actually perform a (re-)flash of the chip via USB. But this method requires additional software support in the form of a bootloader shim that may or may not be already present on the chip. And there are multiple different implementations of bootloaders for ATmega chips that support flashing-via-USB, some which are open-source, some which are not, but many of which use different & incompatible protocols to accomplish the flash (there is a list and description of various bootloaders both for AVRs as well as other MCUs over on the QMK Github repo). Thus, you need to ensure you have the right flashing application on your host PC that is meant to be matched to whatever bootloader your device already has loaded on to it.

Fortunately, QMK Toolbox supports most of these bootloaders. And is probably the easiest and most "universal" way of accomplishing a flash to most MCUs embedded on a keyboard controller, whether you want to flash QMK firmware or something entirely different, like Soarer's! Virtually all firmware for AVR MCUs is distributed as a ".hex" file, in Intel hex format, which is very similar in both concept and execution to Motorola S-Record encoding. QMK Toolbox will work with a Soarer's hex because it doesn't really know or care whether the flash payload you feed to it is actually a QMK firmware, or something else entirely.

According to the poster in that other thread, these mass-produced adapters appear to have ATmega32U4 MCUs loaded with the bootloadHID bootloader, instead of either Atmel/Microchip's own "atmel-dfu" bootloader or the popular Caterina one from Arduino & clones (Pro Micro and friends). QMK Toolbox claims to support all 3 of these bootloaders, though, so I don't see why you wouldn't be able to flash this converter with a fresh copy of "official" Soarer's 1.12 firmware using QMK Toolbox, after using the "scboot" command to kick the controller into bootloader mode. Just make sure you pick "ATmega32U4" from the MCU drop-down.

The disclaimer I'll offer is that I've never used Soarer's. I've just become familiar with these AVRs via my dabbling with pandrew's port of QMK to the Xwhatsit.

User avatar
Muirium
µ

05 Oct 2023, 14:45

NathanA wrote:
05 Oct 2023, 13:17
I feel like you didn't exactly read the original post, nor the Amazon product review it linked to...
You're right my mind leapt right to the very post you helpfully identified. I stand by my comments over there. If you're worried about keyloggers / malice: don't buy mystery converters.

What's to stop a truly malicious converter faking its firmware version and bootloader to you, anyway? If you can't trust it: don't.

I’m not worried about any of that, but I made all my converters myself, back before anyone besides Orihalcon was in the business.

NathanA

06 Oct 2023, 00:28

Muirium wrote:
05 Oct 2023, 14:45
If you're worried about keyloggers / malice: don't buy mystery converters.
Fair, but...
  1. What's done is done.
  2. OP never said that they were concerned specifically about malice.
I'm trying to answer the question that OP actually asked, and not what I imagine that they might have been thinking at the time they asked it, but left unsaid. If I suspect a certain intent behind a question, I might also choose to address that, but not without actually taking a swing at the actual question itself as stated. Because I'm not a mind reader, and might be wrong. :)

I'm also very much in favor of people generally knowing more about the hardware and software they're using, not less. So I feel uncomfortable hiding behind a dismissive "*pffft*, why would you ever need to do that?" kind of response, especially if it is easily achievable and not some pie-in-the-sky question (e.g., I admit I'd likely answer "how do you upgrade a CPU that's soldered to its motherboard?" with a snarky "...you don't" :lol: ). Like, what if in the future OP decides they'd like to replace Soarer's on this adapter with a completely different firmware, such as a QMK+Vial one? It's good to have a general idea of how to do basic maintenance on the hardware, such as flashing firmware to it, regardless of the ultimate "intent" one particular user has. And giving that answer publicly in a forum response also potentially educates anybody else coming in off the street down the road who might be looking for similar help in the future, not just OP.
Muirium wrote:
05 Oct 2023, 14:45
What's to stop a truly malicious converter faking its firmware version and bootloader to you, anyway?
In theory, this is true: a converter or keyboard controller with a truly malicious keylogger embedded in it could be engineered such that it could "pretend" to let you flash it with a different firmware file, and then simply throw all of those bits away and continue where it left off. But there are tests one could undertake to reasonably assure one's self that this isn't happening. In this case, you'd flash it with something that's not Soarer's, and see if that other code actually runs, or if it happens to boot back up into "Soarer's" again after "flashing". Admittedly, this doesn't 100% eliminate the possibility of threat, as a genuinely clever enough device could have a keylogging shim running at all times regardless of whatever other firmware you are running on it and/or could modify the code you're flashing to it as it is being written, but...that would require hardware well above the lowly ATmega's paygrade. Again, could it be running something more powerful under the covers that's emulating an ATmega such that it can accept and seemingly run ATmega binaries just fine? I mean...sure? Anything is possible I guess? But that's a scenario where the hardware BOM required to pull this off would mean that the manufacturer would be taking a huge bath at the prices they are charging for these. Plus we are just getting farther and farther afield from Occam's Razor at this point. ;)

User avatar
Muirium
µ

07 Oct 2023, 12:23

I don't disagree with you. It's just the paranoia inherent to the need to "upgrade" a perfectly working firmware that bugs me.

Anyway, I assume OP found the answer over in Flipkey's thread.

modelf

23 Oct 2023, 09:07

I installed QMK Toolbox. Now, how do I use it to re-flash the Soarer's converter? (FWIW, I've downloaded the Soarer hex files.)

To answer a question that arose above, yes, my concern is security. I definitely don't want adulterated firmware on my Soarer's converter.

Also, I never used the term "upgrade" in my original post, so I don't know why some users are putting that word in my mouth. I said I was new to keyboards, not new to computers and software in general.

Thank you for all of your help.
Last edited by modelf on 23 Oct 2023, 09:37, edited 1 time in total.

NathanA

23 Oct 2023, 09:29

I touched on the re-flash procedure in my earlier post(s). As I said before, I've never used Soarer's. So a) I'm not doing anything here that anybody else couldn't readily do themselves (Googling and reading) and b) I can't guarantee this is 100% correct. That said, here is what I have gathered:
  1. Run QMK Toolbox.
  2. Download the Soarer's PC-side utilities.
  3. While the converter is plugged in, run the "scboot" utility, which kicks the converter over to bootloader/flash mode.
  4. Assuming that worked, QMK Toolbox will somehow indicate to you that it has detected an MCU that's in flash mode (probably a yellow line of text that mentions "bootloadHID" or "Caterina" or whatever the actual bootloader is that your particular example is using).
  5. Select "ATmega32U4" from the MCU drop-down.
  6. Put the pathname of the Soarer's hex file in the Local File text box (just select Open button to the right of it, and navigate to the file).
  7. Click Flash.
Done.

modelf

23 Oct 2023, 09:40

Okay, I did that and I got this:

Image

Does this look like it did it right?

NathanA

23 Oct 2023, 09:46

It would seem so? Again, I have never used Soarer's. But just based on common-sense reading/observation, it sure looks like after you flashed it that it booted a Soarer's firmware, just from reading the console output.

The keyboard is still working through the converter, right? If so, at least you didn't brick it.

modelf

23 Oct 2023, 09:56

Yes it is. Typing this on the keyboard.

As I said above (before I edited my comment)... the seller said this keyboard would work with just a simple adapter. LOL. I was really naiive.

But I'd rather be using an original IBM-made Model F (in my case, it's an AT) than one of the new ones (no offense, and Joe seems like a good person), and I wasn't going to spend (what I spent) and not have a working keyboard.

But yes, everything is working. I didn't even have to disconnect the Soarer's.

Thank you for your help! I really appreciate it.
Last edited by modelf on 26 Oct 2023, 04:30, edited 1 time in total.

User avatar
Muirium
µ

25 Oct 2023, 12:58

modelf wrote:
23 Oct 2023, 09:56
As I said above (before I edited my comment)... the seller said this keyboard would work with just a simple adapter. LOL. I was really naiive.
Actually, that is quite correct. What long made the Model F AT so appealing was its compatibility with PS/2. This is *the* very keyboard that established AT as a standard, and IBM simply shrank the socket later on with PS/2. All you need is a passive cable like this:

Image

That is assuming you have a PS/2 socket to plug it into. I don't, so I never made use of that foundational compatibility myself. ;)

modelf

26 Oct 2023, 04:38

Please allow me to explain further: I have two desktop PCs. The older one, a 2011 machine running Windows 10, has native PS2 ports. This F/AT works on it with a simple adapter (such as the one shown in your photo). My newer PC, running Windows 11, is USB (no PS2 ports). The advert for the keyboard stated that a simple adapter would be needed, like the one in your photo, plus an active PS2-to-USB converter. The keyboard does not work with the PS2-to-USB converter, so I had to get a Soarer's. My issue as I was trying to describe above is that the seller advertised the keyboard as working over USB with only an adapter plus the USB converter, and it did not.

User avatar
Muirium
µ

26 Oct 2023, 09:30

Pushing my pedant's glasses up the bridge of my nose again, technically they were right about that as well. What you've likely got is a passive PS/2 to USB adapter, actually intended for USB era keyboards which can speak natively in either USB or "PS/2" (actually AT protocol, PS/2 is just the physical connector geometry). Your AT should indeed work perfectly well with an active adapter, of which Soarer's converter is the most powerful but far from alone.

But out in the real world, a lot of active adapters are garbage anyway, leading to a lot of cargo culting before Soarer came along with the gold standard of converters. :geek:

NathanA

26 Oct 2023, 13:05

Indeed. I can speak from experience with my PS/2 Model Ms. Some active adapters I tried did not work, and others did. I didn't spend a lot of time trying to troubleshoot the non-working ones (other than to try them with other keyboards to make sure that they worked at all, which they did), but the general consensus seems to be that the Model M at the very least draws more power than the average PS/2 'board, and many active adapters aren't designed with that power budget in mind. If that's true for the Model M, I can only assume that the Model F-AT is as "bad" or worse.

So I have no doubt that there are absolutely some commercial active PS/2 to USB adapters that the Model F-AT would work perfectly fine with...likely the same ones that tend to work with Model Ms, if I had to guess. As Muirium mentioned, a Soarer's just happens to be a fancy, programmable active adapter.

And, yes, all too often I have run into people with those super common single-piece, mint-green*-colored PS/2 to USB adapters who think that they are general-purpose and can work to adapt any PS/2 keyboard to USB. Those things have no active electronics in them and are only designed to work with keyboards whose internal controllers are natively dual-mode (PS/2 and USB) capable. Such keyboards will auto-detect which kind of bus they are plugged into. Most of those passive adapters in fact shipped with the keyboards that they were intended to be used with, not sold as stand-alone units.

* EDIT: ...or purple. I always mix up which PS/2 color is supposed to represent keyboards, and which mice. Purple is actually for keyboards. Passive adapters exist for both, but I'd actually be surprised if the green and purple ones -- at least from the same vendor(s) -- were wired differently inside...likely they are interchangeable in most cases and the difference is purely cosmetic. PS/2 keyboards and mice actually are electrically similar and use the same basic protocol. It's just that the ports are wired up and mapped out similarly to how analog phone jacks are (were?) commonly wired: line 1 on one particular jack, and line 2 on the other. PCs with two PS/2 jacks are hard-wired to look for the keyboard on "line 1", and the mouse on "line 2". But also much like how you can combine two phone lines (twisted pairs) together on one jack, there are enough pins on a PS/2 connector to carry two devices, and some PCs have just a single PS/2 port...you just need a splitter to "un-combine" them so that the clock and data pins get properly routed to the right pins on the mouse's connector.
Last edited by NathanA on 26 Oct 2023, 23:14, edited 1 time in total.

User avatar
depletedvespene

26 Oct 2023, 13:27

Muirium wrote:
26 Oct 2023, 09:30
Pushing my pedant's glasses up the bridge of my nose again, technically they were right about that as well. What you've likely got is a passive PS/2 to USB adapter, actually intended for USB era keyboards which can speak natively in either USB or "PS/2" (actually AT protocol, PS/2 is just the physical connector geometry). Your AT should indeed work perfectly well with an active adapter, of which Soarer's converter is the most powerful but far from alone.

But out in the real world, a lot of active adapters are garbage anyway, leading to a lot of cargo culting before Soarer came along with the gold standard of converters. :geek:
There is also the matter of motherboards. SOME are capable of reading the AT protocol of a keyboard through a USB port (in essence, the motherboard has its own active adapter integrated into its firmware), while others aren't. It's, obviously, rather difficult to know whether a given motherboard will have or lack its capability as it's not listed in its specs when you view the product page on the manufacturer's site.

NathanA

26 Oct 2023, 23:15

depletedvespene wrote:
26 Oct 2023, 13:27
There is also the matter of motherboards. SOME are capable of reading the AT protocol of a keyboard through a USB port (in essence, the motherboard has its own active adapter integrated into its firmware), while others aren't.
I have never heard of this. That's wild if true. Can you cite an example of such a motherboard? A quick Googling is not turning up any evidence of this for me thus far...

modelf

26 Oct 2023, 23:46

This is the converter I was trying to get to work with the F/AT keyboard and the Win11 PC. It's an active converter. It works fine with an assortment of 1986 and 1987 Model M keyboards (and a 2014 Unicomp), but doesn't work with the F/AT keyboard.

My newer PC is a Dell and I've found that it kind of does its own thing. Example, when I tried to upgrade the RAM (from the stock 12 Gb), I found that none of my spare RAM chips actually fit it.

The F/AT works with the Soarer's, so I guess I shouldn't be complaining. I put the F/AT back on the shelf for a while... am back to using my oldest Model M: a 5/86 1390120 with a rainbow steel plate and the crystal oscillator thing on the controller. Using it with the converter (plus an adapter for DIN5 to PS2) and it works well.

That said, there's probably more of a difference in motherboards and other variables than what's commonly discussed. I don't feel misled by the Model F/AT seller at all, just wish perhaps they'd said something like, "This board will probably work with an active converter, but it may not." (First-world problems though, am I right?)

My biggest complaint about the Model F/AT is the damn paint: you look at it wrong and it gets another mark (or scratch or burr) and then when you try to clean or fix it, boom you just messed it up worse. Also, the first F/AT I bought was in good shape, except the barrel plate was rustier and more corroded than a 1970 Chevy. So, I bought a second F/AT that was in crap shape, except that oddly its barrel plate is 99.9% rust-free. (Go figure?) So I put that barrel plate into the first F/AT and did a foam change (although it didn't need it). (Figuring out the space bar was an adventure, but the fishing line trick works!) Added a new old-stock power cord (the existing cords on both Models F were in bad shape) and I cobbled together a "new" F/AT.

The case is the one area where these mid-'80s Model Ms improve on the F/AT: they're not painted, so you can't really mess them up. Also, I like the removable cable on these two 1986s and the '87. The F/AT feels better to type on, but the 1986s and '87 Ms are a close second. (Any of these keyboards feels solid as f*ck, as also does a Keychron I use, putting pretty much anything else to shame.)

I'm glad Amazon is selling pre-made Soarer's converters (and the passive adapters) so people who aren't great with hardware (making things) have an option. (I don't buy on eBay so I can't vouch for any of the Soarer's converters being sold over there.)

(I have two 5/86 Model M 1390120s and it's interesting: the slightly older one has the crystal oscillator and the slightly newer one doesn't. Also have a 5/87 1391401 with a rainbow plate and original box, styrofoam and paperwork. I screw-modded these using these screws. Also in my rotation are two Omen (HP) gaming keyboards (MX red), a Keychron with aftermarket keycaps and a few other boards. And an industrial Model M (1991) and the 2014 Unicomp I grabbed from a closing Bed Bath & Beyond; I have no plans to screw mod these. The Unicomp is buckling spring and has a black case which is cool, doesn't feel too bad to type on. The keyboards that get the most use are the F/AT, the '86 with the crystal and the 1987 '401. Before I collected these, my daily driver for 20+ years was a Logitech K120. I only started collecting other keyboards when work necessitated I get a backlit keyboard, which led to the HPs, then the Keychron, then the Model Ms when I decided I wanted something more tactile. All this I've acquired since mid-2022... before that I'd used only the K120 and couldn't tell a Cherry switch from an Alps from a buckling spring.)

Alvin777

13 Nov 2023, 11:39

Thanks. What's a decently, cost-effective PS/2 to USB adapter for the vintage BM KB-9910 keyboard (membrane: - is there a mod to turn it into mechanical switches that won't rely on the membrane, even if it takes soldering? Or this IBM, even though its IBM isn't worth reusing and reviving?), that'll work reliably on any computer with USB?

User avatar
Muirium
µ

13 Nov 2023, 11:54

Spilled over from here:

viewtopic.php?f=2&t=28408

User avatar
fohat
Elder Messenger

13 Nov 2023, 15:36

NathanA wrote:
26 Oct 2023, 13:05

I always mix up which PS/2 color is supposed to represent keyboards, and which mice. Purple is actually for keyboards.
As I recall, the green mouse plug has one less wire inside and will not connect a keyboard properly.

Off-topic but tangential, it drives me bonkers when a USB cable leaves out a wire to be a "charging" cable when the cost to make it a normal data/charging cable is a fraction of a penny.

User avatar
Muirium
µ

13 Nov 2023, 16:09

fohat wrote:
13 Nov 2023, 15:36
Off-topic but tangential, it drives me bonkers when a USB cable leaves out a wire to be a "charging" cable when the cost to make it a normal data/charging cable is a fraction of a penny.
Sometimes that's a feature. My car used to auto-play from my phone whenever I'd plug it in to the USB port to charge. Usually this would be the same few seconds of the "first" item in my music library, quite unrequested, which it would immediately resume any time I hit stop. After much messing around, I sought out a USB to Lightning "charging" cable to resolve this idiocy, and it did the trick.

There's also times when people want to be able to charge their phone from an untrusted host port like whatever corporate computer they're facing, or even public USB power sockets which lead to goodness knows where. "Data" is not always your friend.

Post Reply

Return to “Keyboards”