greatscottgadgets / apollo

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

firmware.fpga_adv: replace UART reception with edge counter #67

Closed mossmann closed 2 months ago

mossmann commented 2 months ago

Because there is no crystal for the microcontroller on Cynthion, UART baud rate mismatch can result in a failure to receive FPGA advertisements. We only need one type of advertisement, so we're replacing the UART receiver with simpler pulse detection. We require a minimum number of pulses per measurement period in order to ignore glitches that occur during FPGA configuration.