prototype

Key cluster and trackpoint module progress

TL;DR: We’ve been making progress with the key cluster and trackpoint modules. New orders ship in a week, except non-black UHK cases.

Hi there, and welcome to our monthly status update! Let’s get right to it!

Production status

If you want your UHK shipped in a week, you should pick the black UHK case option. Otherwise your order will take longer due to temporary parts shortages. This shortage was mentioned in our previous monthly update, and we’ve been working on resolving it, but it’s taking more time than anticipated.

If you have any questions about the ETA of your order, please do read the delivery status page. We keep this page up-to-date, and we’re unable to provide more accurate information, not even if you email us.

Module progress

In our previous monthly update, I included a picture of the development board for the key cluster module. In the meantime, I’ve also written firmware to drive it, so here comes its obligatory demonstration:

From a technical standpoint, the BlackBerry trackball is an interesting little beast. The ball itself is not even electrically connected to the PCB. Instead, its four spindles rotate when pushed in the four directions. The spindles contain magnets which alter their magnetic fields about 9 times during a 360 degree rotation, and the alternating magnetic field is detected by the hall-effect sensors on the PCB.

Given its limited resolution, the BlackBerry trackball is hardly an ideal device for controlling the mouse pointer (right-sided modules will perform far better in that department), but it’s very well suited for scrolling in every direction. I’m actually surprised how well it’s already working, even though it’s the first working prototype. Over time, we’ll make the acceleration and speed of the mini trackball configurable, which will make it even more useful.

As far as the firmware goes, firstly, I slightly extended the UHK module protocol responsible for the keyboard halves and modules to communicate with each other. This allowed for the transmission of not only key states, but also pointer movement information. Then I wrote a driver for the BlackBerry trackball purely using interrupt handlers, which is the most efficient approach there is. Finally, I made the key cluster transmit the pointer movement information of the BlackBerry trackball to the right keyboard half which is the brain of the UHK.

The above pictures feature our most recent mechanical key cluster prototype. The creation of a working PCB is underway.

We’ve also made a mechanical prototype of the inside of the trackpoint module:

We may change the trackpoint component depending on various design constraints, but the overall mechanical design is expected to be close to final.

We’ve actually made progress with every one of the modules, but haven’t yet prototyped the others. We’ll be sharing all their juicy details in our upcoming newsletters.

Your feedback

You keep sending your nice tweets which we’re grateful for! Please keep them coming!

We’ll be keeping you updated on all things UHK, and we’re looking forward to talking to you on 2019-07-10.

New orders ship in a week

TL;DR: We caught up with pre-orders, and new orders ship in a week! Our customers made some awesome carrying cases for their UHKs. The UHK mouse mode is surprisingly useful, and viable for creating digital art. We’re making progress with the key cluster module.

Hi there, and welcome to our monthly status update! Ready for warp? Let’s punch it!

Production status

We’re thrilled to say that we’ve finally caught up with pre-orders, and incoming orders now ship in a week!

There are two exceptions regarding order parameters, though. If you want your UHK shipped in a week, you should pick the black UHK case option and a non-blank keycap printing option. Otherwise your order will take a bit longer due to temporary parts shortages. Feel free to check out the delivery status page for more information.

Please note that the order numbers have been removed from the delivery page. If your order hasn’t shipped yet, it’s because of the above exceptions. According to the delivery status page, you can shoot us a mail to change your order parameters to expedite delivery.

DIY UHK carrying cases

Some of you shared your DIY UHK cases, and they’re so awesome that I ended up writing a dedicated blog post about DIY UHK cases. I’m very impressed by these cases, and I’m sure they’re of interest of many UHK owners.

Creating digital art with the UHK

There are few keyboards with a dedicated mouse mode, and the UHK might just have the best implementation of all. Brandon Yu’s drawing is a testament to this.

I’m super impressed by Brandon’s work, and wouldn’t have ever thought that anyone would create such a beautiful drawing purely with the UHK.

The UHK mouse mode will never be as good as a dedicated mouse, but it’s surprisingly capable in the right hands. This is due to the implementation of the mouse pointer acceleration and its number of configuration options.

Key cluster module progress

We’ve been making progress with the key cluster module. András got the latest CAD model 3D printed, and we’re glad to say it’s more robust than ever.

In the meantime, I’ve been doing some electronics prototyping.

On the right side, you can see a breakout board designed by SparkFun, featuring a BlackBerry trackball - the kind of mini trackball that will be put into the key cluster. It’s wired to an old hand-soldered UHK left half. The left half of the UHK is just like a module from an electrical, firmware, and protocol standpoint, so it’s a great development board for modules. The design of the key cluster PCBs is in progress, and this is the whole Frankenstein keyboard on my desk:

(Yes, my UHK is backlit. We’ll release a backlight upgrade kit eventually.)

I also started to extend the firmware, and created a dedicated project for the key cluster module based on the firmware of the left keyboard half. The two projects contain a lot of duplicate code right now, so I’ll be gradually extracting the shared code to a module API which will be consumed by all the modules.

Your feedback

You’ve been sharing more than your fair share of tweets over the last month. Thanks so much, and as always, please keep them coming!

We’ll be keeping you updated on all things UHK, and we’re looking forward to talking to you on 2019-06-13.

Production and module progress

Important: Please make sure that your shipping address is up to date! You can change it on your Crowd Supply account page. Please also check out the delivery status page.

Hi there, and welcome to our monthly status update!

TL;DR: Since our last update, we’ve sent out mini batches 5, 6, 7, 8, and 9. This is the highest volume we’ve produced so far, but not as high as we ultimately aim for. We’ve fallen behind with pre-assembly due to the aforementioned staffing issues, but we’re catching up, and the ramp up is still underway. The development of the modules is in progress.

First up, let us share a beautiful and very original picture that we love very much. It’s made by Yukio Miyamoto. He is a masterful illustrator who also happens to be an awesome backer of ours.

Your recent feedback

The feedback you keep giving to us continue to be amazing.

The following is an interesting one. Did you know that when armed with a USB OTG cable, you can connect your UHK to your Android phone, and you can probably also control the mouse pointer? (Recent Android kernels tend to support USB mice.)

Lastly, this one made us laugh out loud:

Please keep them coming! We’re excited to hear about y’all.

Module progress

Production does keep us busy, and we can’t yet devote as much time for development as we’d like to, but we’ve made some progress with the modules.

The following is sitting on my desk, and it might just be the weirdest keyboard ever.

But most importantly, this Frankenstein keyboard is a proof of concept! This is 1 UHK right half and 3 left halves interconnected. The top left half simulates a left module, and the top right half (which is a left UHK half) simulates a right module.

The keyboard halves and modules communicate via the main I2C bus of the UHK. The right UHK half is the I2C master which initiates all communication on the bus. The rest of the devices are I2C slaves. From the standpoint of the firmware, there is no difference between the left keyboard half and the modules.

I basically dremeled a protoboard to size, and created a passive 4 port 4P4C hub out of it to interconnect the pieces. Then I added test keymaps for the modules, and reflashed the firmwares of the left module and the right module, so that their I2C addresses don’t clash with the I2C address of the left UHK half.

This proof of concept works as intended, and now I can type on all the 4 keyboard halves, making me seem like I overcompensate for something.

As you can imagine, this is the first step of many to follow. Next up, I will extract the part of the firmware that will be shared across the modules and the left half, and then create separate firmware projects for the modules, utilizing the extracted code.

Then I’ll attach the peripherials specific to the individual modules to these development UHK left halves, and write firmware code to drive them.

In the meantime, András will finalize the plastic cases and mechanical design of the modules, so that they’ll be optimized for manufacturing. This will, in turn, enable me to design the custom PCBs of the modules.

In a way, developing the modules is like developing additional products - 4 products to be exact, and even though we’ve gained a lot of experience, realistically speaking, there’s no way the modules will be ready by the end of August as originally planned.

Given the above, we’re changing the estimated delivery date of the modules to the end of December which should be more realistic. None of us are happy with delays, but we’d much rather take our time than compromise the quality of the product even the slightest bit. According to your feedback, it’s the right thing to do.

Thank you for reading this update! As always, we’ll be keeping you updated on all things UHK, and we’re looking forward to talking with you on 2018-07-12.

Further steps towards mass production

Hi there, and welcome to our monthly status update!

TL;DR: We’ve been making good progress towards mass production. The corrected prototype PCBs have been manufactured, tested, and sent to TÜV Netherlands for final certification. The PCBs for the pilot run are being manufactured. The configuration parser of the firmware has been fully implemented. BusPal got fixed, allowing us to update the firmwares of both keyboard halves. We’ll close the order cancellation period for batch 1 in a week.

You can always check out the expected delivery date and update your shipping address on your Crowd Supply account page.

Closing order cancellation for batch 1

Order cancellation for batch 1 will be closed in a week. You’re likely to be in batch 1 if your order was made on or before 2017-07-12. The reason is that we’ve already summarized the orders of batch 1, and we’re assembling these orders according to that plan. It’d cause a lot of potential problems to update the orders in the middle of assembly, and the best solution forward is to disallow order cancellation. You can cancel your order until 2017-08-24 but not afterwards. Thank you for understanding!

Assembling the plates and switches

Our team is working to assemble the 2,000 UHKs of the first batch. Right now, they’re busy with putting switches into the plates. So far, 1,000 pairs of plates have been assembled.

They’ve also half-assembled 150 pair of cases including the magnets, magnet-counter parts, and inserts, and excluding the small rubber feet and the back stickers. It’s a joy to see the fruits of their labor.

Miscellaneous parts

Lately, some simple but necessary parts arrived from our suppliers, such as the USB cables and the bridge cables. What you see are only some of the many boxes.

We’ve also finished with the metal guides. There are 16,000 of them.

1,300 flip-out feet have been molded.

These are a some of the 5,000 case buttons manufactured so far.

2,000 pairs of vertical PCBs have been fabricated. These will mate with the modules, or with each other when the UHK halves are merged.

Palm rests

Finally, the palm rests for the pilot run are now ready.

Adding a pair of these palm rests to my prototype truly elevated the overall look and comfort level. It was like putting on the crown jewel.

Please note that backlit UHKs are not available yet. See our Everything about UHK backlighting post.

Electronics progress

Luckily, the bypass capacitor related fix that I outlined in our previous update solved the I2C communication issue, even though my initial fix didn’t.

When I soldered the through-hole capacitors to the previous version of our PCB it seemed like a success, but it wasn’t. I realized that communication was still unstable. Then I started emailing back and forth with Eben Qiu, field application engineer of ISSI, and he persuaded me that this must be the issue.

Eben sent me an application note titled AN-035-EN Layout Guidelines for IS31FL3731-SASL2 and a further Layout guideline document tailored to the UHK. Based on his advices, I slightly but carefully redesigned the board around the LED driver ICs. The main thing is that the bypass caps must be put as close to the GND and VCC pins of the ICs as possible. GND and VCC traces must be as thick as possible.

Redesigned PCBs featuring bypass caps close to the LED driver ICs

I’m happy to report that the new layout has made I2C communication rock solid, but it’s still possible that it’ll hang every now and then, so we’ll combat this issue in two other ways.

First, I’ve made sure that the state of the LEDs is cached by the master MCU and it only sends updates to the LED drivers when the LED values actually change. By minimizing the amount of communication, we also give minimal chance to the LED drivers to screw I2C.

Second, we’ll make the I2C driver much more robust, so that it’ll be able to recover immediately from errors. Only this solution will result in true robustness.

Having the chance to give the board more attention, I also improved the acoustic noise of the UHK. The noise level was already better than it used to be a while ago, but a subtle high-pitched noise could be heard in a very silent environment. Fortunately, Eben also shared another application note with me titled AN-012-EN Reduce acoustic noise of IS31FL3236 EVB.

I ended up using tantalum electrolytic capacitors instead of ceramic capacitors, which outperformed my wildest expectations in the acoustic noise department. The newest boards are so silent that I cannot hear a damn thing, even when putting my ear as close to the keyboard as possible. And that’s when every LED is driven with full power, which would generate the most noise.

Next up, we went to TÜV Hungary to conduct final measurements at their lab. We finished in the record-breaking time of an hour for both of our prototypes, with the best results so far, and then left the prototypes there. They will send them to TÜV Netherlands for final FCC and CE certification. We should have those papers soon.

Finally, I sent the gerbers to our PCBA contractor, and they started fabricating the boards of the pilot run.

Firmware progress

We’ve already had a fair number of talented contributors, and it looks like we keep attracting some of the best talent, and this time truly one of the best in the world.

The name of our most recent contributor is Erich Styger and his name is familiar to everybody who has ever worked with Kinetis microcontrollers. That’s because if you search for a Kinetis related issue, you’ll bump into one of his blog posts as the first result which usually also contains the solution to your problem.

Erich started out as a compiler engineer, then accumulated more than 20 years of experience as an embedded systems engineer, and now he works as a professor at the Lucerne University of Applied Sciences and Arts, and works with the ETH Zürich, and also for NXP. His MCU on Eclipse blog is the go-to place for everything Kinetis, and many consider him the world’s most knowledgeable professional in this space.

As you can imagine, Erich is very busy, but over a fair number of emails I’ve managed to persuade him that the UHK is the best thing since sliced bread, and given the development capabilities and open nature of our keyboard, he became quite interested in it. So much so that he allowed me to send him a prototype, then he sent us his fair share of contributions.

Every one if his contributions is a definite step forward, but the one I consider the most valuable is his BusPal fix, as it finally enables the right side firmware to route the firmware to the left keyboard, allowing us to upgrade the firmware of both keyboard halves, and coincidentally the firmwares of the modules, too! He’s also written a relevant blog post on his blog.

Mad props and a pilot run UHK with a palm rest goes to Erich. I feel fortunate, thrilled, and honored beyond words to have him contribute.

Meanwhile, Eric (not Erich), our intern has been hard at work and finished fully implementing the configuration parser. He also started implementing the macro engine. Unfortunately, his internship period is over, so the macro engine is not ready yet, but he was making great progress which I’m very happy about. Thanks so much for your hard work, attention to details, and diligence, Eric!

With the configuration parser in place, the UHK is able to switch across keymaps which was the last major remaining parser related issue. The macro engine will not entirely be ready by the time of the pilot run, but we’ll be gradually shaping it, and it should be ready in the not so distant future.

In the meantime, I implemented an async I2C EEPROM driver, so now the firmware is able to transfer the configuration to and from the EEPROM, enabling the UHK to persist the configuration.

Estimated delivery and standing issues

These are the major standing issues that affect the delivery of the pilot run:

  • Top case parts: We’ve already molded numerous cases, but we’re still working on improving the surface quality of the top parts. The molds should be ready in 1-2 weeks at which point we’ll manufacture 150 pairs of them.
  • Packaging and back stickers: We’ve been working a lot on the design of the packaging of the UHK and the palm rest and we believe they’ll be very fancy. We’ve ordered 3,000 UHK boxes and 1,500 palm rest boxes which may take 3-4 weeks to be manufactured but hopefully we’ll be able to get some of them earlier for the pilot run.
  • PCBs: The PCBs are being manufactured and are expected to be ready in August. Then our PCBA contract manufacturer will assemble 50 of them for the pilot run.
  • FCC and CE certification: We don’t have a solid ETA about this, but chances are good that this will be done by the end of August.

The bottom line is that we’re doing absolutely everything we can to deliver the pilot run by the end of August.

Thank you for reading this update! As always, we’ll be keeping you updated on a monthly basis via our blog and newsletter.

Talk to you on 2017-09-14!

Tweaking the molds and preparing for the pilot run

Hi there, and welcome to our monthly status update!

TL;DR: The BOM is fully finalized and ordered. The UHK prototypes have improved a ton in the EMC department. Agent and the firmware has evolved a lot. The key cluster and trackball modules have been mechanically prototyped and tested. New developers joined our forces. We've tested the molds and found some issues which will introduce some delay. We plan to ship a pilot run of 50 UHKs in July. The rest of the UHKs are planned to be shipped starting from August. Please read on!

You can always check out the expected delivery date and update your shipping address on your Crowd Supply account page.

EMC improvements

We've been visiting the EMC lab of TÜV since our first successful test. The reason is twofold. First, we wanted to improve on the results, and second, there were some further tests to be done.

The testing results that we shared with you the last time already passed, but the safety margin was only 2 dbμV/m, instead of the recommended 5 dbμV/m. Our worry was that the margin was so thin that it was possible for the final test to fail. We really wanted to avoid any potential failure, so we have been tweaking various resistor and capacitor values, and have been trying various bridge cables and USB cables to make the margin wider.

You know what made a drastic difference? The USB cable. As soon as we tried a USB cable with a ferrite choke on the keyboard end, the EMC graph changed very substantially. Don't worry, this ferrite choke is only 24 mm x 14 mm in size, and it's very light so it doesn't weigh down the cable.

The updated EMC graph

According to this graph, we went from a 2 dbμV/m safety margin to about 18 dbμV/m! (See the vertical distance between the blue mark around 100M and the red line.) Given these results, we'd be extremely surprised not to pass the final test.

We've also conducted some further tests that we haven't done before. First, we put the prototype into the test chamber and tried to disturb it with focused radiation. We were watching it with a camera to see whether the LEDs go out, and checked it after the test. The prototype didn't break a sweat and kept functioning perfectly.

In the second test, the USB cable was put into a metal cage, and got a healthy dose of radiation. The criteria for this test is that the device can go out of service, but ultimately, it must recover by the end of the test.

The first time this test was executed, the LEDs on the left keyboard half went out and it didn't recover. After that, I made the firmware much more robust, and as a result, the left keyboard half was able to recover like a champ.

Speaking of LEDs, we got so many inquiries about backlighting that it justified its own post, so here you are: Everything about UHK backlighting.

Things are looking so good in the EMC department that I fully finalized and ordered the BOM for the PCBs of 2,000 UHKs, and if everything goes well the UHK will be certified very soon, possibly in June.

Agent progress

A lot has been happening to Agent, our configuration application recently. Józsi is still involved in the development of Agent, but he told me that going forward, he cannot guarantee a fixed number of working hours per month because his life got a lot busier. This made me search for the right candidates, and I'm happy to report that I found two excellent developers.

Róbert Kiss is busy with some of the most pressing Agent issues. Agent has an initial OS-specific privilege escalation step that allows it to access the USB interface of the UHK. Robi implemented the missing Windows-specific part of the privilege escalation step. He's also set up a build process, so that now Travis generates releases for Linux and Macintosh, and AppVeyor generates releases for Windows, and these files get uploaded to the releases section of GitHub. He's also mostly finished the auto-update mechanism of Agent.

Attila Csányi will be busy with a number of important but less time consuming issues given his limited time. He's already made the macro layout more responsive and made the currently selected key highlight and animate very nicely. These seemingly small issues add up big time when it comes to user experience.

Luckily, Józsi is still involved with the development of Agent. Lately, among other things, he's implemented ISO/ANSI layouts. Agent used to display only the ANSI layout but this change will allow it to show the correct layout, be it ISO or ANSI as soon as you plug in your UHK.

Firmware progress

Substantial progress has been made with the firmware recently. The easier part was making the communication between the halves more robust. First up, I added a CRC16-CCITT checksum to the messages between the keyboard halves to improve message integrity. Next up, I implemented a recovery mechanism for LED drivers so that the LEDs also recover when disconnecting/reconnecting the halves. I also made the communication packets between the halves more efficient and smaller.

The harder part is upgrading the firmware of the left keyboard half and modules via USB. You see, it's fairly easy to upgrade the firmware of the right keyboard half because it's directly connected to the host computer. The modules and left keyboard half however are not directly connected via USB. They're connected via an I2C bus to the right keyboard half.

The plan is to implement a proxy mode for the right keyboard half, so that it can route the firmware from the USB host to the left keyboard half and to the modules via I2C. Luckily, such a protocol translator is already implemented so we can use it. It's called BusPal, and it's part of the KBOOT (Kinetis bootloader) package. Unfortunately, it's not nearly as mature as KBOOT, and it was obvious that integrating it to the UHK firmware won't be a walk in the park. I was searching for a proficient developer to make this happen but despite my best shot, I couldn't find a right candidate, so I had to try to integrate BusPal myself.

There were three variants of BusPal within the KBOOT package but I noticed that only one supported USB, so I picked it. In the beginning, I couldn't even build it because it was developed using the the proprietary IAR embedded workbench, not with the free Kinetis Development Studio that is based on Eclipse and GCC. I simply started by putting BusPal into a subdirectory of our firmware repo and trying to make it work. It was an uphill battle at first because BusPal has a huge codebase of which we need very little functionality. Just making the compiler happy has taken days, and after that it was even more work to make it functional. Luckily, over the course of about two weeks, BusPal enumerated over USB and could talk to the left keyboard half. Well, mostly.

Now, I can send protocol commands to the left keyboard half via BusPal but they don't work every time. As it turns out, the ROM bootloader of the KL03, the processor of the left keyboard half is buggy as documented by errata ID 8060, and these bugs have to be worked around. I can erase the processor and query properties, but the firmware upgrade command breaks. Given my myriad of responsibilities, I'd much rather delegate this last step, and it seems that I might have just found the ultimate developer. More about him later.

The state of modules

Up until this point, not too much has been said about the progress of the modules. That's because our primary focus is getting the UHK to market, so András only works on the modules when he has some free time.

At last, I'm happy to show you the first version of the 3D printed modules:

These prototypes were printed using a white, powder-like material, but the final modules will be offered in black color.

Originally, we created two versions of the modules, one of them being totally flat, the other one being angled.

Flat key cluster module on the left, angled key cluster module on the right

We've been experimenting with a front and a top mini trackball on the key cluster module, but concluded that the top one is much more usable, so we'll ditch the front-sided mini trackball.

Angled trackball module on the left, flat trackball module on the right

The trackball module from the inside without the PCB

The reason we've made two versions is to test them and see which version is more ergonomic. The flat modules made our thumbs stretch significantly less, so we're confident that they're a better choice. This is also very fortunate from a manufacturing standpoint as the space inside of the modules is very limited, and even more so in their angled versions, so the flat versions will be easier to design and manufacture.

We also found that it's not a good idea to use two buttons per module because the inner button which is closer to the UHK usually gets pressed when pressing the case button of the UHK. Our plan is to only feature a single button per module, the outer button that is farther from the case button of the UHK.

This is a big step forward, but there's still a lot to do in the future. These plastic cases don't contain PCBs yet, so they will have to be designed. Luckily, the left keyboard half is an module from an electrical, firmware, and protocol standpoint, so we will be able to reuse its schematic and firmware. These plastic cases of the modules are only made for mechanical testing purposes and need to be redesigned here and there because they are not manufacturable, and lack structural support.

Molding plastic parts

I'm a software developer by trade, so I have little knowledge about injection molding. A couple days earlier however, I was fortunate enough to observe the process up close in an injection molding facility where we tested our molds.

The mold of the top right case

As so many things, injection molding looks deceptively simple. Plastic flows into a mold, and the perfect plastic part falls out of the machine. Just like on this video:

In practice, lot of things can make a plastic part less than perfect, such as warping, which is the major issue we have mostly fixed.

You see, warping is a very common phenomenon, and it's usually so slight it doesn't matter. In our case however, it does. As it turns out, of all the keyboards ever created, the UHK is probably the most sensitive to warping. This is because when the plastic cases of the two keyboard halves are merged, it becomes extremely pronounced.

When the UHK is merged and the halves warp even slightly, a very slight V shape can be noticed. This shape raises the four outer legs while the four inner legs firmly touch the ground which is obviously unacceptable.

Surface finish issues, such as sink marks and surface defects are another category of injection molding issues we have to deal with which we have also mostly fixed.

One way to fix the above issues is to tweak various mold and injection parameters which we were actively pursuing quite successfully during our three-day stay at the factory. It's mind-boggling how many parameters can be tweaked, such as the injection speed, pressure, after-pressure, mold temperature, the duration of the molding process, and many more. To make things even more complicated, these parameters are not single numeric values but rather graphs, and multiple points of the graph can be set along the time axis!

The other way to fix these issues is to modify the molds themselves. This is usually more time consuming and involves machining the molds in various ways. Some of our issues can only be solved this way.

We have a rough schedule in place regarding the plastic parts:

  1. Within days, the injection-molded cases will be scanned with a 3D laser scanner to reveal the inaccuracies for the molds to be fixed.
  2. In the next week, the left and right bottom molds will be fixed according to the above results.
  3. Another week later, we'll mass-produce the bottom parts for the pilot run.
  4. Within a month, we'll get all the molds fixed, fine-tune technological parameters, and manufacture every plastic part for the pilot run.

As for the big picture schedule:

  1. In July, we’ll manufacture a pilot run of 50 UHKs and send them out to our pilot testers, which include the various developers, contributors, and backers who have helped us along the way and indicated a willingness to help us rigorously test the UHKs before the main production run and work out any final kinks should they arise. All 50 pilot run units have been assigned, but if any of our pilot testers drops out and we need to fill a spot, we'll solicit volunteers. We haven’t talked about the pilot run yet, but we think it’s critical for the first UHKs to be tested before we actually start the main production run.
  2. In August, we'll launch the mass production of the remaining 1,950 UHKs. The goods will flow out continuously and be shipped approximately in the order they were purchased. Since we are using fulfillment centers in both Hungary and the US, there will be some variation in when your order is shipped, depending on your shipping address, but, basically, the sooner you ordered your UHK, the sooner you'll receive it.

Thank you for reading this update! As you can see, we have to deal with the molding issues which do introduce some delay, but at the same time, we're also making rapid progress. We're asking for your patience and support during these last miles. We'll make sure the UHK will be worth the wait.

As always, we'll be keeping you updated on a weekly basis on social media, and on a monthly basis in this blog and our newsletter.

Talk to you on 2017-07-13!

Everything about UHK backlighting

Please note that the UHK 60 v2 has per-key RGB backlighting. This post is about the backlighting of the UHK 60 v1.

We get a lot of inquiries on a regular basis, and it's blindingly obvious (pun clearly intended) that most of you are interested about backlighting. In this post, I'm about to write everything you ever need to know about UHK 60 v1 backlighting.

Luckily, you'll be able to transform your non-backlit UHK 60 v1 to a backlit UHK by soldering LEDs to the circuit boards, and optionally replacing keycaps. Let's take a look at the following pictures:

Backlit UHK prototypes in daylight

Backlit UHK 60 v1 prototypes in daylight

Backlit UHK prototypes at night

Backlit UHK 60 v1 prototypes at night

In the above pictures, the top UHK 60 v1 features opaque keycaps and the bottom has backlight friendly keycaps. Please note that these pictures are a bit misleading because in real life the brightness of the opaque keycaps is much dimmer than of the backlit keycaps. It's also worth noting that the final backlighting will be better. We'll optimize the placement of symbols for more even light distribution and carefully choose the best LED. The most important takeaway is that opaque keycaps may suit some, but probably aren't a great choice for most.

In order to make your UHK 60 v1 backlit right away, you can purchase a number of LEDs and solder them to the PCBs. You will have to use 3mm (T-1) LEDs. Be careful to choose a LED type whose rim is not larger than the lens itself, otherwise the LEDs won't fit into the keyswitches. Also make sure to use single color LEDs as bicolor LEDs won't work well. You can pick any LED color but LEDs of the same forward voltage should be used, otherwise ghosting may occur. Fear not, we'll provide detailed instructions for soldering.

Alternatively, you can wait for our backlight upgrade kit that we'll release later. The backlight upgrade kit will contain white LEDs and a backlight friendly keycap set. In the beginning, we'll only provide US ANSI and ISO versions.

As for the release dates, we're really not sure yet. We'll probably release the backlit UHK 60 v1 version and the backlight upgrade kit about a year after delivering the first batch. We're also unsure about the price but it will be reasonable compared to the price of the UHK 60 v1.

It's worth mentioning that although backlighting is a nice feature, the labels of non-backlit keycaps are easier to see in daylight.

Multiple brightness settings will be provided. One is a global brightness setting of 100 levels that affects every LED including both the LED display and the LEDs beneath the keycaps. The other is a per-key brightness setting of 256 levels which will enable us to do all kinds of fancy animations. This per-LED brightness setting can also be applied to the LED display as a whole. The formula is: actual brightness level = global brightness * per-LED brightness.

We plan to implement RGB backlighting eventually but surely not anytime soon, as it will require a complete redesign of the PCBs.

We also got a question about whether it's possible to solder only a couple of LEDs, for example only the LEDs of the home row. While it is possible, it will likely cause ghosting issues when using different per-key brightness values. This problem can be solved by telling the LED drivers which LEDs are actually present. We can implement a related user interface in Agent to mark individual LEDs populated/unpopulated, but we will only do so if there will be enough interest for this seemingly special use case.

Lastly, I'd like to note that while backlighting is clearly a neat feature, it's not necessarily better than not having backlighting. In broad daylight, the letters of the opaque keycaps are easier to see than the labels of the backlit keycaps. This is also true when the backlighting is off and simply backlit-friendly keycaps are used due to their material.

So this is it! Hopefully, all your questions are answered now. If not, please ask away in the comments. Have a beautiful weekend!

EMC pre-compliance testing successful

Hello and welcome to this month’s UHK update!

TL;DR: Our most recent prototypes have successfully passed EMC pre-compliance testing. The final certification will be taking place in June and is expected to take 4-5 weeks which will push delivery to July. Manufacturing is proceeding apace. One of our prototypes has became a movie star.

You can always check out the expected delivery date and update your shipping address on your Crowd Supply account page.

EMC pre-testing

Not long after our previous update, we assembled 6 prototypes for the upcoming EMC pre-compliance measurement. These are v7.2 prototypes featuring EMC redesigns and related extra components, such as a ferrite choke.

Six UHK prototypes

This time, instead of going to T-Network, we went to TÜV which was a much better experience. Their control room is more modern and tidier.

Measurement room

They use a more sophisticated measurement software.

Measurement software

Their measurement chamber is more spacious.

Measurement chamber

We told you the last time that the laptop we brought didn’t pass the test in itself, so we’ve made sure to bring a MacBook Pro this time to avoid such problems.

Measurement chamber table

Please note that the we don’t provide a backlit UHK yet, but the prototype exists

The measurements taken by TÜV are of considerably higher resolution than those at T-Network, and they do take proportionally more time. Instead of taking around 3 minutes, they take about 15 minutes each. This time, we passed the test! You can see the result below.

EMC measurement

This may look like a fail, but it's not! There are two peaks that are above the safety zone, but as it turns out, there are two measurements involved. In the first measurement, the peaks get detected. In the second, the peaks are more closely investigated which usually results in considerably lower values. The final values are marked with blue rectangles below the peaks, and they're all within the safety zone.

This is clearly a much better result than anything we’ve ever measured, although admittedly, the safety margin is quite tight around 84 Mhz. Endre has an idea how to make it even better by replacing some components, and we’ll test his idea in a week, but we’ve already booked a certification date for June regardless.

We’ll send two final prototypes to TÜV Hungary by the end of May, who will in turn forward the prototypes to TÜV Netherlands where the actual certification will take place. The certification itself is expected to take 4-5 weeks. This is longer than anticipated and the PCBs can only be mass produced after the certification succeeds. Unfortunately, this pushes delivery to July.

Manufacturing news

Let’s see some major news from the manufacturing department:

  • 1,000 steel plates have been manufactured and 3,000 more are in the works. Placement of the switches into the plates will begin soon.

1,000 plates manufactured

  • A pilot run of 100 pairs of the wooden palm rest parts have been ordered, and 900 pairs are set to follow.
  • The testing of the modified injection molding tools will take place in a week.

One of our prototypes has became a movie star

About a year ago, the assistant propmaster of Netflix series Sense8 got in touch with us. She told us that there’ll be a hacking scene in the series, and asked us whether we could provide a prototype to be filmed. Of course, we said yes in a heartbeat. Fast forward one year, we got featured in the series!

UHK in Sense8

You can see the UHK prototype in:

  • S2E03 (Obligate Mutualisms): 20:02 (-31:13)
  • S2E04 (Polyphony): 2:11 (-55:56) multiple cuts in 10 seconds, 5:01 (-53:06)

And a couple more spots here and there. You’re welcome to let us know if you notice another scene.

Needless to say, we’re thrilled to be featured. Thank you so much for the opportunity, Netflix!

This wraps up our May update, Ladies and Gentlemen. A lot of things are happening in parallel as usual, and with the certification of the PCBs on the horizon, we’re really getting close.

As always, we’ll be keeping you updated on a weekly basis on social media, and on a monthly basis in this blog and our newsletter.

Talk to you on 2017-06-15!

A huge influx of parts

Hello again and welcome to this month’s UHK update!

TL;DR: We’re inching towards mass production. We’ve received tons of parts from our suppliers. The design of the palm rest is finalized, and our new PCBs are being fabricated.

Our delivery date is unchanged, which you can always check out on your Crowd Supply account page.

Now let’s delve into the nitty-gritty!

Big boxes galore

Not long after the previous update, a van arrived, chock full of goodies.

The majority of the boxes contain switches. Lots of them. 127,000 to be exact.

You can see all the 6 switch types including brown, blue, red, black, clear, and green.

A fair number of boxes contain 131,000 keycaps. A single bag contains 1,000 keycaps of the same type.

Yet another box contains 11,000 stabilizers and 5,500 stabilizer wires. Assembling these little guys will be quite an exercise.

When seeing all the boxes neatly arranged, I couldn’t help myself, so I posted the following picture on April 1st.

You guys totally got it by immediately replying with the (in)famous 1970’s Bill Gates centerfold on social media. Well done!

Small bits and pieces

In the shipments were plenty of smaller parts, too. Let’s see what we’ve received.

A small sample of the nearly 2,000 LED displays

10,000 pogo pins

2,000 neodymium magnets

As a matter of fact, we’ve received another block of 2,000 magnets, but we didn’t dare to put the two blocks close to each other. The combined force of these magnets is formidable, which could have shattered the magnets, or even worse, our hands.

Final palm rest design

A while back, we showed you a palm rest version we thought was very close to final. Boy, were we wrong. As it turned out, the milled aluminium base plate had a tendency to bend a little bit when the legs were flipped out and force was exerted on the palm rest. András was looking into alternative design and came up with something we’re very proud of.

Now, we’re using a steel baseplate to connect the wooden part of the palmrest to the keyboard. This results in a stronger connection, making flexing a non-issue. As you can see, a recess was designed right where your thumb resides, which will make it easier to press the thumb button. We think it’s quite a useful feature.

The wood is more emphasized in this design, resulting in a classy minimalism. We plan to choose graphite color instead of the current brown color. We believe it will look just as beautiful as brown, and it will gel better with the black color of the keyboard.

We’re waiting for yet another sample, then we’ll pick a manufacturer, and launch the mass production of the palm rests.

Redesigned PCBs

In our last update, we let you know about the EMC test results of the v7.1 UHK PCBs which were a lot better than v7.0, but still not good enough. Since then, we’ve finished the design of the v7.2 UHK PCBs.

The PCBs were redesigned by István based on Endre’s suggestions to reduce EMC emissions. Right now, they’re being fabricated, and should arrive soon. As soon as they arrive, we’ll assemble a half dozen prototypes and head to the EMC lab.

Speaking of the lab, instead of going to T-Network, we’ll go directly to TÜV from this point on. I recently contacted TÜV, and realized that they also do EMC pre-testing for a reasonable price. Even better, they will do the final EMC testing and issue the certifications, so it’s better to familiarize them with the UHK as soon as possible.

On the assembly front, we’ve just ordered electrical screwdrivers, screw dispensers, a glue dispenser, and a number of jigs are being made to speed up mass production.

A lots of further progress is expected soon. We’ll get 2,000 metal plates manufactured in the upcoming days, and the mold is almost fully ready, too, making it possible to manufacture the cases very soon.

In our true style, we’ll keep you updated on a weekly basis on social media, and on a monthly basis in these newsletters.

Talk to you on 2017-05-18!

Improved EMC test results and incoming parts

Hello, and welcome to this month’s UHK update!

TL;DR: Our most recent EMC test results are much better than the previous results, but they’re still not good enough. We’re working hard on our new prototype to pass the tests, but this delays the project by about a month. Lots of progress is happening on other fronts, too. Please read on!

Parts are flowing in

The UHK contains loads of components, and some critical ones are flowing in one by one. These are the most recent parts:

100 ANSI left, 100 ISO left, and 100 right plates have been manufactured so far. These plates will be used for the first production run. Of those plates, we have 20 of each in hand to check their quality and accuracy.

These 2 plates were surface treated with Nickel and Zinc.

There are also loads of smaller components that arrived lately:

4,000 magnet counterparts laser-cut

A couple magnet counterparts after grinding

140,000 screws

2,100 FFC cables

We’ve already ordered the switches, keycaps, keycap stabilizers, and displays which are expected to arrive soon.

The manufacturing of the guides and magnet counterparts is in progress. These are multi-step manufacturing processes, and they’re well underway.

The state of the molds

Currently, the molds are being tweaked, and the tweaks are mostly cosmetic by nature. All things considered, they’re already in very good shape.

András showed the current case samples to one of his friends recently, who works for a contractor of a premium car manufacturer, and his friend was genuinely impressed by the quality of the case, so we’re already doing pretty well.

Apart from the cosmetic fixes, we also plan to add one or two snap fits to make the case more rigid when the palm rest is attached to it. These modifications won’t affect our schedule.

EMC testing, 2nd round

Here we go again. Since our last update, we’ve created new prototypes to be tested in the EMC lab.

These are actually two right keyboard halves. The left keyboard half hasn’t been redesigned because, according to our tests, the USB is the major culprit when it comes to EMC issues, which are located on the right half.

We were told that a 4-layer PCB should perform better when it comes to emissions than a 2-layer one, so I decided that we should create both a 2-layer and a 4-layer PCB and see how they stack up.

The naked eye can hardly tell the 2-layer and the 4-layer PCBs apart, so I put an “L4” identifier right after the PCB identifier text for the 4-layer PCB. Now it’s easy to tell.

Even though my hopes were high that we’d pass the tests with the new boards, I prepared for the worst and was looking for expert help. That’s how I found Endre Köcze.

Endre has a lot of experience behind him as an electronics engineer, and he’s a pleasure to work with. He has taken a thorough look at the UHK design, and we went to the EMC test together.

The test results started off as quite a surprise. First, we measured only the laptop as a reference point, and according to the measurements, it didn’t pass! Go figure.

Previously, we used Robi’s laptop, which passed the test with flying colors. This, however, was Anna’s, my wife’s laptop. Admittedly, this laptop is not as fancy as Robi’s laptop, but a reputable manufacturer makes it, and it should also pass the test.

The first takeaway is that we’ll bring as many laptops as we can next time, pick the least heavily emitting one, and use it in further measurements.

Next, we put the laptop under the measurement table, and then its measured emission got just below the red line. But when we added a shielded USB cable, even with the ferrite on the host end, it went just above the limit. This is clearly not ideal, but this is the best we could do on the spot. The measurements are still useful, and we’ll use a better laptop next time.

In this setup, the UHK was on the table, which is the center of measurement towards which the antenna points. Being under the table, the laptop didn’t affect the measurements so much. Next time, we’ll probably use a 5-meter-long USB cable and put the laptop as far as possible.

Around the end of the measurement, the OS shut down because the battery was so low. We could still use the laptop without the OS running, but both the low battery state and the fact that no OS was running might have affected the last four measurements. The lesson here is obvious: Power the laptop from a damn charger! And on that note, we’ll probably put the charger as far from the center of the measurement as possible, too, and use an extension cord to power it.

As for the actual UHK measurements, the results are very promising. The measurements of the 2-layer PCB were no more than 4 dB above the limit and no more than 7 dB above the limit with the 4-layer PCB. This is very promising compared to the first round of measurements for which even 16 and 18 dB above-the-limit values were measured.

Endre has a concrete plan regarding the redesign of the PCBs. He’d like to add a common mode choke and ferrite beads at strategic places, and István is ready to redesign the boards accordingly.

In addition to the changes mentioned above, I plan to implement a number of firmware test features so that we’ll be able to narrow down the cause of various spikes. I think of features like disabling I2C / USB / backlighting and adjusting the clock speed of the MCU with dedicated keys on the keyboard.

I think that with all the above test procedures, test modes, and redesigns in place, we shall defeat the EMC issues with the next prototype, which should be ready in a month.

Due to the EMC hurdles, we must delay delivery by a month. This is frustrating but very much necessary to make the UHK happen. We’re working as hard as we can to hit it soon.

In our true style, we’ll be keeping you up-to-date in our weekly social media updates and monthly newsletters. Thank you for tuning in, and talk to you on 2017-04-13.

The first sample batch and EMC test

Happy New Year, everybody! This is the most recent installment of UHKzine - your authentic, monthly news source on all things UHK. In this update, there’s good news (production is moving along nicely), bad news (we need to delay delivery by two months to April 2017 in order to fix electrical noise so the UHK can pass FCC and CE certification), and more good news (we’re already vetting some great candidates to fix our PCB design in order to reduce the electrical noise).

The first sample PCB batch

We visited our PCBA contract manufacturer to prepare for mass production. They wanted to assemble five boards, so that we can get a good grip on the process, create jigs, and optimize for manufacturing as much as possible.

First, we figured out how to solder the switches and plates to the board in the most productive manner.

After discussing the surface mount part, we talked about through hole assembly. The panels will go into the following jig.

And the jig will go into the selective wave soldering machine, soldering the leads of through-hole components, mostly the keyswitches.

Some time after the meeting, they sent us a couple of pictures of the assembly process.

UHK panel in the pick and place machine

SMT-assembled panel

Soldering the switches

After finishing with the first sample batch, our contractor has followed up with some suggestions to further improve the PCB design for manufacturing. These were very minor improvements. Things are looking good in this department.

New case and plate samples

We’ve got a couple of new case and plate samples from our contractor.

Bottom case parts and plates

Top and bottom case parts and plates

The new plates are extremely accurate and fully ready for production. The cases are close to perfect, but still have some sink marks.

Top sink marks

Side sink marks

We’re about to use the mold with a more capable injection molding machine, which may make these sink marks disappear. If not, we’ll modify the mold further.

Parts are flowing in

We’re in the process of ordering every part from all around the world. Some recent ones:

Threaded inserts

Dowel pins for the male guides

USB velcro ties

We’ll be keeping you posted on the new items as they arrive.

Measure the force, Luke

The splitting / merging of the keyboard halves is a central part of the UHK user experience. This experience is very much dependent on the force the magnets exert. Although we have an intuitive feeling regarding the optimal amount force, being engineers, we want to be able to measure it, and make sure that it’s consistent across the keyboard halves, and across a keyboard half and module. This has justified having a force gauge.

The measurements will give us a good idea about the strength of the magnets and how to choose the material of the magnets’ counterparts. We’re only a couple of days away from starting the production of the counterparts, and ordering the magnets.

EMC testing

EMC stands for electromagnetic compatibility, and such tests basically make sure that electronic devices do not interfere with each other. Because, believe it or not, people expect their phones to work when the microwave is on. You get the idea.

The UHK is no microwave, but in order to be allowed to be sold worldwide, we have to stick FCC and CE logos onto its back. And in order to be entitled to use these logos, the UHK must pass standard EMC tests.

This made us visit the EMC lab of T-Network to measure the electromagnetic emission of the latest UHK prototype. T-Network is a logical first step because their measurements are fairly affordable unlike the final measurements and certification at TÜV which is an order of magnitude more expensive. We better get this right because if not, we’ll have to pay big bucks to TÜV upon every subsequent try.

After walking into their building, making a few turns, and finding the right door of the long corridor, it wasn’t hard to notice that we arrived to the right place.

When opening the inner door of the lab, the SAR, or semianechoic room gets revealed. This is where the actual measurements take place.

In this setup, the UHK is plugged into a laptop and sits on a table, measured by the scary bigass antenna in the corner. Let’s take a closer look at it.

On this image, the antenna is oriented horizontally, and it stands in its lowest position, but it can rise way, way up.

During a measurement session, the antenna rises 4 meters upwards, then rotates its head vertically, and also does measurements that way. The result of the measurement is a graph.

This one has failed

The goal is to stay below the red line which we only achieved once out of 15 measurements: when the UHK was powered from a USB power bank, and hence it only received power and USB communication was inactive.

Success!

So according to the measurements, we have a good reason to believe that the USB circuitry of the PCB is not routed optimally. Even though I couldn’t foresee this, it’s not all that surprising because I routed the PCB using some external help, and I’m not an electrical engineer.

I’ve been told that failing the first test is pretty usual, and we shouldn’t be overly worried. In any case, it’s apparent that the time has come for me to resign as a self-taught PCB designer, and hand over the redesign of the PCB to a professional. As a matter of fact, I may have already found the right person. More on him in the next update.

As a last word of this section, I’d like to sincerely thank Robi for helping so much in the lab. His help was critical to figure out the exact problem.

Introducing our new contributor

Free and Open Source software is known for attracting numerous contributions, and we’ve been fortunate enough to receive our fair share. Which brings me to Gergely, who is the king of the hill when it comes to keyboard firmwares.

My name is Gergely Nagy (or algernon, for those who don't speak Hungarian), and I'm a jack-of-all-trades kind of free software zealot. I first came across the UHK in late 2014 when I was looking for a new keyboard. Since that time, I ended up contributing to QMK (the firmware that powers my current keyboard), KeyboardioFirmware (which will power my next keyboard), and I couldn't help but contribute to UHK's firmware too, which will power my mother's next keyboard. I may have developed a thing for keyboard firmware, much to my wife's regret. My current focus is parsing the config sent by Agent, and teaching the firmware to apply that at run-time. ...and whatever else I can find the time for.

To this day, Gergely has been working on three entirely different keyboard firmwares, which unquestionably makes him one of the most knowledgeable contributors we can ever wish for. He’s been hard at work with the UHK firmware, and ended up implementing loads of features, including mouse keys and, most importantly, a significant chunk of the configuration parser. And it looks like he still hasn’t had enough!

Our deepest gratitude, and a UHK with all the bells and whistles goes to Gergely!

At the same time, Jozsi was working on Agent, making it able to transfer the selected layer to the UHK via USB. Seeing the configuration getting effortlessly updated in a blink of an eye via USB is magical. It’s very nice that all of our hard work pays off.

Expected delivery schedule

We keep making rapid progress and most things proceed according to our schedule, but not everything. The EMC issue is something we couldn’t foresee, and the PCB redesign will affect our delivery schedule.

We’ll try to reduce the delay as much as possible. Recently, I’ve made contact with expert PCB designers to resolve these issues as quickly as possible. I’ll meet all of them within days, and wrap this up as quickly as we can.

According to the above, we are moving the release schedule of the UHK and palm rest to the end of April. We wish we could do it sooner, but as a startup, we are destined to go through these hoops, and learn things the hard way. After releasing the first UHK model, creating further products is going to be so much easier!

As always, we will be keeping you updated on a monthly basis in our newsletter/blog, and on a weekly basis on social media. Should you have any questions, you’re always welcome to reach us.

Thank you for your continued support, and we’re excited to talk to you on 2017-02-16.

Title