Hi thereuno online,
I have experience with arduino, but have heard that the stm32 is waaaaaay faster and better than the arduino. Is this true? Are the differences really noticable?
If I would connect a camera to the stm32, would I be able to make recordings with it.
stm32 vs arduino
-
- Posts: 1
- Joined: Wed May 15, 2024 9:00 am
stm32 vs arduino
Last edited by abeljohnson on Fri May 17, 2024 3:03 am, edited 1 time in total.
-
- Posts: 139
- Joined: Mon May 06, 2024 1:46 pm
- Location: Germany
Re: stm32 vs arduino
If you are talking about an Arduino UNO, it is easy for other µC to be faster.
If you want to connect "a camera" it depends on the interface, how many GPIOs you will need etc.
WeActStudio has a STM32H7B0VBT6 board. They sell it at AliExpress for about 22 €. You will get the board with a tiny TFT display and a camera. So try out, if resolution, refresh rate etc. will be ok for you (I don't have any experience).
If you want to connect "a camera" it depends on the interface, how many GPIOs you will need etc.
WeActStudio has a STM32H7B0VBT6 board. They sell it at AliExpress for about 22 €. You will get the board with a tiny TFT display and a camera. So try out, if resolution, refresh rate etc. will be ok for you (I don't have any experience).
Re: stm32 vs arduino
stm32 has a huge portfolio of soc for choice
you'd only need to take a look at the boards that is 'supported' for stm core
https://github.com/stm32duino/Arduino_Core_STM32
- performance tends to be faster due to - clock speeds even stm32f103 is running at 72 mhz
- and it is advisable you start with stm32f4xx or the newer stm32g4xx family
stm32f4xx / g4xx has
- normally more sram vs stm32f103c8 (this is a big bottleneck often not mentioned)
- normally more flash vs stm32f103c8
- stm32f4xx / g4xx series has 'art accelerator' on-chip cache, that makes codes that are loaded from flash
which are probably like 3-5 wait states to *zero* wait state - if it is in cache
practically 3-5 times faster for the same mhz
- stm32f4xx / g4xx has single precision FPU, that made maths much faster vs say stm32f103
so much that you can run whetstone benchmarks on them and they give figures MFlops similar to old Intel 'pentium' processors.
single precision floating point matters for some apps
there are many offers for boards
https://github.com/WeActStudio/WeActStu ... iSTM32F4x1
https://www.st.com/en/evaluation-tools/ ... 401re.html
https://www.st.com/en/evaluation-tools/ ... 411re.html
https://github.com/WeActStudio/WeActStu ... 1CoreBoard <- this one has DAC and op amps and comparators, I have not tried them out)
https://www.st.com/en/microcontrollers- ... 431rb.html
'high performance' with lots of ram and flash (these has DAC)
https://www.adafruit.com/product/4382
https://store.micropython.org/product/PYBv1.1
https://www.olimex.com/Products/ARM/ST/STM32-H405/
for that matter many FDM 3d printers run on stm32, though not the only ones, and quite often deemed 'premium' maybe somewhat pricier per chip say vs some competitors. preferred partly because stm32 is *well documented*, you can find the various detailed spec sheets and ref manual on ST's web and from a google search. so it is a 'well understood' chip, and there is less unknowns with complicated apps like Marlin firmware for 3d printers
https://marlinfw.org/
in a sense, that extends the choice of boards beyond just 'development boards' as those can be used if you prefer
https://www.aliexpress.com/w/wholesale- ... oard-.html
the catch often is that those are pre-wired for 3d printers, there is no ready made variant and one would need to consult
board manufacturers documentation (get one that is well documented with schematics etc) and you can make custom variants for those
https://github.com/stm32duino/Arduino_C ... nt-(board)
a key skillset novices often stumble with is to make a workable SystemClock_Config(void)
https://github.com/stm32duino/Arduino_C ... figuration
to make the clocks run on an external crystal that is provided on board.
that can normally be done by using existing working boards as example and work from there.
these days such is fashionable but not always correct
https://chatgpt.com/share/f5dfd8d7-f727 ... 2?oai-dm=1
you'd only need to take a look at the boards that is 'supported' for stm core
https://github.com/stm32duino/Arduino_Core_STM32
- performance tends to be faster due to - clock speeds even stm32f103 is running at 72 mhz
- and it is advisable you start with stm32f4xx or the newer stm32g4xx family
stm32f4xx / g4xx has
- normally more sram vs stm32f103c8 (this is a big bottleneck often not mentioned)
- normally more flash vs stm32f103c8
- stm32f4xx / g4xx series has 'art accelerator' on-chip cache, that makes codes that are loaded from flash
which are probably like 3-5 wait states to *zero* wait state - if it is in cache
practically 3-5 times faster for the same mhz
- stm32f4xx / g4xx has single precision FPU, that made maths much faster vs say stm32f103
so much that you can run whetstone benchmarks on them and they give figures MFlops similar to old Intel 'pentium' processors.
single precision floating point matters for some apps
there are many offers for boards
https://github.com/WeActStudio/WeActStu ... iSTM32F4x1
https://www.st.com/en/evaluation-tools/ ... 401re.html
https://www.st.com/en/evaluation-tools/ ... 411re.html
https://github.com/WeActStudio/WeActStu ... 1CoreBoard <- this one has DAC and op amps and comparators, I have not tried them out)
https://www.st.com/en/microcontrollers- ... 431rb.html
'high performance' with lots of ram and flash (these has DAC)
https://www.adafruit.com/product/4382
https://store.micropython.org/product/PYBv1.1
https://www.olimex.com/Products/ARM/ST/STM32-H405/
for that matter many FDM 3d printers run on stm32, though not the only ones, and quite often deemed 'premium' maybe somewhat pricier per chip say vs some competitors. preferred partly because stm32 is *well documented*, you can find the various detailed spec sheets and ref manual on ST's web and from a google search. so it is a 'well understood' chip, and there is less unknowns with complicated apps like Marlin firmware for 3d printers
https://marlinfw.org/
in a sense, that extends the choice of boards beyond just 'development boards' as those can be used if you prefer
https://www.aliexpress.com/w/wholesale- ... oard-.html
the catch often is that those are pre-wired for 3d printers, there is no ready made variant and one would need to consult
board manufacturers documentation (get one that is well documented with schematics etc) and you can make custom variants for those
https://github.com/stm32duino/Arduino_C ... nt-(board)
a key skillset novices often stumble with is to make a workable SystemClock_Config(void)
https://github.com/stm32duino/Arduino_C ... figuration
to make the clocks run on an external crystal that is provided on board.
that can normally be done by using existing working boards as example and work from there.
these days such is fashionable but not always correct
https://chatgpt.com/share/f5dfd8d7-f727 ... 2?oai-dm=1