I made a custom pcb for a project that has a tps631000 switching buck boost regulator and a bme688 enviormental sensor, that can measure gasses. The tps gets its output vomtage fron a resistor divider. When I solder the bme688, the output voktage is 1.8v instead of 3.3v,but when i desolder the bme688, the outptut voltage goes to the desired 3.3v.
It sounds like you have a major design mistook, post an annotated schematic showing all connections, power sources etc.
The project has more parts than the regulator and the bme688. The circuit for the tps631000 can be seen in the "main voltage regulator" section and the one for the bme688 can be seen in the "enviromental sensor" section.
It appears to be correct, but I noticed two sets of pull up resistors for the I2C bus. You can test the regulator by placing an external load on it maybe about 120% of what you are connecting. I am also curious why the regulator feedback is wired through a connector and jumper? That may be part of your problem.
I put a set of pullup rezistors for all the sensors. Should I take them out and leave only one pair? That jumper was supposed to be on the output and was for debugging. The proboem is that it is happeing only when the bme688 is in, but none of the other sensors interfere with it. I tested the regulator in other, more demanding circuits and it worked, if that is what you refered to. Can you suggest a solution.
Thank you for your time.
Yeah, your I2C bus only needs one set of pull-ups for the whole bus. And I would make them 10K pull-ups.
Yes only one set, It does not matter which set. My preference is to place them at the furthest point from the processor. They need to be in about the 3.5K range. Depending on your layout and parts anything above about 5K can give you interment \ Flakey operation. The faster you run the I2C the more important this value becomes. None of the devices on the I2C bus source any current. It appears about 1 mA of current is in the ideal range.
By chance do you have another part you can try. Also tack on a load where the sensor is and see what happens.
I2C is an open drain so the sensors are only pulling the signal to ground, not pushing it high. If you want faster communication then something like an active terminator is going to give that to you. But based on the diagram there are no peripherals listed there that would need to operate at anything higher than i2C standard mode (100Kbps).
Also, I thought it was standard to have the pullups as close to the Master as possible. Not closer to the slave (and yes, we probably revisit that terminology but it is the standard, not my choice, so please don't get mad at me )
Thank you for your feedback. Can having more than one pullup cause issues?
No not as long as you do not exceed the current limit. However it will add capacitance and slow down the fall time. I put the pull up resistors far from the master because in my circuits it reduced reflections. Your diagram looks correct.
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.