As usual amazing content Phil! Just an additional thing I would like to add if I was designing the board is the provision to toggle the BOOT0 pin so that I can use the internal USB DFU to update the firmware through the USB without opening the device enclosure.
Thank you, Sumant. I typically omit the BOOT0 toggle-option on my personal boards as I find the standard STM32 DFU via USB to pe a pain in the neck and only use SWD to reprogram. For production devices, sure I'll add an option like that in - but for personal projects never.
The first thing I do with a new board design straight from fab? Power it up with a current limiting power supply and make sure all the LEDs light up. Flash it with the head of master and run the entire feature set. Done
Cool vid. Still waiting for my STM chip to be available but lead times are a year plus because the events of the world, and just feeling too lazy to redesign around a new chip.
Just came across this video. Great work, clear and practical as always. How did you find out how to get the USB Virtual COM Port working? I watched an older video I think for a previous version of the Little Brain and configured the USB Virtual COM Port for a board I just got from JLCPCB using the STM32F411re. It wasn't working and I thought I made a mistake in my board. But it was the software, with your tips, it's working just fine. Thanks.
hi @PhilsLab thank you very much for your clear and effective tutorials. So clear to convinced me to explore the feasibility of designing a basic STM32-based custom board. Unfortunately, before going to manufacturing, I'm still unsure about a few things, so I would like to submit you some questions about. How can I get in touch with you? Thanks!
Thanks for these great tutorials phil ! How can I program the stm32f4 of my custom board which has only one usb type c connector ? I do have an st-link v2 programmer but is there a way to connect the jtag on the st-link/v2 to usb c ?
I have designed a custom board using stm32f730 and I've enabled USB virtual COM port ,and my computer recognizes the IC when I plug in the USB cable but says driver error...I tried every thing...doesn't work.
I have a question regarding inverted UART. I have designed an H7 that I need to connect an radio receiver to that uses inverted serial communication. (Frsky manufacturer). However, I cannot find anywere how to do it in stm32cubeide. Do you know? Thanka in advance, BR Martin
Hi Martin, if I'm not mistake inverting UART levels should be possible when enabling the UART, editing properties, and then changing RX/TX inversion in one of the dropdowns.
I already changed motor driver on my board. Now, I am thinking to change microcontroller as well since it is impossible to wait when it will be in stock. Any suggestions how to manage different board configurations in kicad, especially if you have more than one component to switch?
Hi Sergey, I'm afraid - other than the usual of copying design files to new directories, using Git for version control - I have no other suggestions for KiCad :/
Hey man, when it comes to software I'm pretty 'crude' to be honest. However, if I have a problem I'm fairly certain that I could find a solution to solve it (but maybe not in the cleanest/most optimal way). But yeah, I've been programming for a while.
The keyword you are looking for is dfu (device firmware update). If you are using stm32, you just need to tie boot0 VCC (might be ground, check datasheet), and the USB bootloader will run. You can use either dfu-util or other tools like the Cube programmer set to USB to load your binary.
@@PhilsLab THX , i saw you used a switch in one of the older videos so ill probably do the same Also as a side note how do you chose how many IO RAM and FLASH you will need for a board? (might be a good vid topic) since i realized a bit late that i lacked enough RAM , it was while designing
Hi Phil, do you think i can use stm32l011k4 with Arduino IDE? İ was looking for that low power MCU surprise surprise i accidentally bought 1000pcs. Well as you may guess i m looking for 1000 ideas to work with it. Any help would be Appreciated
Hi there, Yes, you can write your own custom board files for STM32duino. I think there are some guides online - I did it myself a year or two ago. Might make a video on it in the near future!
@@PhilsLab is it possible to use it with Arduino İDE? İ have search tons of internet search only found some nucleo boards using this uC and they can be programmed via IDE. But these are bare uC. Thats the problem. Looking forward to your videos! Thanks for the reply
10:15 There is nothing useful coded, but already took 8.98KB of flash and 2.72KB of RAM. What a BLOATED code generator. I believe first moon space crafts system overall had much less memory on board, but did a lot more tasks than this blinky test firmware. )))
Yes, yes, more little brain! I love how you get into the hardware and firmware without any fluff. Very direct and practical.
Thank you very much, Edgar!
As usual amazing content Phil!
Just an additional thing I would like to add if I was designing the board is the provision to toggle the BOOT0 pin so that I can use the internal USB DFU to update the firmware through the USB without opening the device enclosure.
Thank you, Sumant. I typically omit the BOOT0 toggle-option on my personal boards as I find the standard STM32 DFU via USB to pe a pain in the neck and only use SWD to reprogram. For production devices, sure I'll add an option like that in - but for personal projects never.
Thank you so much. In 23 minutes you get idea about pcb and firmware.
Thank you for sharing.
Thank you very much for watching!
Good work as usual, I follow your pcb and firmware guides and so far made a couple customs boards that work. Keep up the good work
Thank you very much, Rraheem!
Just came across your video, and I thank you for this eloquent explanation of Board Bring-Up. Many thanks!! 👍👍👍
I like that tag connector, that 's cool as!
Very good video. Please upload more such videos ☺️
any plans on making a video regarding creating drivers for gyroscope which u are using in PCB ?
Nice video with good PCBs
Thank you, Yang.
VERY educational! Thanks.
Thanks, Hamid!
Thank you mate
Thanks for watching!
Awesome, Clean and perfect.👌
Thank you, Husam!
The first thing I do with a new board design straight from fab?
Power it up with a current limiting power supply and make sure all the LEDs light up.
Flash it with the head of master and run the entire feature set.
Done
Awesome. Thanks for info.
Thanks for watching!
Brings back memories... I was using CooCox IDE back in 2017 which was a pain in the ass. I discovered CubeIDE and it was much better workflow.
Haha I actually remember using CooCox 'back in the day' - I agree with it being a pain in the rear end..
Cool vid. Still waiting for my STM chip to be available but lead times are a year plus because the events of the world, and just feeling too lazy to redesign around a new chip.
Yeah, it's a real pain in the rear end at the moment..
Love this!!! Great video!
Thank you very much!
Awesome job. 👌
Thank you!
Nice video!
Thank you, Dmitry!
Just came across this video. Great work, clear and practical as always. How did you find out how to get the USB Virtual COM Port working? I watched an older video I think for a previous version of the Little Brain and configured the USB Virtual COM Port for a board I just got from JLCPCB using the STM32F411re. It wasn't working and I thought I made a mistake in my board. But it was the software, with your tips, it's working just fine. Thanks.
hi @PhilsLab thank you very much for your clear and effective tutorials. So clear to convinced me to explore the feasibility of designing a basic STM32-based custom board. Unfortunately, before going to manufacturing, I'm still unsure about a few things, so I would like to submit you some questions about. How can I get in touch with you? Thanks!
Thanks for these great tutorials phil !
How can I program the stm32f4 of my custom board which has only one usb type c connector ? I do have an st-link v2 programmer but is there a way to connect the jtag on the st-link/v2 to usb c ?
do more videos like this
how much was your current consumption when powered up initially?
Nice video, thanks! How about putting the preliminary code, which you just wrote to bring up the board, into a self-test function?
Nice and clean
Thank you, Maris!
What is deep sleep current draw of the board?
bloody awesome
Thank you, David!
Truely Amazing Classes ! Is there any chance to export your design (schematic and PCB) to KICAD format ?
I have designed a custom board using stm32f730 and I've enabled USB virtual COM port ,and my computer recognizes the IC when I plug in the USB cable but says driver error...I tried every thing...doesn't work.
where are this codes stored?
Where did you get the retaining mechanism for the tag-connect header?
That was shipped together with the Tag-Connect cable in my case but I'm fairly certain you can get them individually through Tag-Connect.
I have a question regarding inverted UART. I have designed an H7 that I need to connect an radio receiver to that uses inverted serial communication. (Frsky manufacturer). However, I cannot find anywere how to do it in stm32cubeide. Do you know? Thanka in advance, BR Martin
Hi Martin, if I'm not mistake inverting UART levels should be possible when enabling the UART, editing properties, and then changing RX/TX inversion in one of the dropdowns.
@@PhilsLab thanks I will try this out :)
Thank you for the reply
Thanks for another great video. Where are you finding stm32f4 chips in stock?
Thank you, Kyle. JLCPCB (at the time of writing) still seems to have some STM32F*s in stock, so that's where I'm getting them from for these videos.
I already changed motor driver on my board. Now, I am thinking to change microcontroller as well since it is impossible to wait when it will be in stock. Any suggestions how to manage different board configurations in kicad, especially if you have more than one component to switch?
Hi Sergey, I'm afraid - other than the usual of copying design files to new directories, using Git for version control - I have no other suggestions for KiCad :/
Hi, Phil, how long took you to master PCB Embedded Programming because your the one(Videos) who inspire me in these fields.
He has a masters and quite a bit of industry experience, so a long time
Hey man, when it comes to software I'm pretty 'crude' to be honest. However, if I have a problem I'm fairly certain that I could find a solution to solve it (but maybe not in the cleanest/most optimal way). But yeah, I've been programming for a while.
@@PhilsLab Thanks
Hi, is it possible to do something like update firmware with usb which let potential end user to update firmware? It will be a great topic to cover.
The keyword you are looking for is dfu (device firmware update). If you are using stm32, you just need to tie boot0 VCC (might be ground, check datasheet), and the USB bootloader will run.
You can use either dfu-util or other tools like the Cube programmer set to USB to load your binary.
interesting , if i dodnt have a ST link can i also use a USB-uart bridge ?
You can program compatible MCUs directly via USB DFU. However, you'd have to pull BOOT0 high before doing so.
@@PhilsLab THX , i saw you used a switch in one of the older videos so ill probably do the same
Also as a side note how do you chose how many IO RAM and FLASH you will need for a board? (might be a good vid topic) since i realized a bit late that i lacked enough RAM , it was while designing
Love you
Hah thank you, Edward :)
Hi Phil, do you think i can use stm32l011k4 with Arduino IDE? İ was looking for that low power MCU surprise surprise i accidentally bought 1000pcs. Well as you may guess i m looking for 1000 ideas to work with it. Any help would be Appreciated
Hi there, Yes, you can write your own custom board files for STM32duino. I think there are some guides online - I did it myself a year or two ago. Might make a video on it in the near future!
@@PhilsLab is it possible to use it with Arduino İDE? İ have search tons of internet search only found some nucleo boards using this uC and they can be programmed via IDE. But these are bare uC. Thats the problem.
Looking forward to your videos! Thanks for the reply
Just disappointed you didn’t use a esp32
Actually working on some ESP32 designs for future videos!
10:15 There is nothing useful coded, but already took 8.98KB of flash and 2.72KB of RAM. What a BLOATED code generator. I believe first moon space crafts system overall had much less memory on board, but did a lot more tasks than this blinky test firmware. )))