greatscottgadgets / apollo

microcontroller-based FPGA / JTAG programmer
BSD 3-Clause "New" or "Revised" License
63 stars 30 forks source link

PROGRAM button doesn't toggle USB switch #38

Closed mossmann closed 5 months ago

mossmann commented 7 months ago

It would be nice to be able to toggle between Apollo CONTROL mode and FPGA CONTROL mode.

mossmann commented 5 months ago

After finding some confusing edge cases while testing #49, I've had second thoughts about the whole idea of toggling states with the PROGRAM button. Currently PROGRAM does two things: It forces the FPGA offline, and it brings Apollo up on the CONTROL port. Neither of those things is exactly toggleable; the FPGA can come back online in multiple ways; CONTROL can be handed back to the FPGA, but that only has an effect if the FPGA is brought online with gateware that asks for it. You can already toggle between the most common two states by alternating PROGRAM and RESET. I'm not seeing a clear benefit of being able to toggle states with just PROGRAM, and I think it makes things more confusing.