Workshops/usb
Introduction
This workshop introduces you to USB. We address the most important issues of the design and how to build a USB interface focusing on the HID class. We also examine how you want a Hackspace USB group to work.
If you look at Jan Axelson’s essential toilet-side-USB-reading USB Complete: The Developer's Guide 4th Edition (Complete Guides Series), you will quickly (actually by page xv in the table of contents) come to the conclusion that sticking with the Arduino was the best idea and sell the book to the next poor unfortunate on Amazon. Fortunately, I’ve read it all and I can pass-on the whodunit ending so you don’t have to suffer the book-induced narcolepsy I had to.
USB-on-an-MCU is the whodunit. The good news is they’re cheap; there’s loads of competition; they leverage your existing hardware and software skills; and they’ve been around long enough to populate the forums with the pain you can now avoid suffering.
Workshop Content (provisional)
- An overview of the USB protocol for hardware developers with a HID class focus;
- The skills required to produce a USB device;
- “USB-on-a-chip”, the manufacturers, the dev environments and the chips;
- Examination of some USB devices;
- Practical exercises;
- How you want a Hackspace USB group to work;
- Supporting each other’s project development.
Why
- You will simplify your electronic circuit design and save cost. There are a great many situations where, with a bit of knowledge, you will be ready to move your Arduino prototype onto a USB MCU.
- It’s a lot easier than you think. I’ve discovered that there appear to be two main reasons why so few people are doing USB: -
- Most developers see USB as “cracking a nut with a steam-roller” – there just doesn’t seem to be the awareness of the ‘easy MCU way’ to do USB.
- To create a truly great USB product from the very start to the very end of the process requires several technical skills that are rare in a single person and requires equipment for the development process that your average bod just doesn’t have. Put those into the Hackspace environment – geekers like us with time, commitment and teamwork and you’ve got an exciting way forward.
- From my last year of USB musings I see the big picture like this. “USB is massive. It has a colossal user base. 2a & 2b above have left it significantly under exploited”. To start with we can show people how to exploit USB by running profitable workshops like this to make money for the space. More excitingly we can support each other in a USB Group within Hackspace to knock-out some fantastic stuff.
Summary: “Let’s give people USB devices they want and make enough money to retire in 5 years.”
When
My aim is to run the first 3 sessions within a 10 day window between Thursday 31 March and Monday 25 April 2011.
- 1 x weekday evening session 7pm – 10pm
- 1 x weekday day session 1pm – 4pm
- 1 x weekend day session 1pm-4pm.
Choose the sessions you’d like at http://www.doodle.com/uwr2wdtwvi45cmba
I’m capping individual session numbers at 6. Please optimize yourselves.
Prerequisites
Being fairly geeky will be helpful but is not essential. If the theory gets too heavy for you, have a little sleep or check your email. For practical work you’ll most likely be working with someone else so you could get them to do all the work. You’ll find it helpful to have a computer or laptop. If you don’t, you’ll need to work with someone who has for some of the practical stuff. Summary: At a minimum, just bring you.
Cash
These first USB workshops are free to the Hackspace community. You are the guinea-pigs (or at least, gerbils) who will allow us to develop the format. Eventually we can start charging non-Hackspace attendees for them and bring cash into the space. In the meantime we’ll rely on donations and samples (see [ Resources]). All donations will go on equipment and consumables.
Logistics
- A room – The quiet room’s looking good.
- A Projector (& screen?) – Would be nice but not essential. There’s one available (and a screen) but the window behind washes out the image – need to test.
- Things to draw on like a whiteboard/flipchart and things to draw with – There’s a blackboard which suggests chalk might be useful.
Resources
THE USB book - USB Complete: The Developer's Guide 4th Edition (Complete Guides Series)
- Just bought a cheap old one off Amazon.
MCUs + associated Dev Envs for practical work.
- 8-3-11 – emailed a few chip people. Ask for contributions from Hackspace people.
Here’s the MCU Dev/Env Wish-list status. Please suggest any not listed that you may be interested in.
'FTDI – 'www.ftdichip.com/index.html
'Microchip – 'www.microchip.com/usb
'Atmel – '[www2.atmel.com www2.atmel.com]
'NXP – 'www.nxp.com
Links
- Essential - USB Complete: The Developer's Guide 4th Edition (Complete Guides Series)
- http://www.lvr.com/usb.htm - from the author of “USB Complete ...”
- Inevitable - http://en.wikipedia.org/wiki/Universal_Serial_Bus