Playing with Harmonographs

Harmonographs are mechanical devices that use pendulum motion to create intricately patterned drawings. They often use 2 pendulums but could use any number. As the pendulums slow down due to friction (called damping) the resultant patterns continuously change. Each pendulum effectively provides 2 oscillating motions (because they draw ovals, not circles). Harmonograph motion can be simulated, both[…]

Creating Classes (in C++) for Arduino

Classes are the fundamental construct of all OO (Object Oriented) programming languages. Most modern programming languages are OO (C++, Java, Php, Python, etc.). OO languages essentially deal with objects that have properties and can do certain things. The ‘class’ file defines what the available properties and functions are, and the ‘objects’ are instantiations (or ‘versions’)[…]


Lets load this code onto our Arduino’s. I’ve added lots of comments to the code itself….lets read through them together View the code on Gist. now lets add a little code so that our code doesn’t run forever….. this is getting a little like a stop watch. can you think of games you might create that[…]

Understanding Breadboards and Protoshields.

Breadboards are used for prototyping electronic circuits. Their purpose is to make it easy to create new connections between different electronic components. This means that you don’t have to use heat and solder to test out new ideas. You just need to plug wires into different holes.   Exercise: Establish which holes are connected to[…]