-
Notifications
You must be signed in to change notification settings - Fork 149
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Please add support for Black Pill F401CC Device #23
Comments
I suggest to use the WeAct Bootloader. In case is used a Black Pill is required to press the P0 button to enter in the boot mode There is also a HID Bootloader forked from the Serasidis' one but not tested from me |
@roboticboyer The WeAct Bootloader doesn't seem to integrate with Arduino IDE like the HID Bootloader does. Not only that, their fork of the HID Bootloader modifies the flag check, and thus also doesn't work with the HID Bootloader upload method in the Arduino IDE. I managed to get a working version, but I am unsure if it qualifies to be be merged into here. |
@roboticboyer I didn't put it up anywhere, expecting that people might be more comfortable building it themselves. However you can find it via this google drive link |
I have a Black Pill F401CC I tried with DFU: Also using an ST-Link programmer: Where I'm wrong? |
I used |
Thank you Is required to press the Button PA0 to enter in Boot mode? |
I used |
I have a WeAct BlackPill: http://zoobab.wikidot.com/stm32f401-devboard Those guys at WeAct are shooting themselves in the foot, as what people are interested in is Arduino IDE support, which cannot happen if the flashing tools are forked from BSD-licensed software and made proprietary. |
hello, sorry am a bit new to this device, and just wanted to know:
|
A compilation output of an Arduino sketch is a firmware for the device. A bootloader is firmware which helps you update the 'application' firmware (e.g. the Arduino sketch). The easiest / most reliable way I've found is to use an STLink. Whereas, I've found DFU to be ... finicky; sometimes only working if I hold down both the BOOT and NRST buttons for a long time (30s+), or not work at all. (Different levels of success depending on the OS / which particular dev board is used). This HID bootloader in this repo (IIUC) would allow updating the firmware when used with the hid flashing program (also in this repo). This particular fork of the HID bootloader is geared towards Arduino. -- The benefit being, you could update the firmware without needing to push any buttons on the dev board. - If you flash the bootloader with the correct configuration, this should let you upload from Arduino IDE. |
well i have the weact f411 here on platformio. and have been flashing it in dfu mode. pressing the button could plugin an stlink i suppose. its just more wires / cables but if you think i can have hid flashing without needing the buttons for this device? because that might seem worth it can then add a custom uploader cmdline in the platformio.ini file to call it however what confuses me, and makes me ask about butonless HID mode is because the README seems to say i still need to press some button... key instead of boot0, same difference really. in which case it does not achieve the set goal, and is no better than dfu mode for me. sorry for the confusion, but i am really confused by this. wherever i look online about it for this particular board :) hehe |
Where in the README does it say that? |
in the WeAct one here https://github.com/WeActTC/MiniSTM32F4x1/tree/master/Soft/WeAct_HID_FW_Bootloader |
Ah, that's right. Sorry, I haven't yet tried this bootloader. I recall seeing the code has a comment in the entrypoint:
https://github.com/Serasidis/STM32_HID_Bootloader/blob/master/bootloader/F4/Src/main.c#L138 so presumably, the bootloader can be entered by setting the value & triggering a reset from the firmware, and could be entered without pushing a button. |
how? you lost me again. sorry i could not follow that explanation |
This is what makes sense to me; I haven't tried it. I don't have any significant experience with embedded development; so I'd suggest the search terms "stm32 software reset"; and/or figure out how to set a particular register to a particular value in the stm32duino port. Again, the bootloader in this repo enters the HID bootloader if the boot_1 is low (i.e. |
so this is... some WIP not finished yet? stm32duino/Arduino_Core_STM32#1118 (comment) in PR #710 ? |
I was able to get f401cc working with platformio by following some of the above steps by @roboticboyer In wsl or linux then in windows finally in platformio.ini file to put in the bootloader mode press nrst button while boot0 is pressed. you should see STM32 BOOTLOADER in windows device manager when it is in the bootloader mode. hope this helps someone |
probably not much related here. But recently I changed to using tinyuf2 instead of the hid bootloader for both f401 and f411 blackpills. much easier to get into the bootloader mode - just double tap the reset button. also the releases can be downloaded from https://github.com/adafruit/tinyuf2/releases/ |
So for now only one working option to flash blackpill through USB without touching it is WeAct_HID_Bootloader |
I recompiled you version but can't get it working. |
It's been quite some time since I touched it. Things may have changed a lot during that time. Please check the errors and see if you are able to fix them, as I haven't touched this code for more than 2 years. |
Please add support for Black Pill F401CC Device
The text was updated successfully, but these errors were encountered: