Author Topic: Micro RDS i2c  (Read 10010 times)

drlucas

  • Newbie
  • *
  • Posts: 3
Re: Micro RDS i2c
« Reply #15 on: March 10, 2014, 11:07:42 am »
Thanks Jan for the quick response.

Is this the document you are referencing - http://pira.cz/rds/mrds192.pdf ?

I ask because it looks really promising - The I2C bus implemented fully meets the I2C specification with respect to the bus timing specified in section 2.0. It’s also compatible with I2C serial EEPROM’s so the control algorithms can be the same. That said, I'll consider myself new with interfacing to devices over i2c (my limited knowledge of serial interfaces come from either out of band management through old USR modems or cisco 2501 router).

My main objective is only to write out data to the chip (not so much to read RDS data stream) so I'll go over the pdf a few times and see what this is going to take to get going on this device...it has general purpose IO ports, so maybe after I watch a few videos too I'll be able to figure this out - this one still is a bit technical for me...but I hope I'll get there. http://www.raspberrypi.org/archives/1417

Thanks!
Ryan

The MRDS192 address is 0xD6 for write and 0xD7 for read. This old chip however has some clock timing limitations (see the pdf) so you'll probably not be able to control it using hardware based I2C peripheral. If you can access some kind of parallel port on your device, it would be possible to create the control waveforms programmatically.

Jan

  • Hero Member
  • *****
  • Posts: 567
Re: Micro RDS i2c
« Reply #16 on: March 10, 2014, 11:27:10 am »
Yes, that's the document. An example of control is at http://pira.cz/rds/miniiicex.gif

drlucas

  • Newbie
  • *
  • Posts: 3
Re: Micro RDS i2c
« Reply #17 on: March 25, 2014, 01:56:13 am »
Just a quick update.... with some help from the author or PIGPIO over on the raspberrypi.org forums I was able to get the mini to write out to the chip. So far, I have just changed the data from address 0x02 to 0x09 to display something festive. The physical connection on the Pi was I had to connect pin 6 and 7 on the chip to a pair of pins on the Pi. I'm amazed, and happy to see this working. Just google raspberry pi bit bang RDS and you'll see what is needed to get this to work. 
   
   s.S()
   s.TX(214)
   s.TX(02)
   s.TX(72)
   s.TX(79)
   s.TX(72)
   s.TX(79)
   s.TX(72)
   s.TX(79)
   s.TX(72)
   s.TX(79)
   s.E()
   s.cancel()