From a8af612704235d9433895aff8a3a700ec7f01757 Mon Sep 17 00:00:00 2001 From: rekado Date: Sun, 23 Nov 2014 11:51:51 +0100 Subject: new post: how to upgrade the TEK firmware in a virtual machine --- ...1-23-upgrading-trulyergonomic-firmware.markdown | 81 ++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 posts/2014-11-23-upgrading-trulyergonomic-firmware.markdown (limited to 'posts/2014-11-23-upgrading-trulyergonomic-firmware.markdown') diff --git a/posts/2014-11-23-upgrading-trulyergonomic-firmware.markdown b/posts/2014-11-23-upgrading-trulyergonomic-firmware.markdown new file mode 100644 index 0000000..8976cff --- /dev/null +++ b/posts/2014-11-23-upgrading-trulyergonomic-firmware.markdown @@ -0,0 +1,81 @@ +--- +title: Upgrading the TEK's firmware --- on GNU/Linux +date: 2014/11/23 +tags: keyboard, virtualbox +--- + +I'm using the Truly Ergonomic Keyboard (model 209) for most of my +typing, because it's a pretty comfortable keyboard (when it works). +One of the greatest features of this keyboard is that the layout can +be customised and flashed to the hardware with a firmware upgrade. +Unfortunately, the application used to flash the firmware is only +available for Microsoft Windows. + +As a GNU/Linux user I find this to be very inconvenient. I simply +don't have access to a machine running Microsoft Windows (not even at +the office). Luckily, Microsoft provides +[free virtual machine images](http://modern.ie) of various versions of +their operating system for browser evaluation purposes. I +occasionally use them to verify that a web page works all right in the +proprietary and often quirky Microsoft browsers. Although these +images could be used in KVM, converting and tweaking them takes a +little too long and is a bit annoying. For the quickest results these +images should be imported with Virtual Box instead. + +Truly Ergonomic recommends not to use virtualisation software to +update the firmware of the keyboard, but as I was out of other options +I decided to give it a try anyway. You probably should not be doing +this if you don't feel you would be able to perform a +[manual reset](https://www.trulyergonomic.com/store/troubleshooting--truly-ergonomic-mechanical-keyboard#Reset) +of the controller in case something goes wrong. + +## Preparation + +- a recent version of Virtual Box +- a virtual machine image of Microsoft Windows +- a user account that is a member of the group *vboxusers*; required + to access any host USB devices from within a Virtual Box machine. + If you have just added your account to this group, remember that you + need to log off and on again before the changes come into effect. +- enable USB 2.0 support, provided by the *Oracle VM VirtualBox + Extension Pack*. The extension pack has to be installed through the + preferences menu in the VirtualBox client. Note that you may have + to run the client as root to have sufficient permissions to install + the extension pack. +- a USB device filter configured to pass host USB devices through to + the virtual machine + +If everything is set up properly you should be able to forward USB +devices from the host system to the virtual machine. Try setting up a +USB device filter in the USB settings menu of the virtual machine. +You should be able to create a filter for the Truly Ergonomic Keyboard +right there. If you cannot see a list of USB devices at all at this +point check that your user account is a member of the group +*vboxusers*. + + +## Performing the upgrade + +Inside the Windows machine start the official firmware upgrade tool, +load the firmware you want to flash to the keyboard, and click on +*Upgrade*. This will result in an error message, but that's okay: +don't panic! The reason why this error occurs is that the USB +identifier of the keyboard will have changed from something like this: + + ID 0e6a:030c Megawin Technology Co., Ltd Truly Ergonomic Computer Keyboard + +to something like this: + + ID 0e6a:030b Megawin Technology Co., Ltd Truly Ergonomic Computer Keyboard (Device Firmware Update mode) + +Since the USB identifier has changed, VirtualBox may no longer forward +this device from the host to the virtual machine guest system. All +you have to do is add a filter for this new USB device in the guest +settings and resume the upgrade by clicking on *Upgrade* again. This +will again lead to another error, but I found that by that time the +upgrade has already been performed successfully. + +Note that while the USB device is being forwarded to the guest system +you cannot use it in the host. To test if the new firmware works as +expected in your system, disable the USB filters in the guest +settings. -- cgit v1.2.3