I need to interface the Wii Camera/Pixart sensor with Arduino, however I can't find the I2C circuit anywhere in UK/EU. I would order from America, but the $30 shipping fee is a bit of a hit for a chip and a surface mount adaptor...
I'm new to electronics, and still being baffled by terminology, and I'm not sure if the similar chips I have managed to find are similar enough to be suitable.
The parts in question are LTC4301LCMS8#PBF and a MSOP-8/SOT-23-8 to 8-pin DIP adapter. Closest to the chip I've found is a LTC4300CMS8.
Alternatively, is there any other easier to interface IR sensor that can track 2 IR LED's?
Thanks for reading and any help, it's massively appreciated.
I have had a look at the two data sheets and they do look very similar. The 4301 has a /ready output that is lacking in the 40300 and it also provides a bit more in the way of hot swap protection.
I haven't seen the circuit you are trying to make with it but from the function alone it should be compatible. Also there are other ways of matching the I2C voltage if that's the only function you need.
Since the arduino supplies 3v3 you can skip the level conversion (the two diodes and condensators) IF you have a oszillator running at 3V3.
I use this one http://www.hosonic.com/pdf/frequency/f23.pdf
which I know NOW seems to work fine with the 3V3 supply from my Arduino-Mega.
Alltogher I have:
3V3 to Pixart 1
GND to Pixart 2
(Pixart 3 ist bridged, so no connection needed)
(Pixart 4 ist not connected)
I2C SCL to Pixart 5 (pullups)
I2C SDA to Pixart 6 (pullups)
CLK output from the oszillator to Pixart 7
Pixart 8 (Reset) via 22kO to 3V3 and via 100nF to mass.
3V3 to VCC input on the oszillator
GND to GND input on the oszillator
The I2C lines need to be pulled high. So as in the schematic I used 2.2kO resistors.
Other things:
The sample programs seem to be wrong for at least my wiimotes.
The slave address is often described to be 0xB0. As some helfpull guys told me, its actually 0x58 without shifting needed.
To shed some light on those devices you should try to scan the I2C bus with a script like http://todbot.com/blog/2009/11/29/i2cscanner-pde-arduino-as-i2c-bus-scanner/
????
They normally run at some value of Hz not volts.
The slave address is often described to be 0xB0.
yes it is
As some helfpull guys told me, its actually 0x58 without shifting needed.
This is the same address shifted. This is the address to use on an arduino because the arduino doesn't include the least significant read / write bit in the address.
Might be a misunderstanding. When I say "running at" I mean the power supply. In the specs the Hosonic-1C has 5V and a tolerance of +/- 10%.
The Pixart camera "runs at" 3V3 so you might need to convert the levels.
In practice the HO-11C works fine with 3V3 too.
The oszillating frequency I currently use is 24mHz. But the Pixart cam is said to be working with anything between 16 and 25mHz.
The original oszillator in my wiimotes is nominated 24.7mHz.
Of course its the "same" address, since the arduino uses only 7 bit and decides on the r/w-bit depending on the function called. You can find the corresponding shifts in the twi library.
But that doesnt change the fact, that it still needs to work. If you scan the bus via twi_writeTo() then you will usually get a response on 0x58.
(of course only if you dont shift beforhand)
Less shifting ->Less confusion, especially for beginners.
About the rest. I suppose that truenash bases his questions on something like the instructables tutorial.
There the LTC is mentioned.
But with the Arduino supplying 3V3 directy, it is not needed.
Might you have the specs of the Pixart cam? As far as I know Pixart successfully "not-published" them to this day.
Other cameras e.g. the PAC207BCA are nominated to have power consumption < 25mA.
(ironically this one includes level conversion and USB-Interface)
Up till now it runs perfectly stable on my Arduino mega for many hours straight.
But you're right, of course. If you're going for a long-term use of the ir-cam, you should waste a few more thoughts on the powersupply.