So i made a circuit but 1st tested on breadboard the components everything works fine but after soldering everything on circuit nothing working I mean I2C, i thought it's because of the pullup resistors and I added 4.7k A5 and A4 to 3.3v, because all my modules are 3.3v.
After adding the pullups resistors the circuit stop working, i added a led on the loop and the led stops working it's like restarting or something.
I use jumper wires for the I2C, tried almost everything and nothing is working
I added 4.7k A5 and A4 to 3.3v, because all my modules are 3.3v.
Is the Arduino 3v3?
If you have exactly the same circuit on a PCB as a breadboard then (with this simple stuff) it will work. Did you stuff up somewhere with the soldered version?
Reread your post. There is only one response anyone could give to your post :
What circuit ? (what arduino ? what modules ?)
Is the Arduino 3v3?
If you have exactly the same circuit on a PCB as a breadboard then (with this simple stuff) it will work. Did you stuff up somewhere with the soldered version?
the arduino atmega328 is working at 5v but while testing on breadboard i didn't used pullup resistors only what the modules got so i thought it gonna work, made the circuit soldered everything and it's not working,
ithought it's because of the pullups and tried some 4.7k but still is not working.
Reread your post. There is only one response anyone could give to your post :
What circuit ? (what arduino ? what modules ?)
Atmega328p, module BMP180, sending from master to slave saving on sd card.
that's my setup at this moment I2C
You can't combine 5V and 3.3V circuits without level shifters. The arduino should be running at 5V, not 3.3V. What is your clock frequency for the ATmega328 ? If 16 Mhz, you need to run it at 5v and use level shifters for the 3.3V module connections.
This board is 5V compliant - a 3.3V regulator and a i2c level shifter circuit is included so you can use this sensor safely with 5V logic and power.
Power the module from 5V on the Vin pin. Run the arduino at 5V.
Look at the schematic on page 10 of the datasheet
The module comes with pullup resistors. You should NOT ADD more !
Can't understand what you really mean, you mean I can't use 3.3v modules thru I2C or I can't combine 5v and 3.3v in the same I2C ?
in my i2c I use only 3.3v module, if you mean about the 328p's that I use I tested on breadboard and it's working fine as it is now but somehow it's not working on the PCB
EDIT:
I understand about the lvl shifter but how comes it worked really nice when i tested on breadboad?
without any lvl shifter
Read my post AGAIN.
I crossed out the comment about level shifters.
Look at the datasheet.
The arduino should run on 5V and BMP180 should be powered by 5V on it's Vin pin. I stated this clearly. Why don't you understand ?
LOOK AT YOUR MODULE !
It has a "Vin" pin . ( that's where you shiuld connect 5V from arduino)
Read my post AGAIN.
I crossed out the comment about level shifters.
Look at the datasheet.
The arduino should run on 5V and BMP180 should be powered by 5V on it's Vin pin. I stated this clearly. Why don't you understand ?
LOOK AT YOUR MODULE !
It has a "Vin" pin . ( that's where you shiuld connect 5V from arduino)
I understand
be cool
But my question is (even if it's working, gonna test in few minits) what im gonna do about the 3.3v modules?
can't I improvise something and skip the lvl shifter?
So I connected the BMP180 to 5v, thru I2C and for some kind of reason the Master chip stops transmitting because of the BMP, everything on the circuit works fine but the BMP for no reason stops the I2C and it's like making the chips restarting or something like that
UPdate
Let me explain 1st something, when i done the test on breadboard everything worked fine so I decided to build some circuit so I made 2 of them, after soldering everything components/modules I decided to test them again so what I done is I powered up once PCB with a battery and the other one with another battery.
There was a problem with BMP180 and thanks for helping changed to 5v but there was another problem as well the battery
one battery is 8v and the other one is 6v, using some diodes and regulators the voltage get's down to 4.5 or lower, the 328p can run with no problem but while using a multimeter i saw that I2C had only 4v, connecting both circuits with the same 8v battery i got perfectly normal lvl voltages 5v and everything is working.
btw can I run the MPU6050 at 5v?
Datasheet page 8 say that it runs at 3.46v
https://www.cdiweb.com/datasheets/invensense/MPU-6050_DataSheet_V3%204.pdf
but reading on this forum which i found on google people say that they used mpu6050 with 5v as well
Any suggestions about BMP6050? I don't want to burn it.
Either use a level shifter or rip out any pullup connected to 5V. You can use 3.3V pull-ups on a 5V system but the noise margin is lower. The Arduino and other modules never drive the I2C lines high, so they will never drive 5V into the line. 3.3V will be read as a logic HIGH by a 5V system, but only just.
Since this requires removing components from the Arduino without damaging anything else, this is not normally done. You need some good desoldering tools and the skills to use them properly.
So use a level shifter.
But I don't use arduino, i use my own circuit my own PCB.
A level shifter it's a nice idea but my circuits are already made I can't add anything else, i already added some jumper wires, I don't want to make it worst 