so i got an arduino now what
DESCRIPTION
Intro to preparing to develop your first Arduino projectTRANSCRIPT
So I got an Arduino, now what?
Basic User/System Model
Transform :Amplify, Divide, Encode
Input 1
Input n Present
MessageSignal
Regulator: Simple
Interface: Complicated
Reaction
Feedback
What is going with Simple and Complicated Interactions• Simple : The System’s response consists of:
• Sensing some input or feedback• Categorizing the inputs/feedback using some basic
logic and thereby producing an output• Responding with a straightforward message or signal
out like a voltage or current• Complicated : The System’s response consists of:
• Sensing with a more complicated apparatus like a monkey brain
• Analyzing the context e.g. pattern recognition• Responding via a more sophisticated interface
Complex User/System Model
Transform: Signal
Processing
Input 1
Input n Visualize
Transmission
Signal w/
more noise
Learn: Emergent Behavior
ProbeSystemic Change
Communicate
What is going with Complex Interactions• The System’s response consists of:
• Sorting out volumes of data• Sifting through noise• Interpreting data using some model – probing the
data looking for patterns• Sending a transmission resulting in a visualization
• Systems involving learning and changing how the system works based on those learnings
• Communications between systems are more of a communications rather than predefined messages.
• Tend to need a vocabulary to express information
Basic Project Model
• Scope/Scale• What does done look like?• What is goal?• Who is the audience?• What are you trying to achieve?
• Schedule – Who is the project for?• For you: take your time – more on this later• Someone else: set expectations on quality vs. scope
• Resources and Cost – The Buzz Kill• Can you spread it over time?
Starting on a Project
• How do start to figure out a path to a solution• Small Prototypes• Iterate for rapid feedback and learning• Delay your choices for as long as you can
• Don't beat your self looking for the best solution, look for the undeniable constraint
• Solutions do not need to be perfect, just effective• You challenges come from constraints like:
• Bandwidth• Cost• Power
Bandwidth Impacts the Arrows
Transform :Amplify, Divide, Encode
Input 1
Input n Present
MessageSignal
Regulator
Interface
Reaction
Feedback
Engineering tradeoffs - Bandwidth
• How much info are you wanting to transmit• Can you afford to lose some?
• Streaming can and does• File Transfer cannot• Compression can help
• Must your messages be guaranteed to be correct?• Send multiple times• Use checksums to confirm an intact message
• Once you decide on your projects bandwidth needs some choices get made for you with cost and power
Communications Technology Options• High Power – High Bandwidth
• “Regular” Wireless that we all know: Embedded versions tend to be costly. Medium Range
• Ethernet: Fixed but cheap, medium range 300m• USB: Short Range and really cheap
• Low Power – Medium Bandwidth• Zigbee: Long Range, medium cost medium to low
bandwidth http://wiblocks.luciani.org/white-papers/intro-to-zigbee.html
• Bluetooth: Short range, good for audio, costly• Low Cost - Low Range – Low Bandwidth
• Single direction modem radios• Check out the options: http://www.sparkfun.com/categories/16
Tradeoffs – Cost and Power Choices
• How beefy does your processor need to be?• Distances over which your project needs to operate
• Where is the power coming from?• How far to I have to transmit?
• Packaging of the electronics• Whether you use off the shelf or DIY• What can you repurpose from the hardware store
• What voltages does the electronics require• Low power stuff Zigbee and Lilypad 3.3V• Regular Stuff 5V
Examples of Electronics Packaging
• Breadboards: Always a good start, like an electronics equivalent of a whiteboard
• Perf boards: Simple, good for one offs• Printed circuits: For when you want more reliability or
produce volume• Breakout boards: Shortcut for SMDs and introduces an
integration mentality
This is your first chance to shut me up
• What projects are you wanting to try out• We’ll break it down• We’ll see what are the next steps
• What projects have you started• What is working• What is not working and are there constraints
• Or I’ll keep boring you with what I think is important
Tools for Electronics
• This link pretty much says it all: http://www.ladyada.net/library/equipt/kits.html
• For Soldering Iron go with the best you can afford• Multimeters – Cheapest is good enough for starters• Other sites for cheap tools
• http://www.harborfreight.com• http://www.allelectronics.com/• http://www.goldmine-elec.com/
Parts
• Maker Oriented – Growing all the time, just a few• www.sparkfun.com• www.adafruit.com• www.makershed.com
• Specific Components• www.Mouser.com• www.digikey.com• www.newark.com
• EBay is a good place for getting bulk stuff from China
Where to go for Inspiration and Help• Sample of sites
• www.Instructables.com• www.makezine.com – Magazine is fun• www.hackaday.com• Halloween Sites
• Books• Programming Interactivity• Make Books
• Answers• Richmond Dev Jam• Richmond Hacker Space• Adafruit Ask an Engineer
When Arduino does not fit the bill
• Need more Bandwidth• Propeller is a cheap multicore embedded processor• If you need audio or video go for a PC
• Windows/MAC gets you comfortable well supported environments
• LINUX gets you the option to rightsize the OS• Big power small size: Keep an eye on Raspberry Pi• If Arduino is too much? ATTiny• Try other Arduino Form-factors
This is your last chance to shut me up
• What projects are you wanting to try out• We’ll break it down• We’ll see what are the next steps
• What projects have you started• What is working• What is not working and are there constraints
• Or I’ll use my hypnotic voice which will put you to sleep. You will wake tomorrow where you are sitting now, refreshed and late for work/class.
One Way to Get the Juices Flowing
• John Cleese (Yes that one) – “Creativity is not a talent. It is a way of operating
• Need to get to a place where your mind can enter an “Open Mode” of thinking to pondering the problem
• Once we come up with an option enter a “Closed Mode” to implement it.
STEP 1: Gathering the Raw Mental Materials
• Use the basic project model• Start to list the constraints you want or know of• Get some Inspiration
• www.Instructables.com• www.makezine.com – Magazine is fun• www.hackaday.com• Halloween Sites
STEP 2: Digesting the Materials
• Break the problem down• Draw pictures, make mockups• Make simple prototypes on a breadboard• Make test rigs using software like Processing• Use the sample code that comes with the environments• See if there are libraries that get you there faster
• They abstract some portion of the code• They leverage the experience of others
• At this point it is about filtering out all the ideas to those that seem to heading in the right direction for you
STEP 3: Unconscious Processing
• Space: You can’t become playful, and therefore creative, if you’re under your usual pressures.
• Time: It’s not enough to create space; you have to create your space for a specific period of time.
• Time: Giving your mind as long as possible to come up with something original. Learning to tolerate the discomfort of pondering time and indecision
• Confidence: Nothing will stop you being creative so effectively as the fear of making a mistake.
• Humor: The main evolutionary significance of humor is that it gets us from the closed mode to the open mode quicker than anything else.
STEP 4: Getting to the “A-HA!” Moment
• Out of nowhere the Idea will appear.• It will come to you when you are least expecting it
• While shaving, or bathing, or most often when you are half awake in the morning.
• It may waken you in the middle of the night.• At this point you go from that open mode to the closed
mode to implement it. • Be decisive and execute the steps• Ignore distractions• Ignore notions of perfection
STEP 5: Idea meets Reality
• Avoid focusing on final solutions – its always OK to fail• Focus on recognizing the constraints
• Which bucket do they fall in?• What typical trade-offs can you make?• What did the info gathering show others used?
• Experiment and fail quickly• Experiment with the bounds of the constraints• Small iterations• Step away if it nothing works – go to the open mode
Captain Spud Build Monitor
Halloween Toys – Bob Zombie
Halloween Toys – Grim Rocker