A small ATtiny45-powered device to produce pseudorandom numbers (including case)
Hannes Thalheim 77b03ae70d Updated README.md after findings of 2018-03-02. 9 months ago
artwork Import the kicad project for the board and related artwork 1 year ago
board Import the kicad project for the board and related artwork 1 year ago
case Add tinyfinger relief to the case 1 year ago
code Disable led display after 10 seconds to save energy 9 months ago
LICENSE Add README and licence under GPLv3 1 year ago
README.md Updated README.md after findings of 2018-03-02. 9 months ago

README.md

TinyFinger

TinyFinger is a small device powered by an ATtiny45 to produce pseudorandom 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 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 (UNO in our case) programmed as an ISP with the ArduinoISP example sketch included in the IDE.

Then the Programmer (Arduino) should be connected to the Target like this:

Programmer’s pins Target’s pins
13 SCK
12 MISO
11 MOSI
10 RESET
5V VCC
GND GND

The pins on our TinyFinger board are from left to right: GND, MISO, VCC, SCK, MOSI, RESET.

case

The case is modelled in Blender and intended for 3d printing, e.g. using Cura after exporting the model as an stl file.