Our tagging system is inconsistent in the way we treat different microcontroller families. I'm looking for people's opinions on how (or even if) we should make them more uniform.

The tag, for example, is used for (almost) all PIC-related questions. Indeed, there are tag synonyms which automatically rename any PIC subfamily (e.g. , , , etc.) to the generic tag. This tag is currently used in 2224 questions.

However, with the STM32-series microcontrollers, the tag structure allows the questions to be divided into families:

So, our options:

  1. Allow the PICs to be segregated by family.

    This would kinda suck, frankly, because we'd have to remove the existing tag synonyms and then manually separate out the different PIC questions.

  2. Create tag synonyms to combine all of the STM32 families.

    This is easy to do, but difficult to undo (see #1!).

  3. "Stop worrying about it, already!!"

    I often hear this from my spouse, and it's often good advice :)

Personally, I strongly prefer the ST model. There is very little similarity between an STM32F0 and an STM32F7, either in technology, use-cases, or EE.SE questions! Similarly, there is almost no overlap between a PIC16F and a DSPIC33.

However, with the difficulties of Option #1, I'm leaning toward following my wife's advice :)

Your thoughts?

In the meantime, there are a few tags which I believe are overly-specific and should be wrapped into . I'll go and propose some synonyms...

  • 4
    \$\begingroup\$ Just to add that some (many?), though not all, of the questions tagged stm32f103c8t6 are really referring to the STM32 "Blue Pill" as the typical seller's description for that board includes the exact part number STM32F103C8T6. That tag does seem unnecessarily specific (as it includes specific Flash size and even package type!). Unfortunately, for some of the existing questions with that tag, it isn't clear exactly what h/w board they are using, so we can't "blanket replace" that tag with an "STM32 Blue Pill" tag synonym. \$\endgroup\$ – SamGibson Oct 24 '18 at 11:33
  • \$\begingroup\$ @SamGibson You're right about that warning. However, as I understand, you say that there are questions for which you must read tags to understand the context and infer which board exactly OP is using. This isn't right. Questions should stand on their own, with all context given within the text itself, so these questions should probably be edited to include the missing information. Unfortunately, you don't mention which posts it is exactly. \$\endgroup\$ – dim Oct 25 '18 at 14:25
  • \$\begingroup\$ @dim - Hi, I only did a quick review of those questions tagged stm32f103c8t6. In some cases they were clearly using an STM32 Blue Pill. But in others, they didn't state the actual board being used. I agree all context should be in the question but at the time, no-one asked which board was being used & there's no photo, so we can't add a board name into the question now, as we don't have it. That's why we can't replace all instances of that tag with a new Blue Pill tag, as some may not have used that board. I don't have a perfect solution, I just wanted to explain that specific tag. HTH \$\endgroup\$ – SamGibson Oct 25 '18 at 18:42

My recommendation would be to merge them all to .

I disagree strongly with your assertion that "there is very little similarity between an STM32F0 and an STM32F7". While the STM32 line is not perfectly uniform, the product families have a lot in common with each other -- they all use an ARM CPU core, can be programmed using the same tools, and have similar peripherals. It is often possible to port low-level C code from one family to another with minimal to no changes.

The PIC families are much less similar to each other, having substantially different instruction sets and CPU architectures, and yet are still handled with a single tag. If we're OK with this, I see no reason why the STM32 families shouldn't be combined as well.

  • 1
    \$\begingroup\$ Some of the peripherals are similar, but some are pretty different. The F1's are a bit unique. So are all the L series parts. \$\endgroup\$ – Chris Stratton Oct 26 '18 at 3:41
  • \$\begingroup\$ @ChrisStratton having ported some stuff from L1 to F4 with very minimal effort, I strongly disagree with your last sentence. And I think F1's feel like "a bit unique" only because of its unique GPIO & AFIO controllers, which get in the way every time one touches an I/O pin. \$\endgroup\$ – followed Monica to Codidact Oct 28 '18 at 13:14
  • 1
    \$\begingroup\$ How different the F and L series are depends a lot on what you are trying to do - I hand waved that too, until having a project where they mattered. Things like clocking options, drastically different behavior of flash, and the presence of EEPROM can have far reaching consequences for how things can be done. And those F1 differences are squarely in the realm where questions tend to be asked. \$\endgroup\$ – Chris Stratton Oct 28 '18 at 13:19

I'm following the tag and the and the and I should probably follow the other STM32 tags as well.

Sure there are some peripherals in the STM32F7 I haven't used, but a lot of the questions concern basic things which I can answer as well. So for me, the separated tags just make it harder to identify all the questions of interest to me, because I have to follow more tags to get them all.

So I'd also vote for a merger (I agree with the others, just another reason why a merge might be useful).

The part number + datasheet + reference manual link should be posted in any decent question anyway so no harm done I think.

  • 6
    \$\begingroup\$ You can follow [tag:stm32*] -- this is not a reason for merging \$\endgroup\$ – Ben Voigt Oct 28 '18 at 14:16
  • 1
    \$\begingroup\$ @BenVoigt thanks, didn't know that I can use * in tags. And I guess the upvotes show, other people don't know either. \$\endgroup\$ – Arsenal Oct 29 '18 at 6:42

I'd lean to having both tags (the general and the more specific families), but I'll leave that in the hands of voters.

Regarding the second half of the question, I'd say just merge the two of them into .

  • \$\begingroup\$ Thanks for reminding me about Tag merges :) I just looked them up, and I agree that would be best. Once this question plays out, I'll start a new Meta question asking for consensus on the merges... \$\endgroup\$ – bitsmack Oct 24 '18 at 9:04

I say leave them be, an f0 has vastly different capabilities than the f7. Typically people in industries may only work on one end (say f0 thru f4 or f4 thru f7)

However, since the PIC tag is already being renamed then to be consistent we should do the same for stm32.


I can recommend to ask for SO developers to implement a tags tree. In this case you would have something like:

+- stm32f0
+- stm32f1
+- stm32f2
+- stm32l

This would make sub-tags to automatically merge under parent tag. At this moment this is a common issue in large communities.

  • \$\begingroup\$ This feature has been requested before, and has been soundly denied. (Note Jeff Atwood's comment: "we will not be doing trees, in any way, shape or form".) \$\endgroup\$ – duskwuff -inactive- Nov 2 '18 at 1:52
  • 1
    \$\begingroup\$ oh... those lazy developers \$\endgroup\$ – zoonman Nov 5 '18 at 4:19

I would prefer and understand the 'root' part number without so many subsets. For me PIC18, PIC24 and PIC32 cover that series. Yes there are subsets like PIC32MX and PIC32MZ, but if you include what is deemed 'important' subsets you risk a tyranny of tags all having the same root ID.

The STM series is already headed in that direction. Who is it going to hurt to merge them into just 'STM8' and 'STM32' tags?

If the OP is kind enough to put the whole part number in their question it makes 'subset' tags a moot point. If you need them to be specific so you can track them, in the long run you might as well include the infinity sign.

  • \$\begingroup\$ Agreed, but there are STM8 and STM32. \$\endgroup\$ – Long Pham Oct 26 '18 at 16:53
  • 1
    \$\begingroup\$ @LongPham. I modified my answer to include those separate tags. \$\endgroup\$ – user105652 Oct 26 '18 at 19:58
  • 1
    \$\begingroup\$ Strongly disagree with your edit. STM8 is a completely different design from STM32; the parts have almost nothing in common beyond their manufacturer. \$\endgroup\$ – duskwuff -inactive- Oct 26 '18 at 20:11
  • \$\begingroup\$ @duskwuff. That was a typo. I have fixed it to include both STM8 and STM32. \$\endgroup\$ – user105652 Oct 27 '18 at 1:56
  • \$\begingroup\$ The way it is written, it still suggests bundling STM8 with STM32. I think you meant "into just 'STM8' and 'STM32' tags" where the separate quotation indicates separate tags. \$\endgroup\$ – Ben Voigt Oct 28 '18 at 14:18

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .