Blue Pill / STM32 Noise Pickup
I ran into an interesting phenomenom while troubleshooting my Blue Pill / STM32 based Onstep system. The symptom was that intermitently, the Onstep would not boot up on power up as evidenced by behaviors such as the tracking LED not coming up and the connection to the SHC failing.
Long story short, it turned out to be noise pickup on the wires connecting to Boot/Run six pin header. A typical non-Onstep Blue Pill application would not have wires extending these pins, rather would have jumpers.
I built my Onstep inside a fairly tight box which includes a number of noise sources (a 12 to 24 volt switching converter and a 24 to 12 volt switching regulator...to allow 12 volt battery operation). The wires from the Boot/Run header go to a Run/Program switch. Repeated experimentation where I unplugged these wires and replaced them with jumpers on the header showed that the wires were the source of the problem.
I was able to reroute the wires inside the enclosure in a way that has completely eliminated the intermittent problem. Clearly, all systems are somewhat different in terms of wire routing and I would guess most don't have the noise sources in my design, however I would suggest that when troubleshooting Blue pill designs and wires are used to extend the Run/Program operation, that noise pickup be considered as a source of problems.