Almost every charger and regulator out there nowadays has an absolute max of 6V. If you have a USB rated TVS and some capacitance on the 5V bus, you probably won't have problems there. You can use a high voltage cap if you want, and put it close to the barrel jack.
For buttons, use a series resistor (as large as you can accept without causing problems with your pullup or pulldown) and a shunt cap. Put the resistor near the button and put the cap near the IC where the signal goes. You probably don't need TVS on the buttons, but it is a good idea to put it in the layout (close to the IC) in case it is needed. A wide variety of 0402 sized ESD diodes are available. If you have a large series resistance between the ESD gun and the IC, the ESD diode will not have to dissipate much energy. The capacitor will help prevent steep dV/dt.
Most importantly, you need to test. You can't solve ESD analytically. You can give it your best shot, but then you need to test to verify.
The two main problems you get from ESD are:
- IC or transistor inputs damaged (fix with capacitance or ESD diodes
or TVS)
- poorly terminated inputs toggle due to pulse coupling and cause some undesired behavior such as reboot/reset/poweroff.
Rarely does ESD damage anything other than an IC input.
Also make sure you consider case 2. Any reset inputs or interrupt inputs need to be scrutinized. An internal 200k (or whatever) pullup may not be enough. You may want to add either a cap, or a stronger pullup/pulldown.
Finally, the best defense against ESD, when possible, is to keep the gun away from the components by recessing them within a plastic housing. That is mainly a mechanical design issue, though. If the gun tip cannot get near the components, there will be no discharge in the first place.
If you really want ESD protection there is no half-baked setups. ESD protection is annoying and usually only enforced in industries where quality control is essential because failures are costly (areospace) or deadly (medical). NASA's JPL (Jet Propulsion Lab) has a great training document describing how to control ESD.
ESD comes from several sources including
1) Humans, and clothing and chairs
2) Paper and other materials and surfaces that are susceptible to triboelectric charging
If you have a wrist strap, that's great, but your still going to build up quite a charge on clothing and still generate a few kV potential through the air. No your not shocking your boards by providing a path directly to ground through the board when people touch them, but you still have charging through the air. ESD lab coats are required to prevent this.
You also have materials that build up charge, paper is a nemesis and shouldn't be allowed near electronics. Wood is another bad material and there are lists to find out if the materials you have are bad for charging around electronics.
Wrist straps are a way to prevent ESD, but there are a few problems. If you don't know how much contact the wrist strap is making to the wrist, then it may not be doing anything, they make monitors that ensure the person wearing them is actually actively being 'grounded' (its not a 0 ohm ground, but enough to dissipate high voltages).
One way you could prevent ESD is by enclosing your electronics in a metal\conductive box of some kind. This would prevent electric fields from getting to the boards and keep people from touching them.
The biggest problem is personnel, if everybody doesn't buy in and the ESD rules aren't enforced, then you might as well not have them. I know there are places where you could get written up for not following the ESD rules. You don't need to be that strict, but try and incentivize good and deincentivize bad behavior.
Best Answer
Most differential RX circuits by their nature require that the amplifiers have CMFB (Common Mode Feedback) indeed, differential amplifiers are mostly useless w/o this. So the chip automatically compensates for this itself. Some chips will have the CMFB pin available for monitoring or external capacitance but that is not strictly necessary. Of course on startup and plug/ un-plug situation this is disturbed, which can mean that the signals hit against the ESD rails. But the higher level protocols of re-transmit deal with this situation.
Additionally, one some advanced differential signalling situations, there is active equalization upon startup, so this packet corruption at this level is understood and handled in this case.