Is it possible for one AVR controller to program the flash memory of another one ?
Certainly. That is how an STK500 and ATAVRISP and ATAVRISP2 and Dragon and many similar systems work. The "Buttload" project for the Butterfly does that. Atmel has an app note on it (AVR910?) with schematics and source code. Others have posted revised versions here in the past, with improvements and ports to different AVR models.
You can put lipstick on a pig, but it is still a pig.
I've never met a pig I didn't like, as long as you have some salt and pepper.
thanx, I'll give it a read
© 2019 Microchip Technology Inc.