sven-strothoff / billbadge_firmware

MysteryHack Bill Cipher Badge 36c3

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Bill Badge

MysteryH4ck Bill Cipher Badge 36c3

Links & Tools

Arduino IDE (required): https://www.arduino.cc/en/Main/Software

Attiny85 Core (required): https://github.com/SpenceKonde/ATTinyCore

Arduino IR library (optional): https://github.com/z3t0/Arduino-IRremote

Tiny IR library (optional): https://gist.github.com/SeeJayDee/caa9b5cc29246df44e45b8e7d1b1cdc5

Setup & Compilation

Install Attiny85 Core, edit ...\packages\ATTinyCore\hardware\avr\1.3.2\variants\tinyX5\pins_arduino.h and change line 108 to #define TIMER_TO_USE_FOR_MILLIS 1.

Under tools select:

  • Board: "ATtiny25/45/85"
  • Chip: "ATtiny85"
  • Clock: "16 MHz (PLL)"
  • B.O.D. Level: "B.O.D Disabled"
  • Save EEPROM: "EEPROM retained"
  • Timer 1 Clock: "64MHz"
  • LTO(1.6.11+ only): "Enabled"
  • millis()/micros(): "Enabled"

Fuses:

AVRDUDE -U lfuse:w:0xD1:m -U hfuse:w:0x5F:m

  • LFUSE=D1
  • HFUSE=5F
  • EFUSE=FF

Fuse calculator: http://eleccelerator.com/fusecalc/fusecalc.php?chip=attiny85

Pinout

Arduino Nano Prototype

Function AVR Pin Arduino Pin
Button PD6 D6
IR Send PD3 D3
IR Receive PD7 D7
LED R PB3 D11
LED G PB2 D10
LED B PB1 D9

Attiny85 Badge

Function AVR Pin Arduino Pin Physical Pin
Button PB5 D5 1
IR Send PB1 D1 6
IR Receive PB2 D2 7
LED R PB4 D4 3
LED G PB3 D3 2
LED B PB0 D0 5

Stolen Attiny85 pinout 1 Stolen Attiny85 pinout 2

PCB Designs

Attiny85 fuse burner: https://easyeda.com/spacehuhn/attinyrescue

Bill badge prototype with Arduino Nano: https://easyeda.com/Spacehuhn/projectbill-prototype

Attiny85 Programmer: https://easyeda.com/Spacehuhn/attinyprogrammer

Final Badge Design: Somewhere here https://github.com/MysteryHack

About

MysteryHack Bill Cipher Badge 36c3

License:MIT License


Languages

Language:C++ 77.7%Language:C 22.3%