The mold design is almost finished

This is a beautiful day, as it marks our 5th post-campaign update, just as scheduled. Let's get right to it!

Our Serbian contractor is hard at work. So much so that they're almost ready with the design of the mold. We thought you'd appreciate a couple of CAD images, so here they are.

The mold for the top-left keyboard half

The mold for the top-left keyboard half

The mold for the bottom-left keyboard half

The mold for the bottom-left keyboard half

The mold for the case buttons

The mold for the case buttons

So far so good! They're pretty close to starting the actual manufacturing of the molds. We're visiting them in Serbia this weekend to discuss the last details of the molds before getting them manufactured.

Expect real life photos of hunks of steel in future updates.

Mechanically testing the 6th generation prototype

Due to the nature of mold making, it's critical to get everything from the beginning, because it's hard to go back. And what better way to test the design than to build an up-to-date prototype?

András has made some final changes to the case to make it accommodate Matias switches, not just Cherries. This 3D printed case has the same design as the mass-produced injection molded case will - apart from the vast difference in quality because 3D printing vs injection molded plastic are worlds apart in terms of quality and accuracy.

6th generation UHK case prototype, top view

6th generation UHK case prototype, top view

6th generation UHK case prototype, close view

6th generation UHK case prototype, close view

In the meantime, I've been busy updating our PCBs to correspondwith the new mechanical CAD files. The shape of the PCB should now be finalized, (including the positions of the mechanical components), but the electronics routing has yet to be fully redesigned. Let's see the fruits of my labor.

The panelized PCB

The panelized PCB

Once the PCBs are depanelized, and some components soldered in, it starts to resemble the UHK much closely.

The depanelized PCBs with all the mechanical components (but the switches) soldered in

The depanelized PCBs with all the mechanical components (but the switches) soldered in

I’m especially pleased with the way the pogo pin connector turned out. This connector has a crucial role in interconnecting the keyboard halves with the modules. The new solution features 2.5mm-thick PCBs perpendicularly soldered onto the main PCBs. Pogo pins are stuck through the male PCB, and flat pads are featured on its female counterpart. The new design is a lot more robust and pleasing to the eye than the previous battery spring connector.

The male and female pogo pin connectors

The male and female pogo pin connectors

This mechanical PCB is useful without the electronics because it allows for mechanical testing. The schematic is being updated from AVR to the Kinetis platform, and as soon as it gets done, the PCB will be rerouted, fabricated, and tested.

We have almost finished creating a Cherry and a Matias mechanical UHK prototype, but we're waiting for the new metal plates to arrive to finish them off.

Our GitHub repos are on fire

Since our previous status update, a whopping 222 commits have landed in our GitHub repos! Now that's what I call true teamwork! This leads me to some much deserved words on our newest contributor!

Let me introduce Mr. Samuel Rang!

SamHello everyone!

I'm Sam Rang, and I've been helping out with the serialization and deserialization of configuration files for Agent. I am a graduate of Duke Engineering with a degree in Computer Science and Electrical & Computer Engineering, and work for Red Hat Consulting. I am a big mech keyboard nut (much to my fiance's chagrin) and was really excited when I heard about this project and that excitement is still going strong! I'm so glad that the team has let me in and I'll keep contributing as long as they let me.

Sam got in touch with us about a month ago. He asked me what could he contribute. It was quite a challenging question because Agent is in heavy flux at this point, and isolating a discrete part that can be worked on is far from trivial. But I found something: the configuration serializer.

That's why I was working so heavily on the serializer a month before: to lay down its foundation and hand it off to Sam. And boy, did he deliver! He went berserk and ended up implementing all the 37 classes to be serialized.

Sam is still working on Agent a bit, then he'll put on his firmware hacker hat, and implement the configurator deserializer of the firmware. What a journey it will be!

In the meantime, Józsi is on a mission to put the Angular 2 application logic behind Agent, making it not only beautiful, but also functional. At this pace, you'll be able to get stuff done with Agent by the next month.

Árpi is continuing to refine the frontend of Agent until perfection is attained. He's pretty close to finishing the keymap editor, and then he'll transition to other parts of Agent. He's just pushed the latest and greatest version of Agent to GitHub Pages, so be sure to take a look at it!

And that's it, Ladies and Gents! Excited to talk to you again on 2016-06-16!

Manufacturing has begun, but delivery is slightly delayed

In our true style, it’s time for our monthly update! We have a bit of good news, and one bad bit. Let’s start with the bad news to get over with it quickly.

A 2 month delay is introduced, thanks to international banking issues

Angry piggy bank

One would think that orchestrating a successful crowdfunding campaign would be the hard part, and transferring money would be a walk in the park. Usually, this is the case, but apparently sometimes it’s the other way around.

We initiated the first transfer back in January, expecting it to go smoothly and quickly. Boy, nobody could foresee what was about to happen! Fast forward two months and several transfer attempts, and some finally made it through. Now our cash flow is back to normal, But we’ve all got a few more gray hairs.

We don’t want to go into details this time, and rather wouldn’t name call anybody, because it’s not totally clear yet who’s fault this incident was. But you can be sure that as soon as we figure it out, we’ll publish a writeup about all the details. Because no startup - and its backers - should be ever put into such a situation!

Admittedly, this changes the delivery date from July 2016 to September 2016. We’re very sorry, and apologize for this extra delay. We want to assure you that everything is back to normal, and the project is on track. You can always expect us to be honest, and upfront regarding project happenings, even if things don’t go exactly as planned.

Onto the good news!

Manufacturing has begun

Manufacturing

Now that our cash flow is back to normal, we transferred the prepayment fee to the mold making company, and they put things into motion. They are starting off with the sheet metal cutting die, which will cut the steel plates for the UHK on which the key switches reside.

András is in direct contact with the mold making firm, and knows them personally. This, and the fact that everyone is so concerned about the details gives us great confidence that things will go very smoothly.

The preparation of the tooling will take some time, but eventually raw metal will take shape, and we’re looking forward to share our adventure with you as it unfolds.

The configuration serializer of Agent

JSON configuration fragment

As far as I know, the configuration of the UHK is the most complex of any keyboard ever created. It features hundreds to thousands of objects of various types, arranged into a deep hierarchy, serialized across various representations that suit different scenarios.

That’s why it’s important to develop a robust, and extensible configuration serializer to deal with this complexity. I’ve laid the groundwork of the serializer, and it’s already able to serialize a subtree of the configuration. But given my myriad of responsibilities I won’t be the one who will finish it, which brings us the our next point.

Our team is growing!

We’re glad to announce that a new developer has joined to our team, so let him introduce himself:

jozsi

[raw]
[/raw]

Hello Everyone!

My name is József Farkas. I graduated from the University of Szeged last year as a Computer Scientist. Currently, I work at CAS Software Ltd. in the research/web team. I’m interested in Angular 2, ReactJS and TypeScript. But I’m also a big fan of C++.

I joined the UHK team last week and I’m working part-time on Agent, porting it to Angular 2, and implementing further features.

Józsi is a left-brain dominant person, who’s especially good at writing solid application logic. Árpi however is a right-brainer who excels at creative thinking, and designing UI and UX. I think they complement each other perfectly and I’m super excited to have them on board!

Beyond 300K

300K USD

Since our previous update, total campaign funding passed $300K. As a matter of fact, it’s at $309,640K right now. Thank you so much for your continued support!

This concludes our April update, folks. Talk to you on 2016-05-19!

3rd UHK post-campaign update: The new firmware is in great shape!

Two months ago we announced that we’ll be moving to a much more powerful ARM processor instead of the AVR - and one month ago we said that we’ll be using an even powerful one. Moving to a new processor architecture is a big deal, especially with a short amount of time - but we were able to make it happen without hurting the project schedule.

We’ve been working heavily on the new firmware lately, and we’re happy to let you know that it’s paid off big time! This is how the left side of my desk looks:

FRDM dev boards and Logic Sniffer

The rightmost FRDM-K22F board contains the insanely powerful MK22FN512VLH12 processor and runs the firmware of the right keyboard half. It shows up as a fully-fledged USB device, implementing a keyboard interface, a mouse interface, and a generic HID interface. This means that it can act as a keyboard, as a mouse and it’s also able to communicate with the host computer (to transfer configuration data, etc). As proof of this, a button on this board makes it send the scancode of the letter “a” to the host computer, another button scrolls with the mouse downwards, and a script that I’ve written makes the RGB LED display any color.

The middle FRDM-KL03Z board acts as the left keyboard half, and it communicates via the right half via the I2C protocol. A button on this board moves the mouse pointer leftwards, and another button moves it rightwards.

The leftmost board is an Open Bench Logic Sniffer which sniffs the communication of the aforementioned boards, so that the firmware can be debugged more easily.

Want to watch a half minute video of how it works? Pop that corn, then enjoy the view!

Working on the new firmware is a labor of love. Being an advocate and practitioner of clean code, I’ve made sure that it’s not merely working, but supremely readable. There’s a lot of code to be added, but it should be easily hackable by the UHK owner.

Progress on Agent

Agent macro view

Arpi has been giving Agent some love. Now you can switch between keymaps in the side menu and change to the macro view interface. This is still considered to be a mockup, but more and more things are working, so you’re welcome to click around!

The UHK in the Wild

Our most beautiful master prototype is truly a word traveller. It’s been in San Francisco and New York to be seen by the media and you at getgeeked, then travelled to Moscow, only to arrive to Singapore to be featured at Hackware v1.2, then went back to Hungary, had a trip to Spain for a testing session, and recently landed in DevConf in Johannesburg!

DevConf

A UHK was given away by DevConf to a speaker and an attendee, and they liked our prototype so much that they’re in the process of purchasing a 10-pack.

Our sincerest thanks go to Mark Pearl, organizer of DevConf, who got in touch with us, and helped to make this happen!

What’s Next?

The firmware has progressed so far, it’s now time to redesign the PCBs to feature the new processors instead of the old AVRs. There’s also a lot in the works on the mechanical design front, so stay tuned.

Talk to you on 2016-04-14!

2nd UHK post-campaign update: PCB design now supports LEDs and Matias switches

Time flies! We promised to touch base every month - so let’s get right into what we’ve been working on!

The mechanical design is being sent to manufacturing

András has been having his fair share of CAD-filled days lately, and as a result we’re days away from sending the design of the case off to manufacturing. He’s made a million little tweaks and a couple of more significant changes.

Foot design - adjustability and portability

The fixation mechanism of the feet is definitely a major one. We brainstormed foot design ideas for a while, and finally found the best option. To keep the UHK as compact as possible, it will feature adjustable (flip open) feet that are entirely removable in addition to the small, flat rubber feet. This way if you decide not to use the adjustable feet, they won’t occupy any extra space. And if you do want them, they can be easily installed with 3 screws per foot. Once you do, you’re able to flip them open in a moment. The current design allows for positive tiling, negative tilting, and tenting - The best of every world! András has yet to finish the design of the adjustable feet so stay tuned for more news.

8 feet in total, 3 mounting holes around individual rubber feet
8 feet in total, 3 mounting holes around individual rubber feet
Mounting bosses - 3 per foot, as seen from inside the case
Mounting bosses - 3 per foot, as seen from inside the case

PCB design - LEDs and Matias switches

We’re also stoked about having added pins for LEDs and Matias switches! We use universal switch footprints that combine the pins of Cherry switches (optionally with fixation pins), Matias switches, and LEDs. We designed the stiffening ribs of the bottom case in a future proof manner by routing them around the hybrid switch footprints to avoid mechanical interference. Please note that we won’t be able provide either an LED, or a Matias UHK version for a while, but the opportunity will be there for modders. You can see the pins on the following section view.

Back section view

Physical layout - finalized

Another major change is the finalization of the physical layout. Fear not, you shouldn’t even notice the subtleties if you aren’t watching very closely. Space and Mod has been split right where the G and H keys meet. This is the best option ergonomically, as it’s right between the hands of touch typists. This gave us an opportunity to use more standard keycaps so those of you who want to replace keycaps will be in a better situation. Lo and behold, our final ANSI physical layout:

UHK ANSI layout

And the ISO version:

UHK ISO layout

Funny thing is, poor András has been working day and night to implement this seemingly small change, as it affected the geometry of the CAD model in major ways. He definitely deserves a day off... only to work even harder as we march towards manufacturing!

Speaking of the above, I’ve created a dedicated layouts and keycaps FAQ page on our site lately, and while being there also spruced up the main FAQ quite a bit to satisfy your endless curiosity.

The state of the ARM port

In our previous update we were looking for a firmware developer to port our existing firmware to NXP’s Kinetis platform and develop it further. We’ve been getting quite a few impressive applications and suggestions.

Say hi to Mr. Jan Rychter, who has been eager to help us, and offer his very valuable advice. Since first contact we’ve been exchanging emails full of geek talk. And did I mention that he’s also a most esteemed backer of the UHK?

Jan got me up to speed in no time. As it turned out, Teensyduino is not the best foundation for a serious firmware application. It’s nice for prototyping purposes but NXP’s sophisticated Kinetis SDK is a much better platform for this purpose.

Unfortunately, the MK20DX256VLH7 processor that we originally planned to use is not a good choice because KSDK won’t ever target it. As crazy as it might seem, there’s a more powerful, fully supported, and cheaper alternative on the market: the MK22FN512VLH12.

How powerful and cheap, you ask? Let’s compare!

Processor name ATmega32U4 MK20DX256VLH7 MK22FN512VLH12
Processor core AVR8 ARM Cortex-M4 ARM Cortex-M4
Rated speed 16 72 120 Mhz
Flash memory 32 256 512 kbytes
RAM 2.5 64 128 kbytes
Price 3.6 4.55 4.04 US Dollars

Mind blown. Twice the power for less price? I’ll take that on any day of the week!

Right now, there are a couple FRDM development boards on my table, one of which running our Kinetis firmware port which enumerates as a keyboard + mouse USB device. This is already looking great, and you can expect further major progress shortly, so the port is definitely within reach, and I’m happy taking this direction.

Agent is coming along nicely

Árpi is on a mission to make Agent the most beautiful keyboard configurator application ever crafted. He never ceases to amaze me as he massively cleans up the UI of my original mockup while keeping the original functionality intact. This is the most up-to-date screenshot of Agent:

Agent with final side menu

You’re welcome to check out Agent in the browser. Please note that there’s only a minimal UX code behind the UI, but it should give you a good idea about the final interface.

Thanks for reading, and talk to you on 2016-03-17!

Agent is coming together, looking for a firmware developer!

A month ago in our previous newsletter we promised to send you an update on the post-campaign happenings on January 14th, so here it is! There is a lot of ground to cover, so fasten your seatbelts and we’ll get right to it!

Extra keyboard cases & keycap sets are for sale

UHK cases

Some of you contacted us to purchase extra keycap sets and cases, and we’ve been very much willing to serve your needs, so why not offer them as extra perks? You’re welcome to purchase them on our campaign page.

Meet Agent, the configuration application for the UHK

UHK Agent main window

We’re proud to show you the first screenshot of Agent, our cross-platform configuration application. It’s being developed by Árpi, a new developer of ours. Please keep reading for more.

The mechanical design is being finalized

András is hard at work finalizing the mechanical design of the keyboard case. Mold making is by far the most time consuming task of the manufacturing process, so it’s supremely important we start as quickly as possible in order to deliver on time.

We’ve already struck a deal with the manufacturing firm for the injection molding tool for the plastic case and the cutting tool for the steel plates, and we’re in the process of discussing relevant design issues with them. Sourcing of the raw material for the steel guides is also in progress - from a well-esteemed Austrian company.

From the very beginning, we’ve been mindful to design the UHK for manufacturing, but there are some details yet to be finalized. One such detail is the connection between the two halves and the modules.

pogo-pins

Originally, we used a battery connector because it was easier to use an off-the-shelf part - but later we figured out a much better way: dedicated pogo pins. This is a more robust and better looking solution than the battery connector. The 6P4C connector was also replaced by a 4P4C connector and its wiring has been reversed. This way a standard telephone cable can be used to interconnect the two keyboard halves.

There are a couple of details like the above, and András is rapidly moving forward to address them, so that we can submit the CAD files to manufacturing as soon as possible.

Two developers have joined to our ranks

Árpi

Back in August we were contacted by Árpád Csányi, who expressed interest in the UHK. Fast-forward to November, and we managed to meet in person over a couple of beers after I gave a talk on the UHK in Szeged, Hungary. It was apparent that he was interested in the project, but I wouldn’t have thought in my wildest dreams that he’d end up being the front-end developer of Agent, our configuration application! Árpi is not only a powerhouse of UI/UX ideas, but he’s very much willing and able to implement them.

After I created some mockups of Agent he quickly followed up to present his ideas and improvements. He then started to write HTML and CSS to make the mockups go alive! We’re making rapid progress and are aiming to freeze the UI/UX specification of Agent by the end of January.

Please note that these mockups are a work in progress but you’re welcome to add your suggestions to the docs. Don’t forget to uncheck the View -> Print layout option in Google Docs or else some pictures will be cropped.

Spencer

Right after open-sourcing our design a, mysterious GitHub user started contributing to our electronics repo. Say hi to Mr. Spencer Owen, who is very much into devops and using his rad skills, he set up a visual diff mechanism in our electronics repo, so that now we can actually see the changes of the circuit boards that get modified by contributors. This is very much needed because unlike plaintext files, circuit boards can’t be diffed in the traditional way.

Right now Spencer is working on making the PCB compatible with Matias switches. Due to the lack of compatible keycaps, this doesn’t mean that we’ll be able to provide Matias switches from the get go, but we’re trying to future-proof the PCB so that the opportunity will be there, and eventually we can make it happen.

Moving to ARM, and looking for a firmware developer

It’s been a pleasure and privilege to work with Árpi and Spencer and I’m very much looking forward to further expand our team. It may surprise you, but we’re not actually primarily looking for an AVR developer. We’re looking for an ARM Cortex-M4 developer! Why’s that? Let’s consider the following table:

Processor name ATmega32U4 MK20DX256VLH7 Units
Processor core AVR8 ARM Cortex-M4
Rated speed 16 72 Mhz
Flash memory 32 256 kbytes
RAM 2.5 64 kbytes
Price 3.6 4.55 US Dollars

The above numbers are pretty telling. The ARM processor costs only a buck more than the AVR but it’s about 10 times more powerful! The plan is to replace the AVR on the right keyboard half with ARM, and keep using AVRs in the left keyboard half and in the modules - which don’t need as many resources as the right half.

We could possibly stick to the ATmega32U4 and implement the planned feature set, but the available 2.5 RAM is very tight. It’d require us to always think about how to not exceed memory and vastly optimize the firmware for memory consumption. This would slow down development and wouldn’t give us room to implement more sophisticated features later on. Bulkier AVRs are moderately more powerful and considerably more expensive, so I truly believe that ARM is the way forward.

It’s also very important to note that the MK20DX256VLH7 is not just another ARM microcontroller, but the brain of the Teensy 3.1 and 3.2 development boards. This is great news because there’s a huge amount of support available out there!

Are you familiar with the Teensy 3 platform, or do you know somebody who is? Do you enjoy the thrill of Open Source? Would you love to work on a one-of-a-kind mechanical keyboard, and help push innovation further? If so, we’d love to have you on our team!

What’s next?

We’re making rapid progress on multiple fronts, but there’s still a lot to do! We plan to finalize the UI/UX specification of Agent by the end of January. I’m sure that we’ll have a lot to talk about in our upcoming updates.

Thanks for reading, and talk to you soon - on February 18th!

123% Funded! Now the real work begins.

After 2 months of running the campaign, it came to an end on Monday with $246,510 raised - What a crazy ride it has been!

123% funded

As it turns out, you’re super smart folks and gave us loads of awesome feedback. This is very valuable because it will make the UHK better. Much appreciated, everybody!

Preorders are available

Even though the campaign is over, it doesn’t mean that people won’t be able to purchase UHKs! We’ve just entered into the pre-order phase. The current deals are still very good compared to our final retail price that will come into effect after shipping the crowdfunding orders, so you’re welcome to spread the word about this opportunity while it’s available.

Choose your case color

For those of you who ordered before colored cases became available, now is the time to make your choice! If you’d like a black case, there’s no need to do anything. If you’d like a different color, you can change it via this poll.

Going forward

András and I are finally be able to put our engineer hats on. We’ll have to further refine the design to make it ready for manufacturing, then get the tooling done and actually manufacture the goods.

András will be busy with the mechanical design, dealing with manufacturers and personally overseeing the mold making process. I’ll have to focus on the electronics, firmware and host-side software. But rather than implementing everything alone, I’m more than willing to delegate - possibly to you! I’ll talk more about this in our upcoming update.

Speaking of updates, from this point on we’ll be sending out monthly updates on our progress around the middle of each month. The next update will go out on 2016-01-14.

Exciting times ahead!

Just 30 hours to go! Announcing the 2nd stretch goal!

4 colored UHKs

Great news, everybody! We’ve just reached, then surpassed $230,000, so the 1st Stretch Goal is now funded!

Here is the result of the color poll. Given the level of interest, we decided to offer the top 4 options, and black for purchase versus the originally promised 3 options. Colors galore!

Top 4 case colors poll

We’ll ask you about your preferred color after the campaign.

2nd Stretch Goal: Free UHK Toolkit

We’ve been thinking for a while of offering something that is very dear to our heart: a toolkit. The UHK is designed to be hacked, and so this toolkit is perfectly aligned with our philosophy, enabling you to tear down your beloved keyboard in no time. We will give a FREE toolkit to everybody who pledged towards the keyboard once we hit $250,000. So let’s make it happen!

Toolkit

Special deals are running out

Just 30 hours to go, and this is your last chance to save $50 and get the UHK at Special Early Bird pricing of just $200!

If you don’t have enough funds right now, You can get a $50 coupon and with this coupon you will be able to order the UHK anytime after release at the same Early Bird price of just $200!

Colored cases poll results

We did a poll recently about additional colors for the UHK case. Here are the results so far:

Case color poll results

Thank you for your feedback!

This poll will be closed by the end of the campaign, so please vote while it's possible.

Extra case colors on the horizon!

Now that we have reached our goal what’s next?

Colored cases! If the funding amount reaches $230,000, we’ll make more case colour options available. And these cases are molded out of colored plastic, so there’s no paint to peel off. Take the poll below, and help us choose which colors should be available - we’re super excited to hear your preferences.

8 colored case options

Let the voting begin! You can take a look at the high resolution versions of the following images on Dropbox.

The UHK got funded, goes open source!

100% funded

A while back, the Ultimate Hacking Keyboard was nothing more than a dream of mine. Back then, I had to work on other projects to sustain myself, so I could have easily forgotten about it.

But I couldn’t for some special reason, it felt way too important. Because I couldn’t get the keyboard out of my head, I eventually managed to persuade my high-school friend András Völgyi, mechanical engineer extraordinaire, to help make it happen, and gathered a small team of experts.

Over time, we’ve put our heart and soul into the project and made huge progress. But we’re a small team and this challenge asked for much more. Way before the campaign, I knew that we have a secret weapon to success:

You!

On 2015-12-06, you made the Ultimate Hacking Keyboard reach, and then surpass, the $200,000 funding goal!

Clapping

You are the reason why the UHK exists. It’s people like you who push things further, enable innovation, and help make cool products happen. So let me express my deepest gratitude, and let’s give a huge round of applause to you - because you deserve it big time!

Use the source, Luke!

The UHK was never meant to be a black box. It’s very important for us to open up the design so that you can infinitely customize it to your needs. We know that this mindset pushes innovation forward and it resonates with many of you.

As promised, we’ve just published the electronics design files, the firmware and Agent, our configurator application on GitHub! It’s free as in Freedom, the way it should be!

Open source

Our prototypes are already rock solid but many small tweaks will be made to the design in order to optimize it for manufacturing, and you’ll be able to see every small change on GitHub right as they happen. I’ll also clean up the repos shortly and add some documentation to make them easier to hack on.

Title