tinyfinger/README.md

36 lines
1.3 KiB
Markdown
Raw Normal View History

2017-10-28 21:42:28 +02:00
# TinyFinger
TinyFinger is a small device powered by an ATtiny45 to produce pseudorandom
2017-10-28 21:42:28 +02:00
numbers for selecting student groups during the computer science hardware
courses at Leipzig University.
## board
The board is designed in KiCad and uses a single sided pcb layout using
mostly SMD components. The routing was done manually.
## code
The firmware for the ATtiny is written as an Arduino sketch using the
[ATTinyCore] board definitions. It uses a [linear congruential generator]
2017-10-28 21:42:28 +02:00
for generating pseudorandom numbers and transforms them to the needed
range using the gcc uniform_int_dist c++std implementation.
Flashing the firmware can be done using a usual Arduino programmed as an
ISP with the ArduinoISP example sketch included in the IDE. Then the Arduino
can be connected for example via its ICSP pins:
![ICSP]
The pins on our TinyFinger board are from left to right:
GND, MISO, VCC, SCK, MOSI, RESET.
2017-10-28 21:42:28 +02:00
## case
The case is modelled in Blender and intended for 3d printing, e.g. using
Cura after exporting the model as an stl file.
[ATTinyCore]: https://github.com/SpenceKonde/ATTinyCore
2017-10-28 21:42:28 +02:00
[linear congruential generator]: https://en.wikipedia.org/wiki/Linear_congruential_generator
[ICSP]: https://www.arduino.cc/en/uploads/Tutorial/ICSPHeader.jpg "Arduino's ICSP pins"