At work we are allowed one day a month for “hacker time”. This is time where we can work on whatever we like. It doesn’t have to do with work at all (within reason of course!) A few weeks ago I decided to learn a little bit about microcontrollers.
I bought myself an Arduino Starter Kit with UNO Board and got stuck in. The kit comes with an Arduino UNO and a really good supplementary book. This book has 15 projects in it that teach you about each of the components and get progressively more complex. It also explains more general things like the colour banding on resisters and Ohms law which I found was useful background.
Turning on an LED is the “Hello World” of microcontrollers and so that was indeed the first project in the book. I worked through that and then a couple more that covered creating circuits in serial and parallel.
I got a little distracted by resistors and their coloured bands but I’ll go into more detail about that separately. It might be a bit ranty, so I’ll do it in another post.
Given that I only had a day and I had wasted some time with resistors, I decided to stick with the theme of LEDs and create a partial binary clock. At the end of the day I had six LEDs that would show the binary representation of the the number of seconds past the minute for the current time as well as a button to turn the whole thing on and off.
Here’s the result:
It might not look like much, but I really enjoyed doing it and getting to that point. The things that I learned from this day were:
- A lot about resistors and why they exist. Also that they have tiny coloured stripes on them that are poor for colourblind people to use.
- How to react to input from the button.
- How to generate output using the LEDs.
- How to create serial and parallel circuits.
- How to use the Johnny-Five library and also a bit of Node.
Given that I have this kit now, I’d like to work through the rest of the projects in it and use all the various other components (temperature sensor, tilt sensor, light sensor, speaker, LCD display, etc). I’d also like to try combining them in new and interesting ways.
If anyone has ever thought about playing around with microcontrollers, I would definitely recommend that you do so. If you have any recommendations for projects or related resources, please let me know.