-3

I'm hoping for a review of this circuit. I'm looking to make a little IoT device thats powered of a USB mini port or from Vin. There is the MCU, a few sensors, a GPS unit and a RF module.

Any suggestions or comments would be welcome.

enter image description here

Updated Schematic

I think I got most of the suggestions, though the USB lines still need a TSV. I'm just try to read up on it before I add anything.

I did add an EEPROM to this that was not in the previous one.

enter image description here

Justin808
  • 446
  • 1
  • 4
  • 12

2 Answers2

3

Your main problem here is a lack of input protection -- at a minimum, you should have:

  1. A transient voltage suppressor network for the USB pins, including Vbus (you can get a multi-TVS/clamp-diode network designed for USB apps in a small SMT package nowadays)
  2. Reverse polarity protection for Vin! Right now, plugging in a negative supply = fried board. Given the application, ye olde series Schottky (MBRS120 or equivalent) is more than adequate.
  3. A transient voltage suppressor for the Vin connection -- I use a bidirectional TVSS upstream of the reverse polarity protection, but you can use a unidirectional device downstream of the reverse polarity protection as well
  4. Overcurrent protection on both Vin and Vbus -- a Polyfuse type device can be used for this.

Extra input filtering (such as a common-mode choke or ferrites on Vin) can be deployed if needed/desired, and will improve the board's EMC performance.

Beyond that, you need to specify C6 -- 4.7µF is adequate here, and already on your BOM too. Furthermore, you are backpowering your USB port when you are in a self-powered configuration, which is a no-no as it fries some USB hosts -- another MBRS120/... Schottky from Vbus to the "+5V" will fix that. Since you aren't using the +5V line for anything, either, I'd remove C21/C22 and the 5V reg entirely if I were in your shoes.

Last but not least, two more things. First, a resistor divider (say 4.7k over 10k) from Vbus to a port pin is recommended -- this allows for USB host presence detection. Finally, I would put another 4.7µF capacitor on the 3.3V supply to the RF module as RF modules tend to be a bit piggy when transmitting, and you don't want the module browning out itself or other parts of the system during that.

ThreePhaseEel
  • 8,858
  • 4
  • 26
  • 41
2

This question is quite broad (EE.SE prefers when questions have more specific questions about specific parts of the circuit), but here are a couple observations:

  • C22 and C6 have no value.

  • None of your ICs/modules/connectors have reference designators.

  • Very little or no bulk decoupling on the 3V3 rail (depending on the value of C6).

  • /RST appears to be floating.

  • No pullups on SDA/SCL. Maybe one of your devices is a module with onboard pullups, if so, notate as such.

  • Can't find anything connected to Vin.

  • CS on LPS25H is has an upside-down supply symbol.

  • You would do well to add a few more direct connections instead of relying on net names (keep the net names, but add wires on certain things. I2C for example).

  • I don't recognize the schematic software package used, but your regulator symbols look awfully sloppy.

Also, read this.

In general, spend a bit of time cleaning up the schematic, and double-check all your datasheets to make sure all pins float the right direction.

uint128_t
  • 8,664
  • 6
  • 26
  • 28