I just got a Pegasus Hoof and a Filco Majestouch 2 TKL HAKUA. The main purpose was to get a quiet TKL and use the Pegasus Hoof to reprogram the left Windows key as a FN key with FN+WASD as arrow keys. I find this extremely helpful for doing one handed selects of blocks of text. While this is actually a fairly simple process once you get through it, I had issues with Java, and with switching the Pegasus Hoof into Boot Loader mode, so I thought I'd share some detailed instructions that incorporate my experience, with hopes of saving other a few hours (or days in my case
)
First, you're going to need the Easy AVR Software here to create keyboard maps and the hex file you will use to program the keyboard:
https://geekhack.org/index.php?topic=51252.0Second, you need Atmel Flip to clear and flash the Arduino atmega32u2 chip on the Pegasus Hoof
http://www.atmel.com/tools/flip.aspx***SKIP IF YOU HAVE NO PROBLEMS INSTALLING FLIP AND JAVA****
My problems started with the Atmel FLIP install and JAVA, as I'm running Windows Server 2016 (which, for the purposes of these instructions, should be the same as Windows 10). I recommend downloading the FLIP 3.4.7 with Java Runtime Enviornment included, as JRE 5.0 (e.g. 1_5_0_xx) is long since deprecated and somewhat difficult to find. I kept getting errors during the install, although I forget the exact message. I think I updated the PATH, TEMP, and TMP User variables (under System -> Advanced Variables -> Environment Variables) to reference C:\Temp (instead of %USERPROFILEPATH%), just to get the actual jre_setup.exe file to extract to C:\temp before it would even launch the installer. I think the installer still would not complete, so while the installer was in process (frozen with an error on screen), I went to C:\temp, copied th jre_setup.exe file out of there, then cancelled the bad install. I went back to the jre_setup.exe file, then did a right-click -> Run as Administrator, and installed it for all users...at this point, with Java installed, I was able to install Atmel Flip (although I my have installed the version that did NOT include Java at this point, I forget)...
******************
At this point you want Easy AVR and ATMEL FLIP installed. Then:
1. Create your custom layout and HEX file (for loading onto the Pegasus Hoof) in Easy AVR
2. [Presumably] disconnect the keyboard if it's plugged, in, remove the cover (LEAVE COVER OFF), and replace the stock Filco controller with the Pegasus hoof, per standard instructions (such as those found on the 1upkeyboards Pegasus Hoof page)
3. Plug the keyboard back in and it should be working fine
4. When you're ready to flash it, you need a decently strong magnet and it helps to remove the UP arrow key. I tried to using a magnet on the bottom of a magnetic level; this was awkward and the UP arrow was getting in the way. A small refrigerator magnet should do the trick
5. ***WARNING*** - your keyboard will stop responding in this step, so have a second one plugged in if you still want to type -
Place the magnet on the Pegasus Hoof and you should here a USB disconnect and reconnect sound. If not, in my case, I had to place the magnet directly on the lower left side of the Pegasus Hoof, over where it has a Q.C. PASSED stamp (as this is the stamp, it's possible it could change locations on the controller). If you want to confirm you're ready to flash, look in the Device Manager, and you should now see a section called Atmel USB Devices, with ATmega32U2 nested beneath it..
6. Open Atmel Flip, click on the Device menu and choose Select. Find the ATmega32U2 and click OK (note the ATmega32u2 is the current Arduino chip for the Pegasus Hoof as of December 2017 and is subject to change)
7. Click the 'Select a Communication Device' icon (looks like a usb plug), and select USB. If you get an error mentioning AtLibUSBDfu.dll Not Found, it is most likely because you did not switch the controller into boot loader mode with the magnet; this is where I had issues and could have used more clarity per step 5. While researching this, I also ran across people who appeared to have problems because the correct driver as not loaded for the ATmega32u2. If the ATmega32u2 is in present in the Device Manager and you're getting the ATlibUSBDfu.dll error, try manually updating the driver, and pointing it beneath the Atmel install folder: 'C:\Program Files (x86)\Atmel\Flip 3.4.7\usb' (more specifically, you need the atmel_usb_dfu_inf file).
8. Assuming you either had no errors in #7 or resolved it, click the Erase Target Device Memory Icon. Once the memory is erased (just a few seconds), click File -> Load Hex File, and browse to the Hex file you created using Easy AVR. After you've selected it, click the Program Target Device Memory button. Programming should just take a couple of seconds, and, once it's complete, unplug the keyboard and plug it back in. The keyboard should be functioning and programming complete
Hope this helps some of you out...I'll probably post something similar in the Easy AVR thread.