hmc5883l with built-in logic converter.

Hello,

Configuration:

  1. Arduino 1280 with disabled I2C internal pull-ups
  2. HMC5883L with voltage regulator and logic converter:
    http://www.ebay.com/itm/HMC5883L-Triple-Axis-Compass-Magnetometer-Sensor-module-board-/160708844256?pt=LH_DefaultDomain_0&hash=item256afe5ae0#ht_562wt_1138
  3. ADXL345:
    http://www.ebay.com/itm/Arduino-ADXL345-Triple-Axis-Accelerometer-Breakout-Module-/270813689450?pt=LH_DefaultDomain_0&hash=item3f0dc0f66a

Software used is MultiWii code (http://multiwii.googlecode.com/files/MultiWii_1_9.zip)

All items are connected in parallel to Arduino (VCC(sensors) <-> 3v3(Arduino)) without any additional elements (resistors etc).
So, when sensors are connected independetly they work great. However, when they are both connected they give some random values.

What is the problem ? May it be because of regulator and converter and it's needed to remove them somehow ?

The compass module doesn't have a schematic...

I've just received it.

ADXL345 Schematic.pdf (18.4 KB)

Can somebody suggest how to bypass such LLC ?

Well the logic level converter looks like it should work nicely, even at 3V3, since pulling the FET's source low will turn on the FET and pull drain down too, and pulling drain down will pull source down via the inbuilt diode... We know each circuit works independently, so perhaps one circuit loads the other too much. Is the compass's supply high enough when fed from 3V3 into its regulator? You could try a test sketch to switch SDA and SCL very slowly and look at the voltages (assuming you can get a probe on the right traces...)

Are both devices being driven at the same speed BTW?