Is OUTPUT_OPEN_DRAIN supported

STM32F103 Nucleo boards e.g. STM Nucleo F103RB
User avatar
Rick Kimball
Posts: 1058
Joined: Tue Apr 28, 2015 1:26 am
Location: Eastern NC, US
Contact:

Re: Is OUTPUT_OPEN_DRAIN supported

Post by Rick Kimball » Wed Jul 12, 2017 8:06 pm

Did I miss the part where the official arduino boards support open drain?
Which arduino boards support this ?
-rick

User avatar
Rick Kimball
Posts: 1058
Joined: Tue Apr 28, 2015 1:26 am
Location: Eastern NC, US
Contact:

Re: Is OUTPUT_OPEN_DRAIN supported

Post by Rick Kimball » Wed Jul 12, 2017 8:18 pm

If you are switching from the official leaf labs maple IDE to the newer stm32duino core, you should be using the libmaple core not the one from ST.

The libmaple core (Roger's repo) is an updated version of the leaflabs code for the latest arduino ide.

The ST core has just added support for the STM32F1 chips and it isn't complete or fully tested and changing rapidly. The official ST core isn't going to have all the extensions you find in the libmaple core. It is going to be a vanilla port of the arduino core and will probably work best with NUCLEO boards. The ST core will probably work with a wider range of STM32 chips. It already supports some of the F0, L0, L1, F3, L4, F4 boards.
-rick

User avatar
Rick Kimball
Posts: 1058
Joined: Tue Apr 28, 2015 1:26 am
Location: Eastern NC, US
Contact:

Re: Is OUTPUT_OPEN_DRAIN supported

Post by Rick Kimball » Wed Jul 12, 2017 8:51 pm

Boian Mitov wrote:
Wed Jul 12, 2017 7:56 pm
Rick Kimball wrote:
Wed Jul 12, 2017 5:51 pm
o You could add the feature to the code yourself.
If I add it it will be included in the official release?
I am asking as I have about 23000 users of Visuino, according to the registration, and they all will need to have access to it.
I am asking how to solve the problem for all users.
This functionality is probably important, and should be included in the official library IMHO ;-)
You realize that stm32duino.com isn't a commercial venture yes? You should read about its origins on the WIKI FAQ. You realize the users here aren't going to provide user support for your 23k users? Based on a quick look at your product, I doubt your users are the ideal candidates to be using any of the stm32 cores.

You realize that ST's official port is barely used by anyone here? It is a brand new effort that doesn't really have anything to do with the original mission of this site, which was all about getting libmaple updated to work with the newer Arduino IDE. You realize that ST's official port is being done by a contractor? It feels to me that the main goal of the ST official core is to support the NUCLEO boards. We welcome their work as it adds more of the complete STM32 product line. However, as it uses STM32CUBEMX HAL, it is incompatible with the libmaple core and will have many differences.
-rick

Boian Mitov
Posts: 14
Joined: Sun Jul 09, 2017 9:03 pm

Re: Is OUTPUT_OPEN_DRAIN supported

Post by Boian Mitov » Wed Jul 12, 2017 9:02 pm

Rick Kimball wrote:
Wed Jul 12, 2017 8:51 pm
You realize that stm32duino.com isn't a commercial venture yes? You should read about its origins on the WIKI FAQ. You realize the users here aren't going to provide user support for your 23k users? Based on a quick look at your product, I doubt your users are the ideal candidates to be using any of the stm32 cores.

You realize that ST's official port is barely used by anyone here? It is a brand new effort that doesn't really have anything to do with the original mission of this site, which was all about getting libmaple updated to work with the newer Arduino IDE. You realize that ST's official port is being done by a contractor? It feels to me that the main goal of the ST official core is to support the NUCLEO boards. We welcome their work as it adds more of the complete STM32 product line. However, as it uses STM32CUBEMX HAL, it is incompatible with the libmaple core and will have many differences.
Thank you! I am unfortunately completely unaware of any of this :-( .
I am completely new to the ST modules, just started few days ago with them For the last 2 years, I have been working on Visuino, starting with support for the Arduino boards, and slowly adding more and more boards, with the goal one day for it to support at least all popular boards. The ST support is my latest effort at covering boards. I am simply trying to make it easy for people without programming knowledge to program whatever board they want.
Unfortunately there seems to be a bit more confusion about the ST based bards than in any of the other controllers that I had to work with so far :-( . Hopefully we all will find a way to make sure the boards are well supported and easy to use. I am concerned that I already encounter few somewhat competing and not quite compatible libraries for the Maple, and this will only cause confusion. I have tried to write my Visuino library to be able to compile with both the ST and the Leaf libraries, but I think there should be a more concerted effort to have common ST cores Arduino IDE compatible support :-(

User avatar
Rick Kimball
Posts: 1058
Joined: Tue Apr 28, 2015 1:26 am
Location: Eastern NC, US
Contact:

Re: Is OUTPUT_OPEN_DRAIN supported

Post by Rick Kimball » Wed Jul 12, 2017 9:37 pm

Boian Mitov wrote:
Wed Jul 12, 2017 9:02 pm
I have tried to write my Visuino library to be able to compile with both the ST and the Leaf libraries, but I think there should be a more concerted effort to have common ST cores Arduino IDE compatible support
For users who are using any of the stm32f103 chips, the stm32duino libmaple core is actually the best pick. It has semi efficient functions and more flight time with many users who have been using it for the last couple of years. Leaflabs developed this because ST's offerings at that time weren't open source friendly.

Since that time ST, has seen the error of their ways and have become more open source friendly. They now offer the STM32CubeMX HAL with a much more friendly license. However, this API has more overhead than either their original Standard Peripheral Library or the libmaple code. Not that the SPL stuff was lean and mean. The STM32CubeMX and the SPL APIs attempt to provide a high level interface to the chips but they don't focus on being small and efficient.

The official ST Arduino core is using the STM32CubeMX HAL API. When you add an Arduino API on top of that, it becomes less and less efficient. However Its goal is to provide access to more of the STM32 chips with the same/similar code.

So the bottom line I don't see a merging of any of the cores. People who want something semi efficient and happen to be using an STM32F1 will be using the libmaple core. People who want to use an STM32F0, STM32L0, STM32F3, STM32L3, STM32F4, STM32L4, or STM32F7 chip will probably be looking to the ST official port.
-rick

stevestrong
Posts: 1829
Joined: Mon Oct 19, 2015 12:06 am
Location: Munich, Germany

Re: Is OUTPUT_OPEN_DRAIN supported

Post by stevestrong » Thu Jul 13, 2017 7:19 am

"semi efficient" ?

Post Reply