For my next "why me" question...
I'm working on a version of the Optiboot (Arduino) bootloader for the Tiny0, tiny1, and mega0 chips.
Things are going reasonably well; the new NVM architecture is comparatively pleasant to deal with.
EXCEPT FOR MY ATmega4809 Xplained Pro board. It talks the STK500v1 protocol with avrdude just fine, sends the signature, fakes the various answers that Optiboot fakes, successfully reads flash.
But a "program page" command hangs after sending the first page of data to be programmed.
Poking around in the debugger, it seems that the bootloader is receiving 4 bytes fewer than avrdude thinks it is sending. :-(
This behavior is observed regardless of the UART bitrate.
The same bootloader code (although, compiledfor different UART pins, and with different USB/Serial converters) works fine on Curiosity Nano 4899, and on some home-built "bare board" 4809s.
It turns out that the same bootloader code, IN THE SAME Xplained board, works fine on a PC. (thus the adventures here: https://www.avrfreaks.net/commen... )
So... are there any known problems with the EDBG firmware affecting data transparency on a Mac? I'll note that the 4809 has a page size of 128bytes, and with the STK500v1 protocol in use, the full message sent to the EDBG is 128+4 bytes long - isn't 128 bytes some USB message max? Could the EDBG USB firmware be slightly broken in a way that causes failures with Mac, but not with a PC?
Any other ideas?