mmitch/tasta
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
tasta - small USB keyboard Copyright (C) 2015 by Christian Garbs <mitch@cgarbs.de> Licensed under GNU GPL v2 or v3 Project homepage: ----------------- https://github.com/mmitch/tasta Description: ------------ tasta a small USB HID keyboard with just two keys and the corresponding code to program the ATtiny85. This is my first microcontroller/PCB project. I developed it as a foot switch for push-to-talk in TeamSpeak as I don't have any spare keys (or fingers) during gaming. I fiddled with this on and off over the course of two years, now it should be ready to do something. Hardware: --------- The curcuit schematics and PCB layout are available in different formats in the 'circuit' subdirectory. They were created with KiCad, so it's propably best to edit them with KiCad, too, if the need arises. There are some optional components in the layout: - You can omit the LED and R5 if you don't need it. - You can omit either key switch or the K1 connector as needed. K1 is used to provide key input from 'offboard', like the foot switch I use. - R4 is propably not needed. In fact, I have never included it, neither in test runs nor in the final PCB. But the docs say you should pull up your reset pin, so the possibility to insert the resistor is there if you should ever need it. (I did include it 'just in case' so I would not have to throw away the first PCB batch.) Software: --------- To build the software, go to the 'source' directory and just run 'make'. A normal Atmel development environment is needed, so install 'avr-gcc' and friends. To configure the software (to choose your own keybindings), edit 'main.c' and look for these two sections: - EDIT BELOW FOR YOUR OWN LED CONFIGURATION - EDIT BELOW FOR YOUR OWN KEY CONFIGURATION Default configuration is: - key 1 = GUI left (Windows key -> modifier only) - key 2 = return - the LED is on if key 1 || key 2 is pressed To flash the code to your ATtiny85, run 'make flash'. The default configuration uses avrdude with a 'usbasp' compatible programmer. Edit the AVRDUDE_* variables in 'Makefile.orig' to change this. Credits: -------- PCB and basic code are heavily influenced from other projects, as you can see in the repository log. Other parts were rewritten, redone and rearranged by myself. Credits where credits are due: * VUSB project for USB on Atmel microcontrollers: http://www.obdev.at/vusb/ * VUSB HIDKeys example project for a USB HID compliant keyboard: https://www.obdev.at/products/vusb/hidkeys.html * Information on running a VUSB project without a crystal taken from flipwork's 1-Key-keyboard: http://blog.flipwork.nl/?x=entry:entry081009-142605 * better OSCCAL calibration routine taken from here: http://codeandlife.com/2012/02/22/v-usb-with-attiny45-attiny85-without-a-crystal/ * My PCBs were printed at Hackvana. I've never done this before and everything went right on the first try (well, on the second, I had one misnamed file in the rev_0x0002 export, but that's my fault): http://www.hackvana.com/ Licensing: ---------- The VUSB example projects are licensed under GPL 2 or GPL 3 (you can choose). The imported code from flipwork and codeandlife is based on VUSB projects as well (HIDKeys/EasyLogger), so they're GPL 2/3, too. My project thus is also GPL 2/3 and everybody's happy.
About
two-key USB keyboard - software and schematics/PCB
Resources
Stars
Watchers
Forks
Packages 0
No packages published