cancel
Showing results for 
Search instead for 
Did you mean: 

STM32 Hotspot, a new GitHub for unofficial projects

Peter BENSCH
ST Employee

ST is unveiling STM32 Hotspot on GitHub, which comprises repositories developed by ST employees for demos or example features that are not part of the official ST GitHub page or the traditional STM32Cube ecosystem on ST.com.

Developers now have access to more code examples to help them implement a significantly broader range of new functionalities. There are 27 repositories today, with more on the way. All projects comply with standard ST licensing rules, meaning that any developers can reuse our source code on an STM32 project without worrying about copyright restrictions or copyleft regulations that would compromise commercial projects. Moreover, while STM32 Hotspot doesn’t accept third-party submissions, we strongly encourage forking or cloning projects locally and customizing them.

The official ST GitHub vs. STM32 Hotspot

Why is the official ST GitHub so popular?

Most STM32 developers are already familiar with ST’s official GitHub pageIt contains more than 450 repositories, from standard STM32Cube MCU packages for all current STM32 microcontroller series to expansion packages for specific applications. For instance, ST published four machine learning programs last year on the official GitHub channel. It ensured developers could reduce their time to market when using our sensors and our code for movement recognition. Similarly, ST released its X-CUBE-AZRTOS on GitHub last April to hasten developments on Azure RTOS. The code serves as implementation examples for features like FileX, ThreadX, or USBX, among others.

Why did so many users want an STM32 Hotspot?

All projects on the official ST GitHub page undergo rigorous inspection and receive extensive support. However, the projects on the official ST GitHub are just a fraction of what our prolific employees come up with. Regional offices and many of our divisions write applications for trade shows or to meet a customer’s demand. Many teams conceive small validation programs or test applications showcasing specific features. However, ST developers don’t share them because they were never meant to go through official distribution channels. The STM32 Hotspot solves this by opening a new avenue for innovation and creativity. By providing projects as-is, authors don’t have to commit as much to specific programs, and users get more code to assist them.

STM32 Hotspot is also a direct answer to the many people that reach out to our teams during trade shows or through the course of normal operations to request that we share our smaller projects. The new GitHub page is thus a hub between ST engineers and our community.

...read on...

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
12 REPLIES 12

Nice.

Universal use of Cube/CubeMX is bad of course, but maybe we'll see improvement in time.

And do you know where would be an ideal place to regularly announce new contributions/repositories to this git collection? In the renewed Technical Updates!

JW

> In the renewed Technical Updates!

Github can be a platform for blogs and documents as well (plus simple html, markdown, pdf viewers). These updates can be hosted there as well.

What? Why? No!

The "platform" word alone is red light..

I understand that github as a company wants to grow from being git provider to the "next facebook for developers", but we nor ST need that! The sad state of this very site (which also originated as whatever-salespeople-may-need software) is the proof.

What we need is forum, and what we need is magazine (technical, not the marketing BS). It's as simple as this.

JW

Nikita91
Lead II

Why not github?

On a github repository we can start discution, pull requests to suggest corrections and manage versions.

In my opinion, the whole question is: are the developers of STM going to maintain and develop all this software in the long term?

If they're posted but don't live, then that's of little use.

On the subject that interests me (Ethernet on H7) there is no discussion or PR. We will see...

GitHub is now Microsoft - which, yes, is a big red flag for some. Counting myself. But they look like a lesser evil than Salesforce. And they have some really cool offers for developers (cloud workspaces with editing in browser or VS Code, for one).

S.Ma
Principal

Well, it is like shopping, spend time browsing for something that in the end saves development time in the end overall. One more shelf in the store with more items to choose and assess from.

Danish1
Lead II

What’s the difference between an official and an unofficial project?

I guess unofficial ones aren’t supported, so ST feel under no obligation to fix them when the next version of stm32cube comes out, or extend them to support the latest parts?

And they are able to pull in GPL source, so any projects based on them must also be open-source. Which is fine for a hobbyist but not for many commercial products.

Correction: had.I bothered to look, I would have seen that each project has a table of what licenses apply to what portions of the code e.g. Apache2.0, BSD, SLA0044. All I’ve seen are commercial-friendly. Thanks

@Pavel A.​ for pointing out my error.

But for me the biggest killer, for ST’s official offering and likely to be worse for anything unofficial, is the inadequacy of documentation. Where there’s a subroutine call we might need to make, it is vital that the preconditions and constraints are fully documented. And, very important this, not just by an example of a sequence that works. We need to know the rules of how to make things work based on our different circumstances.

> Why not github?

> On a github repository we can start discution, pull requests to suggest corrections and manage versions.

First, it should be fairly easy for ST maintain its own git repository. Also, it's not rocket science to build a simple web interface and simple project management to it in house, or use an existing one (maybe there are some decent offerings out there, I don't know). Third, once you have decent forum software, it's again not rocket science to link discussions.

But I digress. My "No" was to Pavel's suggestion to use github as a "platform". Post software on it? Well, maybe. Discuss that software? Okay, it's a dispersion which is bad, but it's minor. But post a technical magazine there? Why? That makes no sense.

Not that folks don't do absolute nonsense.

> On the subject that interests me (Ethernet on H7) there is no discussion or PR.

To me it seems that we've seen lots of discussion about it (and dismissing it too) here. Do you see why it's good to have things under one roof?

Also, don't be naive. Those software were developed under a corporate management system. Time and people had been alotted to it, and that's it. Those people are not paid to review discussion, so would they participate, they would do that in their own free time etc.

JW

Why reinvent the wheel? The Salesforce forum is unanimously criticized. Why STM should develop a new software, while github provides a powerful tool. For me it would be a progress if difficult subjects are treated in a central point with a better interaction with the users.

It is true that the subject H7+ETH has been covered in several posts scattered throughout the forum but difficult to find because of a faulty search tool. Really I'd rather all of this be treated as discussions on a single github repository.

It is not a replacement of a forum, but a complement to manage examples, which is currently a crying lack in the STM offer. There will always be forum for questions such as: why is my UART not working?

What worries me is the sentence in the introductory paragraph:

"Moreover, while STM32 Hotspot doesn’t accept third-party submissions, we strongly encourage forking or cloning projects locally and customizing them."

This seems to indicate that there will be no life around these projects...

If it's not possible to put PR into these repositories and have them handled by someone from STM, then there will be a multitude of forks, and the wish for centralization and the community effect will be lost.

Indeed, STM should allocate some resources to manage these repositories. And I think there will be users happy to help.

Github is a very powerful tool, it would be a shame to use it only to store inert pieces of code.