So my compiled code has 8 kB size. I'm programming the ATtiny1614 via UPDI with pyupdi and the recommended wiring, with a USB-Serial adapter FT232RL. The default speed is 115200 baud and the max. working that I am using is 230400 baud (there is no documentation whatsoever anywhere so I had to guess the actual baudrate to use). It takes a long time to complete, around 10 to 20 seconds. And often it fails. The whole thing is a highly unstable process. Very frustrating.
Then I've seen a video from Atmel where they demonstrate their touch demo board. They flash the chip at maximum speed (in the Mbaud range I guess) and that 8 kB demo program is flashed in just 1 or 2 seconds! How did they do that? A different protocol? I think new ATtinys only have UPDI.
Then I read the datasheet. It actually suggests max. 225 kbps at the default 4 MHz UPDICLKSEL setting. I guess I could set it to 8 MHz which would allow 450 kbps. But how am I supposed to do that? There's a register for that, but I'm not in the position to execute any code that would write to registers. I want to copy my application code onto the device, not run some connection configuration app on it. I don't get what that UPDICLKSEL thing is about. Can somebody please explain? And is there any way to speed up that process and/or make it more robust so that it doesn't fail that often?