Author Topic: Is ST Cube IDE a piece of buggy crap?  (Read 153462 times)

0 Members and 1 Guest are viewing this topic.

Offline peter-hTopic starter

  • Super Contributor
  • ***
  • Posts: 3591
  • Country: gb
  • Doing electronics since the 1960s...
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #975 on: August 19, 2023, 05:25:32 pm »
Quote
Go create a new machine.  Even a VM.

Indeed - use VMWARE routinely for this, and actually the right way to archive  a Cube IDE project (for long term) would be to archive such a VM. You could even distribute the kit to other devs that way - a setup which is "guaranteed" to run out of the box (windoze copyright is one issue though, but the recipient could buy a win7-64 on Ebay and replace the product code from that).

Re MX, I don't use it and don't care for it. Yes it may well be a standalone C++ module. I know someone who uses it to generate code fragments for some peripheral, takes them to bits, and dumps the rest. It saves time... much faster than reading the RM.

Quote
Most of the time I use a text editor which has few features

Sure; me too. But the average coder who is not an expert benefits from this kind of integration. Especially if this has to be documented for someone else ;)

I spent years on Brief (editor), Polymake, etc, running a Japanese £10,000 Z180 ICE for breakpoints... times have moved on and expectations have moved on. Also Cube is free, which addresses major issues (cost, project archiving, etc).

Quote
Whether it is worth installing all of that by default is a matter of opinion

ST Cube IDE does not offer a choice.

About that irritating issue with Cube IDE opening spurious files from you Debug, there are now two threads running on the ST forum. One guy described a process for fixing it but it isn't trivial. I also got asked by one ST employee for some logfile but he failed to tell me where I might find it, and never came back :) It is obvious what it is: Cube opens the C source for whichever point in the binary the CPU was running when it was halted. Normally this is not anywhere relevant; it is random. It tends to be waiting on some mutex, or in the RTOS Idle task (as you would expect). That file opening needs to be made conditional on the context in which the CPU halted. If it is not due to a breakpoint, do not open the file.
« Last Edit: August 19, 2023, 05:30:37 pm by peter-h »
Z80 Z180 Z280 Z8 S8 8031 8051 H8/300 H8/500 80x86 90S1200 32F417
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5730
  • Country: es
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #976 on: August 19, 2023, 05:41:39 pm »
Just how you do it with a text editor?
You have to keep jumping back and forth within 50 header files to check how one of many functions has to be called, or its name, what arguments it takes, or what is the actual value of __TIMEOUT define, or where is it declared.
Autocomplete and hyperlinking are true game changers.
Any structure, typedef, define, function... control+click and you instantly spawn to their declaration/implemenation.
I had to code few times in Linux using gedit, it was a ** nightmare, only increased my hate against it.
« Last Edit: August 19, 2023, 05:48:34 pm by DavidAlfa »
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline NorthGuy

  • Super Contributor
  • ***
  • Posts: 3135
  • Country: ca
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #977 on: August 19, 2023, 08:04:40 pm »
Just how you do it with a text editor?

It can open multiple files and look at them simultaneously. The current project contains 30 compilation units. I have 12 files open at the moment, mostly remnants from the past. But I could've closed 9 of them. Today, I am actively editing only two of these files. Typically, I have one place where I add or change the program. I bookmark this place, so I can easily return back any time. Once I'm done with that, I move to a different place an put the main bookmark there. If I wander away, I can return back in a click of a button.

To navigate, I also use other bookmarks, searches, clicks from compiler errors. I guess I could've added shortcuts to declarations, but it doesn't seem like something I would use often.

I set up buttons to do things for me. For example, when I press F9 now, it saves files, compiles, programs the chip, runs it, reads information from the chip and prints it to the output window. Nothing hangs. Nothing crashes. That's what important for me.

 

Offline peter-hTopic starter

  • Super Contributor
  • ***
  • Posts: 3591
  • Country: gb
  • Doing electronics since the 1960s...
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #978 on: August 19, 2023, 09:44:55 pm »
One of the key things is that in Cube you can right-click on something to see where it is defined, etc, and the file with the definition opens even if it wasn't open.

This needs a lot more than a powerful editor. And it is a huge timesaver.
Z80 Z180 Z280 Z8 S8 8031 8051 H8/300 H8/500 80x86 90S1200 32F417
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5730
  • Country: es
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #979 on: August 19, 2023, 10:03:51 pm »
That's what I'm saying.
Let's face it: Northguy wants to call a new function, he'll need to search it in the other files or use a cheatsheet. Waste of time!
In the IDE, if you remember it was "SPI_Something", just type SPI.. Press control+space, all possible matches are shown.
Etc etc etc... I will never understand emacs fanboys (Who's creator sadly recently died.. RIP).
It's like those defending asm programming.
In the time I make 1/2 program you 'll make just one function, and if you have to access large amounts of data it'll be a nightmare!
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline NorthGuy

  • Super Contributor
  • ***
  • Posts: 3135
  • Country: ca
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #980 on: August 19, 2023, 11:11:53 pm »
Let's face it: Northguy wants to call a new function, he'll need to search it in the other files or use a cheatsheet. Waste of time!
In the IDE, if you remember it was "SPI_Something", just type SPI.. Press control+space, all possible matches are shown.
Etc etc etc... I will never understand emacs fanboys (Who's creator sadly recently died.. RIP).
It's like those defending asm programming.
In the time I make 1/2 program you 'll make just one function, and if you have to access large amounts of data it'll be a nightmare!

NorthGuy spends most of the time thinking, not typing. He doesn't use libraries with gazillions of functions. He operates directly on the registers which are documented in the datasheet. Moreover, it's a good chance NorthGuy wrote something like this before. So he will copy, paste, modify to the occasion, and it'll be all done by the time you pick the required set of SPI functions from the suggested dozens.

I would use all these functions if everything was fast, didn't have bugs, didn't crash etc. I actually did use IDEs most of my life, but then I decided that speed and reliability is more important, and never looked back since. That's a personal choice. I certainly don't insist that this is the best way for everyone. Best way is making your own decisions.
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5730
  • Country: es
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #981 on: August 20, 2023, 12:58:29 am »
Have you even tried? I've spent entire afternoons coding on it.
The only crash I ocassionally have happens when opening other projects, suddenly the mouse starts switching very fast between "busy" and normal cursor.
Close the IDE, open again and continue working 20 seconds later.
It has its  ugs but there's no need to exaggerate it.
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline dkonigs

  • Regular Contributor
  • *
  • Posts: 107
  • Country: us
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #982 on: August 20, 2023, 02:29:00 am »
Etc etc etc... I will never understand emacs fanboys (Who's creator sadly recently died.. RIP).
Did you seriously just mix up Emacs and Vim there?  That's how wars get started :-)
 

Offline peter-hTopic starter

  • Super Contributor
  • ***
  • Posts: 3591
  • Country: gb
  • Doing electronics since the 1960s...
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #983 on: August 20, 2023, 06:19:47 am »
My finding is that Cube runs fine for a day or two and then something happens and it needs to be restarted.

What makes it go "funny" is debugging. If you are just editing / building (ctrl-b) it runs fine for much longer.

Does it use the Java runtime installed under Windows? I thought it came with its own copy. Relying on the host JRT is a cause of many problems.
Z80 Z180 Z280 Z8 S8 8031 8051 H8/300 H8/500 80x86 90S1200 32F417
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5730
  • Country: es
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #984 on: August 20, 2023, 07:51:10 am »
It has its own jdk.
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline peter-hTopic starter

  • Super Contributor
  • ***
  • Posts: 3591
  • Country: gb
  • Doing electronics since the 1960s...
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #985 on: August 20, 2023, 06:04:55 pm »
Is anyone able to build Cube IDE i.e. is it all open source?
Z80 Z180 Z280 Z8 S8 8031 8051 H8/300 H8/500 80x86 90S1200 32F417
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5730
  • Country: es
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #986 on: August 20, 2023, 06:33:18 pm »
Nope. It's based in Eclipse but AFAIK ST's part is private.
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline paulca

  • Super Contributor
  • ***
  • Posts: 3973
  • Country: gb
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #987 on: August 20, 2023, 06:59:11 pm »
Does it use the Java runtime installed under Windows? I thought it came with its own copy. Relying on the host JRT is a cause of many problems.

It's cross platform, you realise that right?  What use would shipping the native part of the run time with the product be?

STM32Cube runs in Linux also for example.

The Java parts will also run in IA64 or on Raspberry PI.
"What could possibly go wrong?"
Current Open Projects:  STM32F411RE+ESP32+TFT for home IoT (NoT) projects.  Child's advent xmas countdown toy.  Digital audio routing board.
 

Offline peter-hTopic starter

  • Super Contributor
  • ***
  • Posts: 3591
  • Country: gb
  • Doing electronics since the 1960s...
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #988 on: August 20, 2023, 07:31:46 pm »
The downloads for different platforms are different.
Z80 Z180 Z280 Z8 S8 8031 8051 H8/300 H8/500 80x86 90S1200 32F417
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5730
  • Country: es
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #989 on: August 20, 2023, 07:39:17 pm »
I say so because I know it, I use the built-in JDK in the building script for the soldering firmware, to launch CubeMX (Also built-in) and rebuilt HAL libs and init code automatically.
No idea about Linux or others, but in Windows it does pack its own.
« Last Edit: August 20, 2023, 07:41:52 pm by DavidAlfa »
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline peter-hTopic starter

  • Super Contributor
  • ***
  • Posts: 3591
  • Country: gb
  • Doing electronics since the 1960s...
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #990 on: August 20, 2023, 08:48:03 pm »
It would be a huge hostage to fortune to not do so.
Z80 Z180 Z280 Z8 S8 8031 8051 H8/300 H8/500 80x86 90S1200 32F417
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5730
  • Country: es
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #991 on: August 20, 2023, 09:08:29 pm »
You say so? Linux is that. If the package exist in the apt repo, nice, but if it doesn't or it's outdated you'll have to build yoru own, and you can get into an endless dependency tree nightmare very quickly!
Everything feels like
"I just made my part, how to build, use, dependencies... not my business"
"welcome to OSS... bye!"  :-DD
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline peter-hTopic starter

  • Super Contributor
  • ***
  • Posts: 3591
  • Country: gb
  • Doing electronics since the 1960s...
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #992 on: August 20, 2023, 09:18:38 pm »
Well, linux is used only by experts who love to tinker, and if they spend all day to dig out some libs they are happy :)

Windows users just expect to install a program and expect it to work.

There is enough trouble with MS VC++ distributables. This is from the project notes I've been writing as I went along:

System requirements

These are unclear for Cube IDE but current (Aug 2021) CubeMX documentation says win8.1 or higher. It has been determined experimentally that Cube v1.8.0 installs fine on win7-64 SP1 with VC++ 2019 redistributables installed.

Cube 1.5.1 has a compiler version 7.3.1 20180622.
Cube 1.6.1 has a compiler version 9.3.1 20200408.
Cube 1.7.0 is the same as 1.6.1.
Cube 1.8.0 is the same again (no change in compiler or linker)
Cube 1.9.0 has a compiler v10 which does stricter checking of various things
Cube 1.10 is same as 1.9 but crashes more often
Cube 1.12 is as above, and mostly works ok
Cube 1.13.1 has a compiler v11.3.1 20220712

Cube is not a standalone executable, is written in Java, and uses a fantastic amount of resources and runtime libraries. It installs these by itself (the computer does not need Java installed) but it also needs Visual C++ redistributables (v2015 and possibly v2019 for later Cube versions like 1.8.0) and these can be hard to install on a win7 machine especially one which missed out on Microsoft updates just before they stopped doing them for win7. It has been experimentally determined that if you cannot go above VC++ 2013 then the latest Cube which will install is 1.5.1 (which works fine, incidentally).

It is however possible to bring a win7-64 machine fully up to date, using the Simplix route described here:
https://www.sevenforums.com/installation-setup/426198-possible-create-w7-64-install-never-needs-internet-access.html
and then you can download the MS VC++ 2019 x64 redistributable package.

Z80 Z180 Z280 Z8 S8 8031 8051 H8/300 H8/500 80x86 90S1200 32F417
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5730
  • Country: es
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #993 on: August 20, 2023, 09:31:06 pm »
I love to tinker too.  But I love to tinker with what I want.
I don't want to tinker with 400 things before being able to tinker in what I wanted to tinker since the beginning.
It's so tiresome!
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline westfw

  • Super Contributor
  • ***
  • Posts: 4189
  • Country: us
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #994 on: August 20, 2023, 11:15:22 pm »
Quote
What use would shipping the native part of the [java] run time with the product be?
Sort-of like "Why would I need to save old versions of the compiler I used to build my code?"
 

History has shown that relying that the system-installed version of the Java Runtime be compatible with the runtime used to develop the original Java application is prone to causing non-operation.  I didn't follow the details, so I don't know whether that's because the apps had "bugs" that were called out in later versions of the runtime, or whether the runtime just stopped being backward compatible.  But Arduino, for example, started bundling a "known compatible" JRE quite some time ago, after "bad things happened."


 

Offline peter-hTopic starter

  • Super Contributor
  • ***
  • Posts: 3591
  • Country: gb
  • Doing electronics since the 1960s...
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #995 on: August 21, 2023, 06:13:58 am »
Java is notorious for having runtime version dependencies.

This is why I cannot understand why Oracle keep forcing people to install Java runtimes on every PC. Most Java apps do not use these because the coder knew they are a hostage to fortune. I guess a few apps demand these and then you get update requests for ever, and disabling them does not work (a bug, obviously).

Java works well in server-side usage, because there you 100% control the whole code and if it runs now it will run for ever.

It's been a fantastic money generator in certain "professional" situations. ATC software in particular, which is mostly utter crap and which cost millions to write...
Z80 Z180 Z280 Z8 S8 8031 8051 H8/300 H8/500 80x86 90S1200 32F417
 

Offline paulca

  • Super Contributor
  • ***
  • Posts: 3973
  • Country: gb
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #996 on: August 21, 2023, 08:33:13 am »
Peter.  To be honest.  I'd give up.  All of your posts in this thread just say you aren't cut out to be a developer.

If you did my day job you'd go postal in weeks.
"What could possibly go wrong?"
Current Open Projects:  STM32F411RE+ESP32+TFT for home IoT (NoT) projects.  Child's advent xmas countdown toy.  Digital audio routing board.
 

Offline peter-hTopic starter

  • Super Contributor
  • ***
  • Posts: 3591
  • Country: gb
  • Doing electronics since the 1960s...
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #997 on: August 21, 2023, 02:47:19 pm »
You are of course right. I've not had a proper job since I left univ :)
Z80 Z180 Z280 Z8 S8 8031 8051 H8/300 H8/500 80x86 90S1200 32F417
 

Offline peter-hTopic starter

  • Super Contributor
  • ***
  • Posts: 3591
  • Country: gb
  • Doing electronics since the 1960s...
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #998 on: October 30, 2023, 02:20:59 pm »
This is an example of some nasty crap in Cube - this time in ex ST Cube-MX-generated code



Normally one is pretty careful where one does a return() from a function, so everything needing a cleanup gets cleaned up.
Z80 Z180 Z280 Z8 S8 8031 8051 H8/300 H8/500 80x86 90S1200 32F417
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5730
  • Country: es
Re: Is ST Cube IDE a piece of buggy crap?
« Reply #999 on: October 30, 2023, 03:12:56 pm »
But there's nothing wrong there?
Try to lock the handler, if already locked it means something else is using it, so return BUSY, nothing to clean!
« Last Edit: October 30, 2023, 03:51:35 pm by DavidAlfa »
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf