The Bus Pirate v2go shipped with 10K ohm pull-up resistors (R20-23). We modded our Bus Pirate with a 2K pull-up resistor so we don’t need an external resistor to work with 1-Wire devices. Pull-up resistors larger than 2.2K ohms don’t provide enough current for parasitically powered 1-Wire parts. Since we only need the bigger resistor for the 1-Wire protocol, we only replaced the pull-up resistor on the MOSI pin (R23).
Read more about our mod after the break.
10K is a weak pull-up resistor, but it’s worked for everything except parasitic 1-Wire devices that draw power from the pull-up resistor. The 3EEPROM explorer board demo uses an external 1.8K ohm pull-up resistor to get around this limitation.
A CD4066 switch enables and disables the Bus Pirate’s on-board pull-up resistors. We checked the CD4066 datasheet [PDF] to see now much current it can handle. It should be able to pass up to 10ma on any one pin.
We then used an online Ohm’s Law calculator to find the amount of current that would go through the resistors if they were shorted directly to ground. We calculated currents for the maximum possible pull-up resistor voltage (5volts).
The existing 10K resistors pass a maximum of 0.5mA at 5volts, a 2K resistor allows 2.5mA through. Since we’re only changing the MOSI pull-up resistor, 4mA total draw should be well within the current handling abilities of the CD4066.
Finally, we used a soldering iron to heat both sides of R23 until we could lift it from the PCB with tweezers. We replaced it with a 2K ohm 0805-sized resistor. The left-over solder from the previous resistor was enough to hold the new resistor, we didn’t need extra.
Please ignore our clumsy soldering in the video, it was hard to work around the tripod and camera. The noise is the fume extractor.
This image shows the mod to R23 (2001), and the three original 10K pull-up resistors (103).
Should the Bus Pirate v3 ship with a 2K ohm resistor on the MOSI pin for out-of-the-box compatibility with 1-wire devices?