Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mmitch/tasta
two-key USB keyboard - software and schematics/PCB
https://github.com/mmitch/tasta
Last synced: 5 days ago
JSON representation
two-key USB keyboard - software and schematics/PCB
- Host: GitHub
- URL: https://github.com/mmitch/tasta
- Owner: mmitch
- Created: 2015-07-26T18:55:22.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2019-06-24T19:12:38.000Z (over 5 years ago)
- Last Synced: 2023-03-11T07:33:02.432Z (almost 2 years ago)
- Language: C
- Size: 260 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README
Awesome Lists containing this project
README
tasta - small USB keyboard
Copyright (C) 2015 by Christian Garbs
Licensed under GNU GPL v2 or v3Project homepage:
-----------------
https://github.com/mmitch/tastaDescription:
------------
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 CONFIGURATIONDefault configuration is:
- key 1 = GUI left (Windows key -> modifier only)
- key 2 = return
- the LED is on if key 1 || key 2 is pressedTo 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.