Purpose of Secondary Microcontroller in Development Boards
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-12-20 01:26 AM
Hi everyone,
I’ve noticed that many STM32 development boards include two microcontrollers: a main controller and an additional smaller-range controller. For example, I have the STM32L476 Evaluation Board, which features the STM32F103CBT6 as the secondary microcontroller.
I’m curious about the purpose of this secondary microcontroller. Does it serve a specific function that cannot be achieved without it? Additionally, could the board still function effectively without this secondary controller?
For reference, I’ve attached the schematic of the board to help clarify my question.
Thanks in advance for your insights!
Solved! Go to Solution.
- Labels:
-
STM32F1 Series
-
STM32L4 Series
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-12-20 01:40 AM - edited ‎2024-12-20 03:43 AM
Hello,
This is the onboard STLINK-V2 module (STM32F103) to program/debug the target MCU (STM32L476).
You need to read the title of each schematics sheet at the bottom left corner:
Hope that answers your question.
PS:
1 - This is NOT an online support (https://ols.st.com) but a collaborative space.
2 - Please be polite in your reply. Otherwise, it will be reported as inappropriate and you will be permanently blacklisted from my help.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-12-20 01:40 AM - edited ‎2024-12-20 03:43 AM
Hello,
This is the onboard STLINK-V2 module (STM32F103) to program/debug the target MCU (STM32L476).
You need to read the title of each schematics sheet at the bottom left corner:
Hope that answers your question.
PS:
1 - This is NOT an online support (https://ols.st.com) but a collaborative space.
2 - Please be polite in your reply. Otherwise, it will be reported as inappropriate and you will be permanently blacklisted from my help.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-12-20 03:41 AM - edited ‎2024-12-20 03:46 AM
@Sujith wrote:I’m curious about the purpose of this secondary microcontroller. Does it serve a specific function that cannot be achieved without it?
Yes: as @SofLit said, it is the ST-Link:
@Sujith wrote:could the board still function effectively without this secondary controller?
Yes - but you would then need a separate, external ST-Link (or equivalent) to program, debug, and provide VCP.
In fact, the Nucleo-64 boards (as shown above) are specifically designed so that you can snap-off the ST-Link part!
PS:
Note that this practice of providing an on-board debugger is now standard throughout the industry - it's not just ST (in fact, ST were rather late to this particular party).
Naturally, manufacturers will tend to use a chip of their own to provide this feature; eg, Atmel (now Microchip) used an AVR; TI will use a TI chip; NXP use an NXP chip; etc, etc.
PPS:
Segger provide a (reversible) utility to convert the on-board ST-Link to a J-Link:
https://www.segger.com/products/debug-probes/j-link/models/other-j-links/st-link-on-board/
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-12-20 03:57 AM - edited ‎2024-12-20 04:01 AM
Some of the EVAL boards also have an additional MCU doing IO Expansion, basically mundane stuff like IO for LEDs as frequently all the pins of the primary MCU are soaked up demonstrating primary function, ie external memory, LCD/video interfacing, etc where pin usage/escape options are limited. The board and primary MCU are relatively expensive, and the MFX devices are cheap sub-dollar IC.
Think doing Servo encode/decode, 32-bit shaft encoder, keyboard, multiple UARTs, data logging, radio comms, etc.
You can partition the design, reduce complexity, remove mundane donkey work from primary function/goals.
Up vote any posts that you find helpful, it shows what's working..
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-12-20 04:06 AM - edited ‎2024-12-20 04:34 AM
Yes for some boards there is another MCU used as MFX or IO expender and it's not STM32F103 but I think it's STM32L1x and for STM32L476 there is no MFX module on it.
This is the MFX on STM32F769-EVAL:
PS:
1 - This is NOT an online support (https://ols.st.com) but a collaborative space.
2 - Please be polite in your reply. Otherwise, it will be reported as inappropriate and you will be permanently blacklisted from my help.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-12-20 04:27 AM - edited ‎2024-12-20 08:17 AM
I also recollect a DISCO board with additional MCU doing current measurement.
Think also of usage for development and diagnostics, additional parts can aid there but don't need to be populated in final design, or you have option tiers where customers want features/functions and there's a price premium.
AdaFruit and others have simple board/IC to do specific functions, say for encoders, joystick or Neopixel drivers. ATMEL had debug chips at retail similar to ST-LINK for debug of ARM or AVR, often found on Arduino boards, and come preprogrammed.
TM13xx devices to drive keypads, buttons, LEDs, 7-Segments, etc
OpenLog / OpenLager
Up vote any posts that you find helpful, it shows what's working..
