Hi Linux users of the JD 45 keyboard.
This is a summary of how to (re)program the firmware of the JD45 keyboard with Linux. This information is maybe found elsewhere, however I didn't find a complete guide and it cost me some search, trial and error, so maybe you enjoy having this information compiled here. My keyboard came from this group buy and was delivered about a week ago. I like it a lot. Thanx JD.
JD45 Linux (re)programming guide:Tested with Debian, will most probably also work with Ubuntu and similar.
Step 1: Install python with
sudo apt-get install pythonStep 2: Download EasyAVR (Info found at
https://deskthority.net/wiki/Easy_AVR_USB_Keyboard_Firmware).
wget -O easyavr.zip https://codeload.github.com/dhowland/EasyAVR/zip/masterStep 3: Unpack and adjust Easy AVR
unzip easyavr.zip # Creates a Directory ./EasyAVR-master cd EasyAVR-master chmod u+x easykeymap.shStep 4: Call Easy AVR
./easeykeymap.shStep 5: Generate a new default keymap
File -> New Default Layout -> JD45 (Carpe Keyboards) [ <All Keys> ]Step 6: Edit your keymap; Help is found in the "Help" Menu of EasyAVR
Step 7: Build the firmware from it:
File -> Build Firmware -> "mynewfirmware.hex"Step 7: Install dfu-programmer:
sudo apt-get install dfu-programmerStep 9: Connect your JD45 keyboard to your computer and press the little button at the buttom while it is connected. You will see something like
... usb 1-4: New USB device found, idVendor=03eb, idProduct=2ff4
... usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
... usb 1-4: Product: ATm32U4DFU
... usb 1-4: Manufacturer: ATMEL
... usb 1-4: SerialNumber: 1.0.0 in your syslog.
Step 8: Erase and upload
sudo dfu-programmer atmega32u4 erase --debug 5 sudo dfu-programmer atmega32u4 flash mynewfirmware.hex --debug 5Step 9: Disconnect and reconnect your JD45 keyboard. It will work with the new layout now.
Note 1: Please adapt file names to your needs.
Note 2: The default firmware at your board is lost. I did not find a way to save it.
dfu-programmer dump did not work.
Note 3: The firmware offered at
http://jd45.info/ is NOT identical with the firmware preinstalled at the keyboard. However it works fine also. The preinstalled firmware is really lost. As I didn't really like it, this was no problem for me.
Note 4: I didn't need FLIP or Teensy that are mentioned in most other guides. I couldn't install them anyway.
Hope this works for you. Thanx in advance for comments. Enjoy. Many greetings.