This is project is an easy way to get a macro keyboard project going very quickly.
This is part of the ManyKey Project. A cross-platform program to write to this firmware is available here.
- Supports 10+ characters pressed simultaneously per switch (this can be changed very easily if you need more)
- Supports as many buttons or switches as you have pins available
- Key configuration can be updated via USB serial
- Configuration is stored in EEPROM, so it will persist if your creation loses power
- Update
BUTTON_COUNT
andbuttonPins
in the source to indicate how many and which pins you'll be using in your project. - Flash the sketch to your Arduino.
- For each pin you specified, connect a switch between that pin and ground. If the pin does not support
INPUT_PULLUP
, you'll also need to add a pull-up resistor between the pin and V+. - Configure the keys over serial.
- Enjoy life with your new macro keyboard.
You can configure regular ASCII letters/keys, as well as the modifiers described here.
For sending hex over serial, I highly recommend the freeware program CoolTerm.
Request
Start | Command | Switch Index | Stop |
---|---|---|---|
0xEE | 0x00 | 0x00 | 0xFF |
Response
Start | Command | Switch Index | Key 1 .. Key N | Stop |
---|---|---|---|---|
0xEE | 0x00 | 0x00 | 0x98, 0x43, etc | 0xFF |
Request
Start | Command | Switch Index | Key 1 .. Key N | Stop |
---|---|---|---|---|
0xEE | 0x01 | 0x00 | 0x97, 0x43, etc | 0xFF |
Response
Start | Command | Switch Index | Key 1 .. Key N | Stop |
---|---|---|---|---|
0xEE | 0x01 | 0x00 | 0x97, 0x43, etc | 0xFF |
Request
Start | Command | Stop |
---|---|---|
0xEE | 0x02 | 0xFF |
Response
Start | Command | Switch Count | Max Keys Per Switch | Stop |
---|---|---|---|---|
0xEE | 0x02 | 0x03 | 0xA0 | 0xFF |
If you see an area of improvement for this project, please open an issue or PR! :D