Home made 9 DOF IMU

Inertial measurement units (IMU) are commonly used where position, motion information must be processed. It is commonly 9 degrees of freedom (DOF) modules used that include LSM303 3 axis accelerometer and 3 axis magnetometer, ITG-3200 3 axis gyro. These are considered enough for precisely calculating position of board carrying all sensors. Amandaghassaei was working on project where orientation information was needed. So instead of purchasing available board, he built one which saved a bit of money, but mos importantly had all he needed.

He included Atmega328p microcontroller which reads all sensor data and then can send it through I serial interface. He made 6 pin header to accept standard FTDI interface module. PCB was fabricated by using milling machine. Milling and soldering was a bit challenging since footprints of both sensor chips are really tiny.

Transferring data to AVR over audio line at 12kbps

When you need to transfer or stream data from one device to another there is always some dilemma what technology to choose. You can pick many ways of doing so. For instance these can be USB, USART, IRDA, RF, WiFi, Bluetooth, SPI, I2C, etc. but when you are using small micros like Attiny85, you start thinking about code size and simplicity. Another thing is availability. If you need to send data from computer or portable device, options become even more limited. WiFi or Bluetooth is too expensive comparing to overall project cost, USART is thing of past unless you use adapter. Jari even tried optical screen flickering method, which appeared to bee to slow and not reliable. So he thought what interface is always there and doesn’t require many pins. So he remembered modem idea.


Audio line is almost on every consumer devices including PC, smart phones. It can also be easily implemented on any microcontroller. So he started playing with data transfer overs audio line. To send data you need only one wire (and pin). Sending data with sync signals once in a while ensures very reliable data transfer up to 12kbps rate.

Keep your plants watered with this watering system

If you like growing plants at home, then you know that they are restricted in space and climate. There are some things that you can do and there are that you can’t. You cant control the temperature and light much especially in areas where you live or work. It can be put near the window and temperature is mostly a room temperature. But there is one parameter that can and must be kept in mind – moisture. It is vital to almost any plant to keep soil at some moisture level and this is what you cannot ensure properly unless you keep checking it constantly. So why bother when this work can be done by putting a simple circuit.


Frank Donald built a really simple setup that works on Atmega16 based circuit. Microcontroller here is to read soil moisture sensor that comes as cheap module which includes comparator. So it gives high signal when soil is dry and low when wet. But to make it a bit smarter, he is reading analog signal from sensor, so microcontroller could read this signal and according to its level control a relay to water pump. By setting some thresholds he made simple hysteresis to prevent relay from chattering.

In other hand similar result can be achieved much simpler – you can connect sensor digital output directly to relay driving transistor and have similar result.

Water softener level detector

In places where water contains higher concentration of dissolved minerals is considered to be hard ware. It does not affect human health, but teapots, washing machines and dishwashers suffer from calcification. To avoid this problem, there are water softeners used where special salt is used to soften water. Of course this salt also dissolves and needs to be refilled time to time. David always forget to refill the tank because there is no visual indicator of it. So what you don’t see – you don’t care. To avoid future conflicts with his wife, he decided to add visual indicator to water softener.


On front panel he mounted LED bar graph where salt level is displayed. Also he added photocell to detect room light. It simply detect if someone is in the room or passes by by dropping a shadow. Other time bar graph is turned off. This hopefully prolongs life of LEDs and saves a bit of electricity. Another part is measuring salt level. Since salt is hard material, he used Sharp GP2D12 Infrared Distance sensor. It is able to measure distance from salt from 10cm to 80cm.