86 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			86 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # Pearl 40%
 | |
| 
 | |
| Pearl 40% is a keyboard designed by Koobaczech. It uses an Atmel
 | |
| ATMEGA32A MCU.
 | |
| 
 | |
| ## Compiling and flashing
 | |
| 
 | |
| These instructions are for building and flashing your Pearl 40% without
 | |
| Bootmapper Client.
 | |
| 
 | |
| ### Requirements
 | |
| 
 | |
| #### Windows
 | |
| 
 | |
| (to be written, help needed)
 | |
| 
 | |
| #### Mac
 | |
| 
 | |
| Apart from regular QMK and AVR dependencies you need to install
 | |
| `bootloadHID`. You can install it with `homebrew` as follows:
 | |
| 
 | |
|     $ brew install --HEAD https://raw.githubusercontent.com/robertgzr/homebrew-tap/master/bootloadhid.rb
 | |
| 
 | |
| If you don't use `homebrew` you can try following the compiling
 | |
| instructions defined below in the Linux section.
 | |
| 
 | |
| #### Linux
 | |
| 
 | |
| For Linux you require all regular QMK dependencies, but make sure you're
 | |
| using `gcc-avr` version 4.9 or higher. 4.8 and lower do not contain the
 | |
| proper definitions for ATMEGA32A MCUs and QMK will fail while attempting
 | |
| to compile a HEX for Pearl 40%.
 | |
| 
 | |
| E.g. you cannot compile Pearl 40% HEX on a regular Ubuntu 14.04 as
 | |
| `gcc-avr` version is maxed to 4.8 on it.
 | |
| 
 | |
| Additionally you need an operational `bootloadHID` binary.
 | |
| 
 | |
| You can install `bootloadHID` by taking the following steps:
 | |
| 
 | |
|     $ git clone https://github.com/robertgzr/bootloadHID ~/tmp/bootloadHIDsrc
 | |
|     $ cd ~/tmp/bootloadHIDsrc/commandline
 | |
|     $ make VENDORID=0x16c0 PRODUCTID=0x05DF # vid and pid for atmega32a
 | |
|     $ chmod +x bootloadHID && cp bootloadHID /usr/bin/bootloadHID
 | |
|     
 | |
| Running `which bootloadHID` should return `/usr/bin/bootloadHID`.
 | |
|     
 | |
| ### Compiling
 | |
| 
 | |
| Enter the QMK root directory and compile a keymap with the following
 | |
| command:
 | |
| 
 | |
|     $ make pearl:<keymap>
 | |
|     
 | |
| where `<keymap>` is a layout directory under the `pearl` directory.
 | |
| 
 | |
| QMK should compile a HEX (called `pearl_<keymap>.hex`) for you, which
 | |
| you can flash using `bootloadHID`.
 | |
| 
 | |
| ### Flashing
 | |
| 
 | |
| To enable Pearl 40% bootloading mode, unplug the keyboard, then plug it
 | |
| in while holding `Esc` at the same time (the top-leftmost switch on the
 | |
| PCB, next to the USB connector). Once the board is in bootload mode,
 | |
| issue the following command (you might require `sudo` to perform the
 | |
| command):
 | |
| 
 | |
|     # assuming we're still in the QMK root dir where you compiled a HEX into
 | |
|     $ bootloadHID -r ./pearl_<keymap>.hex
 | |
| 
 | |
| You should see something similar to
 | |
| 
 | |
|     > Page size = <value>
 | |
|     > Device size = <value>; <value> remaining
 | |
|     > Uploading <value> bytes starting at 0 (0x0)
 | |
|     > <value> ... <current value>
 | |
|     
 | |
| where `<current value>` should be slowly increasing as the HEX is being
 | |
| flashed to the board. If there is some warning about `resource busy` it
 | |
| should still work OK.
 | |
| 
 | |
| Once done the board underglow should turn red and the new firmware has
 | |
| been flashed. If you can't type on the board try plugging it in again
 | |
| (without holding any keys to prevent accidentally setting it into
 | |
| bootload mode again).
 |