First Project - Have i blown it up !?!

Hi

I have the new arduino board and can make the little led flash with the program!! I want to make a range finder so I bought a SRF08 ultrasound module. Now I have wires it up per the instructions but i don't have any 1k8 resistors. Will it work without them ?

What the heck does a resister do anyway ? Sorry but it doesn't make any sense to me at all yet. Could someone explain what they do and why they are needed in laymans terms.

many thanks

Tam

Here is the link to the instructions: Arduino Examples, SRF08, SRF10, SRF235

Tam

but i don't have any 1k8 resistors. Will it work without them ?

They are the 'pull-up' resistors for the I2C bus and the circuit will not work without them.

Could someone explain what they do and why they are needed in laymans terms.

They bring the I2C lines to a logic '1' any time the lines are otherwise inactive. The Arduino and the other devices connected to these lines have the capability of changing the level to '0'.

Don

thanks for the reply. Would you mind explaining why the resisters are needed - why wouldn't they be built into the sensor board ?

Tam

There probably are cases in which a resistor would not be needed, and it is easier to incorporate a resistor into a circuit by yourself than to remove one already on the board.

This may be completely false, it's just my thoughts on it.

thanks for the reply. Would you mind explaining why the resisters are needed - why wouldn't they be built into the sensor board ?

The clock and data wires on a I2C buss have to change direction depending on what direction the data is being sent to and from. So the data pin on a module at times has to be an input pin and other times switch to be an output pin. Because of this requirement plus the fact that the I2C standard allows many devices to be able to wire to the same 2 wire buss, there has to be an external means to make sure that the two lines are still held at a logic high level, even when no module is actively sending data.

The reason that modules don't normally install these resistors is that if you have more then two modules (Arduino + one module) wired to the buss then having every module supply a pull-up resistors would result in too low a resistance on the lines. Some modules do have the resistors installed, but add jumper clips so that you can remove their effect on the buss when another module is supplying the pull-ups.

All that being said, your circuit may work OK without wiring the external pull-ups, as the Arduino 2 wire library that supports the I2C function does enable the internal pull-up resistors for the two lines. This is a higher resistance then the recommended value, but does work if the distance to the external module is short enough. Try it and see if it works.

Lefty

thanks for the reply. Would you mind explaining why the resisters are needed - why wouldn't they be built into the sensor board ?

Tam

Lefty beat me to it and did a better job explaining this than I would have.

Don

I have four SRF02s equally spaced along about 80cm of ribbon cable working reliably using only the internal pull-ups using the Wire library.