Ian @ Dangerous Prototypes's Avatar

Ian @ Dangerous Prototypes

@buspirate

Ian@dangerousprototypes. Slacker hacker, Instructable author, Hack a Day writer, Purveyor of hardware at Dangerous Prototypes and DirtyPCBs. Organizer of Hacker Camp Shenzhen. I made pink capacitors once too. We're also on: @buspirate@mastodon.social

1,336
Followers
45
Following
656
Posts
21.09.2023
Joined
Posts Following

Latest posts by Ian @ Dangerous Prototypes @buspirate

Post image

This should be the final production version of the DDR4 adapter board. Did a last minute revision to add reverse polarity protection to the 9 volt programming voltage connection. Prototypes are in production now, after a final test we'll make a small batch.

11.12.2025 11:45 ๐Ÿ‘ 5 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Post image

Automate your Bus Pirate with Rust programs using a crate that neatly abstracts the BPIO2 flatbuffer interface:

github.com/DangerousPro...

09.12.2025 11:24 ๐Ÿ‘ 2 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
BPIO2 FlatBuffers Interface Bus Pirate FlatBuffers interface (BPIO2) documentation

A Python library for Bus Pirate automation. This simple wrapper for the BPIO2 FlatBuffers interface makes scripting easy. Includes examples for I2C, SPI, and 1-Wire protocols - and a SPI flash read/write demo. Much cleaner than raw FlatBuffers.

tinyurl.com/ykxdpv7v

05.12.2025 12:31 ๐Ÿ‘ 5 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
GitHub - DangerousPrototypes/BusPirate-BPIO2-flatbuffer-interface: Libraries and tooling to use the Bus Pirate 5+ BPIO2 flatbuffer interface from multiple languages and scripts Libraries and tooling to use the Bus Pirate 5+ BPIO2 flatbuffer interface from multiple languages and scripts - DangerousPrototypes/BusPirate-BPIO2-flatbuffer-interface

Download Bus Pirate FlatBuffer Tooling for C, C++, C#, Dart, Go, Java, JavaScript, Kotlin, Lobster, Lua, PHP, Python, Rust, Swift, TypeScript:

github.com/DangerousPro...

04.12.2025 13:40 ๐Ÿ‘ 3 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Post image Post image Post image

The interface has three main pairs of Request/Response tables:
Status - Check the status and read pin states.
Configuration - Configure mode, settings and hardware.
Data - Send and receive data in the configured protocol.

docs.buspirate.com/docs/binmode...

04.12.2025 13:40 ๐Ÿ‘ 3 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Post image

Extensive optional debug output from the flat buffer interface can be printed to the terminal. Know exactly what's happening under the hood when you're writing a new script.

04.12.2025 13:40 ๐Ÿ‘ 2 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Post image Post image

Control your Bus Pirate from PC software with the simple FlatBuffers interface. Flatc(c) provides premade tooling for a bunch of languages including C/++/#, Python, Rust, Go, Java, etc. Include the tooling in your app/script and skip the low level protocol stuff.

04.12.2025 13:40 ๐Ÿ‘ 7 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
A PCB with two long sockets that can hold DDR5 SODIMM and UDIMM RAM modules.

A PCB with two long sockets that can hold DDR5 SODIMM and UDIMM RAM modules.

As of this morning the DDR5 adapter plank is on back order for about 2 weeks. You might be able to score one at a distributor (PiHut UK) earlier.

The DDR4 plank I'm working on now should be in production just in time for a messy Spring Festival delay :)

03.12.2025 13:32 ๐Ÿ‘ 3 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

The ddr4 command to read/write/probe DDR4 is now live in the main Bus Pirate firmware. For now you'll need to provide your own adapter, but we'll have a UDIMM/SODIMM adapter available soon.

02.12.2025 14:38 ๐Ÿ‘ 3 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Post image Post image

DDR4 UDIMM (desktop style)RAM stick arrived for a final test of the adapter plank. The new Bus Pirate 'ddr4' command correctly identifies the module by reading the SPD data.

I'm going to make a few tweaks to the adapter, and this should be the final production revision.

02.12.2025 14:38 ๐Ÿ‘ 2 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Post image

Power up test looks good. No smoke. Commands to clear and set write protection are successful.

I'm going to make a slight change to the control circuit:
- Use a FET to control the optocoupler for more 'on' current.
- Add a resistor divider to monitor the 9V output.

28.11.2025 13:05 ๐Ÿ‘ 5 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Post image Post image Post image

Big moment: will magic smoke escape?

DDR4 wants 9 volts on address pin 0 before it allows changes to write protection.

We're using a bench supply, to be replaced by a 9 V battery later. The High Voltage is applied when needed by an optocoupler and Bus Pirate pin.

28.11.2025 13:05 ๐Ÿ‘ 2 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Preview
DDR4 SPD read/write adapter DDR4 SPD plank arrived, and a used SODIMM just fell through the mail slot. The wrong header was soldered Still need to figure out the 9volt supply, probably a 9 volt battery. SA1 is held high to...

Next I'll add a Bus Pirate command to read/write/backup the SPD chip. DDR5 is already supported, but DDR4 is a bit more complicated as it needs a 9 volt supply to change the write protection bits.

Explanation of encoding and development updates in the forum

forum.buspirate.com/t/ddr4-spd-r...

26.11.2025 14:05 ๐Ÿ‘ 2 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Post image Post image

Made a prototype adapter for reading/writing previous gen DDR4 RAM sticks.

Dumping the contents via I2C is easy. We can tell that this is a DDR4 SODIMM made in 2018 by Kingston with Micron DRAM chips. S/N ACR24D4S7S8MB-4.

There's some manuf. specific data too which may be extended profile info.

26.11.2025 14:05 ๐Ÿ‘ 9 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0

Thank you! Will do this tomorrow!

31.10.2025 20:44 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
GPSBabel: convert, upload, download data from GPS and Map programs

Ian, to your GPS resource, please consider adding the cross-platform, free, and open-source GPSBabel. CLI and GUI. Twenty four years & counting. It can reduce, interpolate, toss out junk, etc.

Coming soon (merged to Git): Kalman filter

www.gpsbabel.org Specfically
www.gpsbabel.org/htmldoc-deve...

31.10.2025 07:12 ๐Ÿ‘ 3 ๐Ÿ” 1 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0

It's my first real dive into GNSS and it's all a bit overwhelming :) I have had a lot of fun though. The next module to arrive is a big upgrade and I'm excited to see how it does.

31.10.2025 20:36 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Post image

Anyone going to 39C3 in Hamburg this December? It's my first, and I hope we get a chance to meet up if you'll be there too!

31.10.2025 12:59 ๐Ÿ‘ 2 ๐Ÿ” 1 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
DirtyPCBs.com

Get one here: tinyurl.com/mu99kr29

30.10.2025 12:59 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Post image Post image

A huge thanks to everyone in the forum for testing all the connectors! Read about the design here: tinyurl.com/nhdacemz

30.10.2025 12:59 ๐Ÿ‘ 2 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Post image Post image

New I2C quick connect adapter plank! One board to rule them all - supports Qwiic, Stemma (3P/4P/QT), Grove, Gravity, and Breakout Garden connectors. Quick prototyping with the Bus Pirate and your favorite solder-free ecosystem.

30.10.2025 12:59 ๐Ÿ‘ 6 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Post image Post image

New tutorial: Learn NMEA GPS modules with the Bus Pirate! Connect any GPS module via UART, decode NMEA sentences in real-time, and extract coordinates/satellite data. Includes a full teardown of common NMEA sentences. docs.buspirate.com/docs/devices...

29.10.2025 12:32 ๐Ÿ‘ 3 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Command Reference To run this asciicast without javascript, use asciinema play /sizzle/sizzle-cast.json with Asciinema The Bus Pirate is a versatile debugging and development tool for working with various communicatio...

The Bus Pirate has a NMEA GPS decoder built into the UART mode, and the latest firmware includes a new release of the MINMEA library: tinyurl.com/3yfy3b49

28.10.2025 13:21 ๐Ÿ‘ 4 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Post image

Also thought it would be fun to check out multiple frequency GPS antennas as an alternative to the typical ceramic block. It's a lot easier to debug GPS on my work bench with one of these in the window, highly recommended.

28.10.2025 13:21 ๐Ÿ‘ 4 ๐Ÿ” 0 ๐Ÿ’ฌ 2 ๐Ÿ“Œ 0
Post image

Time to upgrade a 10-year-old GPS! New modules track all 4 GNSS systems (GPS/BeiDuo/GLONASS/Galileo) for faster locks & better accuracy. Ublox NEO-M9N ($10) is common and solid, but the ZhongKeWei ATGM336H-F8N76 ($6.50) is cheaper with more frequencies/satellites. Any other recs?

28.10.2025 13:21 ๐Ÿ‘ 6 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Post image Post image Post image

The latest Bus Pirate firmware has a usbpd command to probe and trigger USB C power delivery. Select a fixed voltage profile, or specify a voltage if PPS is supported. We used a generic AP33772S breakout board for development, but a Bus Pirate USB PD plank prototype is in the works.

27.10.2025 12:52 ๐Ÿ‘ 11 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Preview
AP33772SDKZ USB-C Power delivery management Actually I think it was something else. I had to move all the print functions to the local file or they just didnโ€™t get run. Not sure what is going on, but I wanted to customize them anyways so it mak...

Follow alone as we develop a USB PD adapter plank and Bus Pirate firmware support in the forum: forum.buspirate.com/t/ap33772sdk...

24.10.2025 11:28 ๐Ÿ‘ 2 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Post image Post image

A single Samsung phone charger label matches the PD profile: with two fixed (5/9v) and 2 adjustable (3.3-5.9v, 3.3-11v) outputs. What do you think is going on? My wild guess is that the insides of the chargers evolve faster than the injection molded/silkscreened enclosure.

24.10.2025 11:28 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Post image Post image

My favorite charger from Taobao lists all the fixed voltage nodes (5/9/12/15/20) and a single adjustable 3.3-11v output. Once again, the PD offers an unlabeled option: 3.3-16v adjustable output.

24.10.2025 11:28 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Post image Post image

This $12 "emergency" charger from the supermarket checkout lists 5/9/12/15/20volt fixed output. However, the PD offers two additional adjustable output profiles: 3.3-5.9v and 3.3-11v. Another bonus!

24.10.2025 11:28 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0