Greetings Pi enthusiasts!
I've been talking about this over on Reddit but it seems like going to the source might be the best bet.
I made this thing:
I call it the FIVE-FOUR, as in "five volt, four amp." In a nutshell, or "TL;DR;" version if you prefer, it's what I think/hope is arguably the most feature-rich power switch for Pis that's ever been offered.
FIVE-FOUR is a smart power switch for 5-volt projects that sports a 4A nominal, 6A max power-MOSFET high-side load switch. When used with a single-board computer or microcontroller, you can enable "advanced" mode by removing a jumper and enable features like lag detection, crash detection, bad-boot/boot-loop detection, and bidirectional signaled shutdown (read: it can tell its connected load to shut itself down, after which it'll shut off power, or the connected load can tell it to shut down, after which it'll shut off power) thanks to an easy-to-set-up Python script that handles communications between it and its load. It does not require buses so those are free for project use, and only requires three addressable GPIO pins for the full feature set.
It works very, very well with Raspberry Pis. In fact, I have the prototype connected to a Pi3B+ (running DietPi) for testing. Shutdown is quick and clean in response to a quick button tap on my board, and if you "sudo shutdown now" on the Pi it sees this and switches off power to the Pi after it goes into its HALT state. This is much safer than using a switched USB cord, pulling the plug, etc. as it's completely automatic. It also works on non-Pi SBCs (e.g., Odroids, BeagleBones, etc. etc. etc.) and MCU dev boards (e.g., Arduino, STM32, etc. etc. etc.) or simpler 5-volt powered projects in "basic" on-off mode without all of the bells and/or whistles for supporting SBCs, but we're in Pi territory here so I'm concentrating on them for the purpose of this discussion.
Speaking of Pis, there's this:
Instead of having to fuss with sysfs export values, I have a config script built that makes setting up the Pi side as simple as picking which pins to use by pin number. (In this pic, I have a lag detection "heartbeat" from the Pi going out over pin 11, shutdown input line from the switch board on pin 13, and shutdown output line from the Pi on pin 15.) The config script automatically looks up what SBC it's running on and loads pinouts accordingly (and I have pinout info for it for most Pis and a few Odroids, with more to come). The software set should run with no changes on practically any Pi version running practically any Linux distro as long as it uses sysfs, and I plan on releasing an updated version to support sysfs's replacement, libgpiod, in the near future. I even have a one-line installer script set up for it to make it as easy as possible to get the whole thing up and running.
The full feature list is here, and there's a lot more to it that I haven't covered because this is getting all wall-o-texty as is it. (A taste: status LED with various patterns to show what mode it's running in, automatic start/restart, power-failure/low-battery detection, features can be disabled feature-by-feature to tailor how it works in any given project, works as a dumb basic on/off switch if desired by installing a jumper, etc. etc. etc. I packed a lot of stuff into a small form factor on this.)
Right now I'm planning on crowdfunding a production run of these starting (hopefully!) in February, so folks that are interested can drop by here and drop their email address to be notified/reminded once that starts. Current plans are for the board by itself to go for $19.95, and the board plus a kit including header cables, mounting hardware, and a mobo reset button for $24.95.
Thanks for looking, and feel free to ask questions!