• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Hardware Hacking
 

Hardware Hacking

on

  • 3,617 views

Talk due to be given on 1st Dec at skillsmatter in London on Hardware Hacking. ...

Talk due to be given on 1st Dec at skillsmatter in London on Hardware Hacking.

An introduction on hardware hacking, what it is, how to get started. A live tutorial on the Arduino programming and examples.

Statistics

Views

Total Views
3,617
Views on SlideShare
3,578
Embed Views
39

Actions

Likes
3
Downloads
147
Comments
2

3 Embeds 39

http://www.kingkludge.net 26
http://www.slideshare.net 12
http://www.kingkludge.ec2 1

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-ShareAlike LicenseCC Attribution-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

12 of 2 previous next

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • very nice presentation and good to predict
    Are you sure you want to
    Your message goes here
    Processing…
  • very nice presentation, hope u present more!
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Hardware Hacking Hardware Hacking Presentation Transcript

    • Hardware Hacking by Andy “Bob The Builder” Brockhurst For the Yahoo! Developers Network and SkillsMatter
    •  Picture “Hardware Hacking” by nicholasjon- flickr
    • Talk topics (in no particular order)  Introduction  What is hardware hacking  How to get started  Microprocessors  Sensors & Switches (Hardware I/O)  The world is your mollusc  Basic Circuit Theory  How to get those sensors to work
    • If anything should go wrong Blame this next guy
    •  Photo “Hacking”
    • What is hardware hacking  Hacking  An elegant solution to a difficult problem  Using a technology for something it was not originally intended.
    • Types of hardware hacking  Just hacking hardware  Circuit Bending  Reverse Engineering  Toy Hacking  SteamPunk  Craft Hacking/“Making”
    •  Photo: “WRT54G & NSLU2” by lime*monkey- flickr
    •  Picture “Circuit Bending” by jamie_hladky- flickr
    • Circuit Bending  Pete Edwards  Musician/Hacker  http://casperelectronics.com
    •  Picture “Reverse Engineering” by Micah Dowty- flickr
    •  Picture “Toy Hacking” by Vanderlin - flickr
    •  Picture “Making”
    •  Photo: “Steampunk” by Balakov- flickr
    •  Picture “Reverse Engineering” by Neal Connor- flickr
    • Getting Started  Arduino  Entry level microprocessor  OpenSource Hardware & Software  14 digital Inputs/Outputs (6 PWM Out*)  6 analogue Inputs  IDE with loads of example code  Aimed at artists/hobbyists with limited programming experience *We’ll come to this shortly
    • Arduino (Atmega 328)  16bit Microprocessor, Embedded C  32k Flash, 2k SRAM, 1k EEPROM  16Mhz
    • Arduinos are not the only fruit  Atmel Tiny (ATtiny)  PIC AVR (PICAXE)  Range of ARM processors  FPGA
    • Arduino  OpenSource Hardware  Schematics freely available  Lots of “Flavours”; Diecimila, Duemilanove, Mega, Mini, Nano, Lilypad  Lots of boards for specific tasks; Motor/servos, Autonomous Vehicles, Robotics, Autopilots, CNC (*32 makers)  Sheilds to extend functionality; Bluetooth, wifi, radio, ethernet, GPS, relays, LCD, touchscreen…
    • Arduino Initiatives  Software  Processing  IDE is based on Processing and Wiring  Fritzing  Prototyping and circuit layout  EduWear  Introducing programming and electronics to children
    • Hardware Hacking Let’s build some stuff!
    • by Bekathwia - flickr
    • Arduino (very) Basic I/O - Parts  Setup a circuit  Arduino  Breadboard  LED  Resistor  Switch  Wire
    • Arduino (very) Basic I/O - Layout
    • Arduino (very) Basic I/O - Code  Define an input and an output  Read the input and set the output void setup() { pinMode(2, INPUT); pinMode(13, OUTPUT); } void loop() { int switchValue = digitalRead(2); digitalWrite(13, switchValue); }
    • Take it a bit further  Substitute the LED for a physical interaction device  Servo  Bit more wire
    • Adding a servo
    • Update the code #include <Servo.h> Servo myServo; int steps[] = {0,60,120,180}; int currentPos = 0; void setup() { pinMode(2, INPUT); myServo.attach(13); myServo.write(steps[0]); } void loop() { if (HIGH == digitalRead(2)) { currentPos = (3 == currentPos) ? 0 : currentPos + 1; myServo.write(steps[currentPos]); delay(500); } }
    • Taking it further  Substitute the switch for a physical interaction device  Piezo Electric transducer  Can be used to sense “Knocks”
    • Wire in the piezo
    • More code updates #include <Servo.h> Servo myServo; int steps[] = {0,60,120,180}; int currentPos = 0; const int KNOCKTHRESHOLD = 100; void setup() { myServo.attach(13); myServo.write(steps[0]); } void loop() { if (KNOCKTHRESHOLD <= analogRead(0)) { currentPos = (3 == currentPos) ? 0 : currentPos + 1; myServo.write(steps[currentPos]); delay(500); } }
    • Tour of the software  Arduino IDE  Fritzing
    • by pieter [iamdoom / bwrah bwrah]- flickr  Photo “Inspiration”
    • Getting Inspiration  MakeZine  http://blog.makezine.com/  Instructables  http://www.instructables.com/  Circuit-Projects  http://www.circuit-projects.com/  Tinker.it  http://www.tinker.it/
    • Where to get stuff  Specialist Arduino Retailers (UK)  http://www.earthshinedesign.co.uk/  http://www.oomlout.co.uk/  Other Hardware suppliers (UK)  http://www.active-robots.co.uk/  http://www.techbotics.co.uk/  http://www.technobots.co.uk/  http://www.ebay.co.uk/
    • Finding fellow hackers  London Hacker Space  http://london.hackspace.org.uk/  irc://irc.freenode.net/london-hack-space  London DorkBot  http://dorkbotlondon.org/
    • Thank you for listening Where I can be found: http://kingkludge.net/ http://twitter.com/b3cft (or in the pub)