DFU bootloader has errors on new BlackPill F411

Post here first, or if you can't find a relevant section!
hdleng
Posts: 7
Joined: Fri Jan 15, 2021 11:44 pm
Location: Tucson, AZ, USA

Re: DFU bootloader has errors on new BlackPill F411

Post by hdleng »

In case anyone else is still looking for answers, I can verify that MrHazelnut's solution works. When I saw his suggestion not to use your fingers on the BOOT and RESET buttons, I thought bull***t!. I was WRONG!. Use a couple of pens as MrHazelnut suggested: it works. I don't know whether resistive coupling of fingers with pins or traces is involved. Maybe it's capacitive coupling. I was looking for all the more scientific sounding suggestions first.
GonzoG
Posts: 403
Joined: Wed Jan 15, 2020 11:30 am
Answers: 27
Location: Prudnik, Poland

Re: DFU bootloader has errors on new BlackPill F411

Post by GonzoG »

@hdleng
It's not that simple. In my case, I need to touch GND and reset board.
The problem with entering DFU is caused by floating RX1 pin (PA10). So if using finger touching GND it might be pulled to GND as PA10 is close to BOOT and RST buttons.
hdleng
Posts: 7
Joined: Fri Jan 15, 2021 11:44 pm
Location: Tucson, AZ, USA

Re: DFU bootloader has errors on new BlackPill F411

Post by hdleng »

GonzoG

I'm glad that you found a solution that works for you. I tested it, and it does not work for me. I suspect that there may be variability in the mcu's that cause them to respond differently to the various suggested solutions.
hdleng
Posts: 7
Joined: Fri Jan 15, 2021 11:44 pm
Location: Tucson, AZ, USA

Re: DFU bootloader has errors on new BlackPill F411

Post by hdleng »

Following up on GonzoG's recommendation, I ran an experiment. I placed a 10K pulldown resistor at A10. I can now use my finger to press the BOOT0 and RST buttons and reliably boot the the DFU bootloader.
wanderlg
Posts: 4
Joined: Thu Jun 09, 2022 6:05 pm

Re: DFU bootloader has errors on new BlackPill F411

Post by wanderlg »

Using the new bing chatbot I got this function that magically manages to put the STM32F401 in DFU mode. However, I've already tried doing this in the chatbot again and it can't reproduce the same code, and it even says that the code doesn't work when I show it what it created for me. LOL.
But yes, it works. here it is.

void (*jump_to_bootloader)(void) = (void (*)(void)) (*((uint32_t *) 0x1FFF0004));

just call the jump_to_bootloader() function; and will be in DFU mode.
Post Reply

Return to “General discussion”