Antoinette J. Citizen


Posted in Arduino by antoinettejcitizen on 07/02/2013



Well almost… Ive been making an tri-omni-wheel robot that will follow me around! I had this wonderful idea when wandering about the Anna Swartz gallery in Sydney. What do the beautiful polished concrete floors need more than a robot that follows you around marking your path with a fluro coloured sand trail! Oh so great. I’m told that I might get killed if i actually do it, but im going to make my followbot anyway and test him in some other galleries first ūüôā

So to start with I got my hands on 3 lego next Omni wheels with a servo adaptor. 3 servos. and used some vex structural parts to make this:


It is controlled by an Arduino Fio via an Android phone. Tronixstuff has an excellent tutorial on using bluetooth bee with blue term. The bluetooth bee fits into the existing fio xbee slot.

In this state it is pretty much functioning as a remote control car. The next step was to give it some eyes so it could see the world and navigate around it. I decided to try out the wiimote ir pixart camera and test are going well.


He follows! But not perfectly, yet anyway. There is some info about the Pixar camera, but not a lot. Have a look at these pages:

Removing camera from wiimote

Kako original pixart notes

Arduino wii camera library and schematics

If you dont want to take your wiimote a part yourself, they have done it for you over at Rocketbrand.


Time Machine in Colour (Working Title)

Posted in Arduino by antoinettejcitizen on 12/29/2012

2012-12-30 14.38.10
So this is the latest work I have been making. It is a categorical time keeping machine with 24 hourglasses representing the 24 hours of the day starting from Sunrise. I will wear a wrist computer with 3 variable inputs: work, rest and play. The percentage of each catorgorie is relayed to the machine via the power of the internet. (eg. 50%work 10%play 40%Rest = me sitting on the day bed updating this blog)

These percentages are translated into the three coloured sand¬†variables¬†– Green for work, purple for rest and pink for play. ¬†In real time (or in the time it takes to get from my wrist computer to the¬†machine¬† 1-3mins) the sand percentages are portioned out via the “sand filling station” into the “robotic sand carrier”. Once the hour is up the robotic carrier takes the sand to the corresponding hour glass and empties it in and returns to the filling station to log the next hour.


The sand transferred to the hourglass the different colour sands begin to mix together creating a new category. The sand collects in the bottom of the hourglasses until  an hour before the start of the next day, when all the hourglasses are tipped over allowing their sand to pour out creating piles on the floor which get larger over the length of the exhibition.

To go about this work… which may just be the most mechanically¬†complicated¬†work as yet I have decided to create a model!

The full size work will use ‘hour’ glasses which are quite large, so i am¬†substituting them for¬†egg timers in the model:

egg timers


A temporary brace.


I have upgraded from Mecano to vex robotics! Just received this in the post! happy days.


The first thing i built is this linear slide using pinion and rack gear – it will be used to move the robotic carrier from the “filling station” to the hourglasses.

Assisted Sleep Disorder

Posted in Arduino by antoinettejcitizen on 11/10/2012


This is a prototype I am working on in my studio currently. For some time I have wanted to be able to induce the insomnia “not quite asleep but not quite awake” state. I have a love hate relationship with this state- as it creates the perfect drifting attention that allows my thoughts to be completely fluid where ideas are generated and problems are solved.. until the sleep deprivation just makes you want to cry.

So I thought why not make a sleep disorder device that can induce this state on demand? I was recently the happy recipient of an emotiv brain-computer interface- so I decided to try this work out with it:


The emotiv I currently have s the proprietary software sending¬† OSC to Proccessing… but it doesn’t offer the best data options. So I am looking into using it with openVibe- and hopefully will get some better results.

At the top is a picture of my studio- the device is basically somewhere to rest/relax/think with peripherals that will be triggered if you fall asleep (determined by the emotiv)

I’m exploring different kinds of methods for making myself up- as it needs to be a gentle method as to not disturbed the fluid thinking. The peripherals at the moment are:

Water spray- trigger by servo and meccano (my new favourite thing!):


Fan- triggered its dc motor via a h-bridge:


flashing light – via a 12volt Led.


Sound – through a bell being pressed by a servo:


Will post some updates with details and links to information about the wiring/arduino-processing and all that fun stuff.

System and Method

Posted in Arduino by antoinettejcitizen on 11/08/2012


This work is an internet enabled logging system that uses water and cordial to log two variable.


For this project I logged internal dialogue (cordial) vs external conversations (water) via a small device which could send on/off inputs for each variable to twitter. These where then access by Processing via a computer within the space. Valves opened as a relative unit of time depending on the log- so  10 Minutes conversation = 10 second log. The valves where operated via servos connected to arduino.


The Cordial was collected into a jug:


and at the end of each day transferred to a recycled bottle. This way you could see the variations of different days conversation vs internal dialogue through the colour of the cordial.



Posted in Arduino, experiments by antoinettejcitizen on 07/16/2012

There are 13 different plug/socket throughout the world. With each type of socket, there are convertors to every other type of socket. 144 in all. I would like to collect all of the socket convertors and plug them all into each other.

Japan and Latin America (“Type A” JIS C 8303/NEMA 1-15)

Type A  > Type B
Type A > Type C
Type A > Type D
Type A > Type E
Type A > Type F
Type A > Type G
Type A > Type H
Type A > Type I
Type A > Type J
Type A > Type K
Type A > Type L
Type A > Type M

North America (“Type B” NEMA 5-15)

Type B  > Type A
Type B > Type C
Type B > Type D
Type B > Type E
Type B > Type F
Type B > Type G
Type B > Type H
Type B > Type I
Type B > Type J
Type B > Type K
Type B > Type L
Type B > Type M

Europe (“Type C” CEE 7/16 Europlug)

Type C  > Type A
Type C > Type B
Type C > Type D
Type C > Type E
Type C > Type F
Type C > Type G
Type C > Type H
Type C > Type I
Type C > Type J
Type C > Type K
Type C > Type L
Type C > Type M

India, Nepal, etc. (“Type D” Small 5 amp BS 546)

Type D  > Type A
Type D > Type B
Type D > Type C
Type D > Type E
Type D > Type F
Type D > Type G
Type D > Type H
Type D > Type I
Type D > Type J
Type D > Type K
Type D > Type L
Type D > Type M

Europe (“Type F” CEE 7/7 Schuko)

Type E  > Type A
Type E > Type B
Type E > Type C
Type E > Type D
Type E > Type F
Type E > Type G
Type E > Type H
Type E > Type I
Type E > Type J
Type E > Type K
Type E > Type L
Type E > Type M

UK, Ireland. (“Type G” BS 1363)

Type G  > Type A
Type G > Type B
Type G > Type C
Type G > Type D
Type G > Type E
Type G > Type F
Type G > Type H
Type G > Type I
Type G > Type J
Type G > Type K
Type G > Type L
Type G > Type M

Israel, Palestine (“Type H” SI 32, Flat Pins)

Type H  > Type A
Type H > Type B
Type H > Type C
Type H> Type D
Type H > Type E
Type H > Type F
Type H > Type G
Type H > Type I
Type H > Type J
Type H > Type K
Type H > Type L
Type H > Type M

Australia, China, Argentina (“Type I” AS 3112)

Type I  > Type A
Type I > Type B
Type I > Type C
Type I> Type D
Type I > Type E
Type I > Type F
Type I > Type G
Type I > Type H
Type I > Type J
Type I > Type K
Type I > Type L
Type I > Type M

Switzerland (“Type J” SEV 1011)

Type J  > Type A
Type J > Type B
Type J > Type C
Type J> Type D
Type J > Type E
Type J > Type F
Type J > Type G
Type J > Type H
Type J > Type I
Type J > Type K
Type J > Type L
Type J > Type M

Denmark (“Type K” SRAF 1962/DB)

Type K  > Type A
Type K > Type B
Type K > Type C
Type K> Type D
Type K > Type E
Type K > Type F
Type K > Type G
Type K > Type H
Type K > Type I
Type K > Type J
Type K > Type L
Type K > Type M

Italy, Uruguay (“Type L” CEI 23-16/VII)

Type L  > Type A
Type L > Type B
Type L > Type C
Type L> Type D
Type L > Type E
Type L > Type F
Type L > Type G
Type L > Type H
Type L > Type I
Type L > Type J
Type L > Type K
Type L > Type M

South Africa (“Type M” Large 15 amp BS 546)

Type M  > Type A
Type M > Type B
Type M > Type C
Type M> Type D
Type M > Type E
Type M > Type F
Type M > Type G
Type M > Type H
Type M > Type I
Type M > Type J
Type M > Type K
Type M > Type L

First Draft: Sims Needs Meter

Posted in Sims Needs Meter by antoinettejcitizen on 10/19/2011

My Sims Needs Meter is starting to look like a Sims needs meter:

Sims needs meter bar

This is the same as my previous breadboard prototype, just experimenting with methods of display in an attempt to get it to looking like it’s digital counterpart.

I took part in a sprint hosted by Melbourne Media Labs recently. We did a bit of experimenting with making health bars… I fell in love with LEDs and hot glue sticks. The photographs/video create not so pleasant looking hotspots, but the effect is quite wondrous in real life.


This is a variation of the sims needs meter we put together:


It uses PWM to fade in and out- creating the effect of changing between colours. The standard arduino only has 5 PWM pins, so i used the softPWM library to be able to fade all the 12 LEDs (which are just wired directly to an arduino).

led test sequence showing the effect it creates:

I tried a few different materials to diffuse LEDs, but nothing functioned as well as the glue. The current sims meter uses rectangle LEDs diffused through glue sticks, which gives a nice health bar segmentation:


They don’t have a very wide viewing angle, but you can still see a light glow from the sides:


I had problems with the 2xleds from either side being completely washed out in any sunlight. But it appears that the additional LEDs underneath instead of at the side provides enough light to be viewable in some sunlight. Direct sunlight still washes them out, but I think I can live with that.

Next challenge is to make a PCB. I tried fitting the multiplex LEDs, shifts on a Protoboard small enough to be wearable, but it is proving problematic- so I’m hoping a PCB will be the solution to my problems… I haven’t made a PCB before, so it may take a little while to figure out the process.

Then I am going to do some vacuum forming and rapid prototyping to test out some potential cases/enclosures. Oh yeah, exciting times.

The code for button input and measuring different ‘needs’ is functional. Just needs a bit of cleaning up. Hope to post it very soon.

See previous posts on my Sims Needs Meter:

Sims: Part One

Sims Needs Meter: Breadboard Prototype

Prototype: 28 hour watch

Posted in Arduino, experiments by antoinettejcitizen on 09/14/2011

I am hoping to follow a 25 hour day for a month, and then a 28 hour day. So I am making a watch that allows you to adjust the length of day. This prototype allows you to set the length of day between 1 hour and 48 hours as well as normal functions of a watch like setting the minutes and hours.

I am using a spark fun serial 7 segment display which allows communication through soft serial or SPI. But you could use a normal 7 seg with shift registers instead.

Button 1 acts as a “Select” button, then 2nd is to set hours, 3rd to set minutes and fourth to choose day¬†length¬†(between 1-48hours) Short video of the button functioning:

Seven seg display, 4 buttons, 10k resistors. That is it. This is my code, it works, but I am a novice so feel free to clean it up and send it back to me! Post-it note schematic with SPI:

(MISO, RESET, RX are not used)

Next steps:

  • hook it up to a pro mini
  • small lithium battery
  • add a tilt sensor so the display is not on all the time.
  • Make/modify a small case ¬†and¬†attach a strap.

A miner’s canary(‘s) cage

Posted in Arduino, Bird Cage, experiments, Motors, Sensors by antoinettejcitizen on 07/14/2011

The gas sensors and stepper door control are now together, sensing high levels of Carbon Monoxide or Methane will open the bird cage door (See previous post). I put in a small push button to act as a test switch- like on smoke detectors. I don’t think it is quite ready for a bird just yet. Need to take it off the breadboard and put it onto something more permanent and clean up the wires. Thought it would also be good to put clear¬†acrylic¬†behind the electronic components- so the canary can’t attack the exposed parts.

Canary in a Coal Mine: In two parts

Posted in Arduino, Bird Cage, experiments, Motors, Sensors by antoinettejcitizen on 07/11/2011

I am taking a miniature break from my Sims Needs Meter, to make a carbon monoxide and methane gas sensor unit for a canary cage.

Today it is in two parts, hoping to put them together tomorrow. First part is the arduino powered cage door:

Above is a unipolar stepper being driven by a darlington array. I am just using the stepper example in the arduino ide. There are a few different versions- one step, full rotation etc.¬†Arduino reference¬†for wiring a stepper.¬†The stepper has a small robot wheel attached to it’s shaft- which i have glue some fishing line to. The groove in the wheel is designed to fit a small rubber tire into it- but here it is perfect for the fishing wire to be wound up onto it. And that is about it. Super simple. Now to find a way to attached it to the bird cage that does not involve gaffa tape.

And the second part is the:  Carbon Monoxide (Top) and Methane (Bottom) sensors:

These sensors are soldered to the sparkfun gas sensor breakout boards, and using a simple analog read to extract data. There are very limited tutorials available for gas sensors, unless you are making a breathalyser or fart-meter. So after I put these two parts together, I will attempt to create a comprehensive tutorial. Still searching for some more info on calibration and interpreting the readings.

Arduino Flip Clock

Posted in Arduino, experiments, Motors by antoinettejcitizen on 06/10/2011

This is an old work I had started a while ago, hope to finish it soon. It is an arduino connected to a old flip clock.¬†Clock is connected to a stepper motor (stepper tutorial)– delay time is determined by the pot. The steppers steps and the clock gears don’t match up, so next thing i need to do is make some gears to go in between. At the moment it skips each 8-9th number.

The final work I wanted to do was have the clock switch off when there is no one in the room. Then quickly speed back up to the correct time when someone enters the room.

ECG Badge

Posted in Arduino, experiments by antoinettejcitizen on 06/09/2011

I would like to create a wearable ECG. This would monitor your heart rate and display it on a small badge. Like this (you will need to click to see my dodgy gif animation)

I don’t know if this is possible, but my research thus far hasn’t rule it impossible yet.

Update: I found this tutorial using a Xprotolab oscilloscope to display heart rate. Once I locate the very tiny oscilloscope, I will give it a try!

Sims Needs Meter: Breadboard Prototype

Posted in Arduino, experiments, Sims Needs Meter by antoinettejcitizen on 05/20/2011

This is my current prototype for my electronic Sims Needs Meter. I will be using this to develop the programming, work out any problems, schematics and designing the PCB. Then I hope soon to learn how to etch a PCB for it and use SMDs so it is small enough to wear on my arm. I will let you know how i go.

Currently I am looking at the possibly of using an Arduino Fio- as it is as small as a pro mini but has a built in battery charger.

Above I am using 2 shift registers, only shifting 5 outputs each at the moment, but did it like this so I can add additional columns later. The two shifts are daisy chained- and only use a total of 3 arduino pins. (See older posts- Multiplexing,  other shift/multiplexing examples)

This is a very helpful page on Arduino about using shift registers.

Buttons are not connected yet- but will be using them to input current states. Like now im being social etc. I think I will do a post soon just on these categories and how each of them will be monitored/calculated… But i’m still tweaking.

This is a video of the leds changing “states”. From¬†completely¬†charge to in crisis mode. Each row is the same- still have a long way to go.


Posted in Arduino, experiments, Sims Needs Meter by antoinettejcitizen on 05/13/2011

This is 5 x 6 matrix of red-green Leds (they are actually rbg, but i don’t need the blue). So it is the¬†equivalent¬†of 60 Leds. These are running off 16 Arduino pins and way too many hookup wires. The vertical rows share common cathodes and the horizontal share anodes. A 2ms delay is used to switch between the vertical rows. Yellow is created by having red and green on at the same time.

16 pins, 60 leds is pretty good but i would like to free up some more pins- so I am going to be using a shift register as well. Stay tuned for my next post where i will attempt to multiplex with a shift register as well.

This will be my basic prototype for the programming of my Sims Needs Meter.

RGB and Current Limiting Resistors

Posted in Arduino, experiments, Sims Needs Meter by antoinettejcitizen on 05/13/2011

My rgb leds arrived…¬†I am going to begin multiplexing tonight and using the shift registers tomorrow.

But first I had to work out what current limiting resistor I would need. Using the datasheet for my LEDs I needed to know the led Current rating and the voltage drop (use a datasheet for your own Leds, as they will have different values to mine)

As I am using a standard Arduino the supply voltage from the D I/O pins is 5volts.  Now I can work out what resistor I need for each.  Here is my post-it note diagram:

Resistance =  Supply Voltage Рvoltage drop over the  Led current rating.

If you don’t feel like doing the calculation- here is a current limiting resistor calculator.

The Sims Needs Meter: Part 1

Posted in Arduino, experiments, Sims Needs Meter by antoinettejcitizen on 05/05/2011

This is my very poor attempt at drawing my next project. Basically I am making an electronic Sims Needs meter that I will strap to my arm. If you haven’t played sims, the needs meter is basically a health bar for different ‘needs’ the sim has. It looks like this:

For each ‘need’ bar there are 9 different states, with 4 different colours:

I am still waiting for my leds to arrive and shift registers to arrive in the post.¬†There will be 8 LEDs per bar with 6 individual health bars – these leds will be red/green ones, as i don’t need blue¬†to make any of the above colours.¬†I am currently researching multiplexing and shift registers, so I can use less pins on the Arduino while still given me control of all the leds individually.

A few good links on this:

Direct Wiring an Arduino to a Led Matrix (Multiplexing with no shift Register)

The 74HC595 8 bit shift register (Shift register, no multiplexing)

64 Pixel Display (Shift Registers and Multiplexing)

So my first test, to get my head around multiplexing, I created the equivalent of one health bar with normal LEDs:

The three different colours are on different rows connected by their cathode. Then the 5 column(Red, yellow, green)  connect the anodes together- giving you 8 wires to connect to the arduino digital pins.

Working with one a row at a time- you put the digital pin for that row (Cathode connected) to LOW and put the column you want on to HIGH. To get the different colours on at the same time you have to switch between the rows at very small intervals. I was doing this at 5ms- which did not produce any flicker.

I need to keep 6 pins free on the arduino, so I can use them for input of information- I will prob just use the 6 analog pins. Leaving the 13 other pins free for the leds. Can I fit 90 leds on 13 pins? More updates once my shift registers arrive!