I'm trying to use an I2C expander (Texas Instruments PFC8575C) from Sparkfun to communicate with MP3 Triggers from Sparkfun. I think my problem is with the baud rate. The MP3 trigger only accepts a 38.4Kbps baud rate. I think I may need to go with a conventional multiplex setup. Any help or suggestions would be greatly appreciated. I seem to be communicating with the I2C expander as evidenced by using a LED connected to the designated output. But the MP3 trigger is not getting the signal. I first developed my MP3 trigger code as Serial.begin and Serial.print where I can define my baud to the requirements of the MP3 trigger. And it seems to work fine with that code.
I couldn't find a data sheet for a Texas Instruments PFC8575C is that the right part?
How are you wiring it up? From the looks of it there is no need to go in on the serial port to the MP3 Trigger.
If you do use the serial port way in then is this connected to the PFC8575C? A link to that data sheet would allow me to help you more.
Hi Mike, its on the sparkfun page, looks like a type from the op, PCF not PFC:
datasheet, http://www.ti.com/lit/gpn/pcf8575c
the IC doesn't seem to care as long as the SCL speed is below 400Khz and the data is sent in one scl hi/low cycle.
PCF not PFC:
That's better. This is just an I2C port expander, I2C devices work with a protocol that supply the clock. Therefore you don't need to set it. It will work with anything up to the maximum rate. The I2C driver in the arduino actually works at 100KHz although you can hack the library to the faster 400KHz speed.
So baud rate is no problem. But then on the other hand you can't connect this device via it's serial port. How are you wiring this up, you can trigger it with just the PCF8575 or normal arduino pins. I am not clear why you are using the port expander.
Why I'm using the port expander is because I want to connect 3 of the MP3 Triggers. I'm just trying to get one working first before I try to make 3 work. I'm not having any trouble communicating with the port expander, it seems to be fine, but the MP3 trigger is not responding. I'm using the serial port of the MP3 trigger so that I can control the volume and there are a few other options available with the serial port also. I started the MP3 trigger coding as Serial.print to get the code right so I know the problem is'nt that part of code. Even getting the serial to work I initially forgot about the baud rate. It was set to 9600 either default or from another sketch I had that used Serial.print and after 2 days of playing with the code and reading and re-reading the data sheet I noticed the ststed baud rate in the data sheet and changed it in my code.
but the MP3 trigger is not responding.
Well first off make sure you are giving it a valid trigger signal. Ensure the grounds are connected together and use one of the normal output pins to connect to the trigger input. Make sure that this signal is going down to ground when you trigger it, measure this with either an oscilloscope or external LED and resistor.
If you seem to be feeding it with the right trigger input then it looks like the files on the flash card are not correct or the unit is in the wrong mode.
Just found this thread. Did you solve your problem? If you direct your MP3 Trigger questions and comments to the forum at makerjam dot com, I'll be able to respond faster. (Sorry - this board won't let me put a direct link in my first post!)
I didn't solve the problem with the I2C. I had never used I2C before and didn't think about the fact that the actual communication with the MP3 would be through the I2C and not through a seperate source such as the Serial Transmit pin. I suppose I could reconfigure the trigger to read the native I2C baud rate. But I went for an easier solution of using a simple Analog/Digital MUX Breakout board from Sparkfun. More wire connections but it seems to work good.