A year ago we hacked together a portable SPI programmer for SPI chips like the ATtiny13a and ATMega328PB. It's LiPo powered and wireless network enabled. It's been our "bench buddy" and supports AVRdude over TCP as well as programming from the onboard SPIFFS.
https://gitlab.com/bradanlane/po...
Lately, we have starting to use ATtiny412 and ATMega4809 chips and needed the same or similar functionality for UPDI.
We have a working implementation of the original portable programmer which supports both SPI chips and UPDI chips. It uses a simple TCP interface which can be run from the command line with netcat (on Linux) or almost any TCP tool capable is sending data and receiving responses. This facilitates scripting and other automation. It can be used during the development cycle as well as for small batch production away from the computer.
The new tool handles upload and storage to SPIFFS; upload and flash; flash from SPIFFS; dump flash to SPIFFS; dump flash to terminal; read/right fuses; and reading chip details.
The hardware is a TTGO (ESP32 with TFT display and buttons) so it is relatively easy to create. No custom PCB needed.
https://gitlab.com/bradanlane/po...
The code is still quite cluttered and will get a lot of cleanup over the next couple of weeks. It's not code to teach "best practices" by any means, but some of the capability and implementation may be useful to others.
I'm happy to answer questions And entertain feature suggestions.