Arduino powered radio alarm clock – part 1

I had an idea to build an Arduino based radio alarm clock by re-purposing some other components I had lying around from other projects:

  • an Arduino Uno
  • an Adafruit 16×2 RGB LCD Pi Plate (for the display and control buttons)
  • an Adafruit Ultimate GPS breakout (for the time – what better way, albeit slightly over-engineered, to get the current time if not from GPS signals?)

The only part missing was an FM radio tuner. I was wondering how easy it would be to build a radio tuner from scratch (but not sure how I’d control it via the Arduino), so decided to take the easy approach to get started and use a TEA5767 based FM tuner on a chip. To make it even easier, I got a TEA5767 based breakout board for $5 on ebay that includes two jacks, one for an antenna and one for audio out.

Simon Monk has an Arduino library for the TEA5767 that has one function call to set the tuner frequency.

So far, pretty easy going. I have a start on combining the LCD to display time and GPS coords here. Now to add the radio library, add some controls from the Pi Plate buttons, and I’m almost there!

wp-1451374679689.jpg

Wiring an Adafruit i2c LCD PiPlate to an Arduino (update 2)

I just dug my Arduino and LCD Pi Plate out of the cupboard for a little project. When I last posted about the PiPlate to Arduino wiring, I linked to a page that showed the names of the GPIO pins, but not the numbers I was referring to. Here is a better reference for the GPIO pin numbers.

The PiPlate to Arduino pin wiring I had before is still correct, providing you’re using the same pin numbering as in the above linked article.

Wiring an Adafruit i2c LCD Pi Plate to an Arduino

I have an Adafruit i2c 2 line LCD Pi Plate that I’ve used for projects with my Raspberry Pi. It has a block of header pins that slot down onto the GPIO pins on the Pi. It seems that it’s pretty similar to other LCDs for the Arduino, so with some reading around and experimenting, it does wire up and work perfectly with the Arduino too. This post gave the me starting point for what pins wired to where.

In summary, this is how I wired it up – the Raspberry Pi pin references are the pin names that the Pi Plate would normally connect to, and which Arduino pins I connected them to:

Pi Plate Pin -> Arduino Pin

Pin2 -> 5v

Pin6/grnd -> grnd

Pin3 -> A4/SDA

Pin5 -> A5/SCL

The Adafruit LCD Arduino library works with the LCD Pi Plate without any other changes.