Paul Selkirk wrote: > >> It appears that the AVR is programmed through a 6-pin SPI header with a > >> usbtiny programmer, but we will need a software-based upgrade path (PC > >> -> STM32 -> AVR). > > > > That's not possible on the Alpha board since the STM32 is not > > connected in parallel with the ISP header. .. > On the AVR, there is public domain I2C master and slave code.
Just a technical comment on this - it might certainly be possible to implement a "software-assisted" firmware updated method for the AVR, where a software running on the AVR does the actual flashing. But the hardware programming interface for the AVR is only that ISP header, a blank AVR e.g. can not be programmed any other way, and the same goes in case a "software-assisted" update has problems. Another option is to use a 4-lead cable between the ISP header and some GPIO block either for FPGA or STM32, and implement ISP programming there - that way everything is self-hosted on the Alpha, but updates still require human consent. I'm sure there are open ISP programmer implementations which could be re-used. That's all for development. For final use I too agree that it's a feature if the AVR can't be reprogrammed so easily - actually that probably goes for most of the programmable parts. //Peter _______________________________________________ Tech mailing list Tech@cryptech.is https://lists.cryptech.is/listinfo/tech