Choosing IDE for stm32 and Arduino?

kasperv79
Sat Dec 10, 2016 10:26 am
Hi guys.

Maybe you guys can recommend an IDE which is relative easy to install on OSXa d suppord Borg Arduino and stm32.

I’m just tired of the standard Arduino ide :)

Eclipse ?
Micro studio?


mrburnette
Sat Dec 10, 2016 2:53 pm
I’m just tired of the standard Arduino ide :)

There is a better way … Go off and find what you like and report back to the forum on why your selection works better for you than the stock ArduinoIDE. There is already ample discussion in the forum about alternate IDE’s.

Ray


racemaniac
Sat Dec 10, 2016 4:07 pm
I’ve now been setting everything up in visual studio with visualgdb, but for a change with the cubemx hal code, and not with one of the arduino frameworks from here.
it was a bit of a pain in the ass to get everything working (at least if you start adding usb serial & things like that, visualgdb misses some files it should include and other small annoyances).

But in the end it does work very nicely. full intellisense, uploading & debugging from stlink without issue (and having a full register map in the gui so you can immeately check all registers to see if everything is configured as expected when you hit a breakpoint :) ).

If the same could be done with the arduino framework, that would be a very nice development environment :).


Paul
Sat Dec 10, 2016 6:40 pm
I’m in a similar situation, but working on Windows. My project now has more than 25 source files and the Arduino GUI is cumbersome. I’d like to use something else. But I have limited fee time and I would rather spend it working on the project than auditioning and modifying development environments.

Any suggestions for something that is simple to set up or that has a good set of instructions?


racemaniac
Sat Dec 10, 2016 7:35 pm
Paul wrote:Any suggestions for something that is simple to set up or that has a good set of instructions?

ahull
Sat Dec 10, 2016 7:43 pm
Ray has a point, IDE is a matter of personal preference. I am comfortable editing files with vi and using make files. This is fine for some things and not others. The changes here -> https://github.com/pingumacpenguin/QtDM … 60-Version <- for example were built/edited with gedit, and vi and compiled with makefiles etc. I have no idea what environment the original author was using, but the code was well organised and easy to follow. This in my opinion is far more important than what IDE you choose to use.

I also happen to use Eclipse for work (sometimes, but not exclusively). It does the job well, but is far from perfect, and sometimes there too, I’ll just fire up vi, or hash together some grep/awk/sed stuff to grab data from some weird formatted source and squeeze it in to something more suitable for what I need. This is my choice (arguably in part because I’m and old fart, and stuck in my ways), and there are no doubt much more snazzy tools, and whizz bang APIs that would do the same thing (if I was prepared to take the time to learn them).

Have a play with the various offerings, and select the one that you feel most comfortable with. You will find that the ability to use Eclipse (and indeed vi) can be useful in a professional capacity. They are popular choices. The Arduino IDE generates quite a few snooty remarks for its look and feel, but to my mind it does its job reasonably well. I can think of far worse tools, and indeed have used, or attempted to use quite a number over the years.

An IDE is a tool, and as such it is useful for some tasks and not others. Eclipse is perhaps more of a complicated Swiss Army knife with a bunch of blades you use all the time, and some, you can only begin to guess the purpose of. The Arduino IDE is more a go to pocket knife. Not good for complex splicing of many files and in depth debugging, but easy to operate, and you wont confuse yourself or cut off a finger with it with it quite so easily. :D

Perhaps the only real advice I can give is play with a bunch of IDEs, but also learn the rudiments of vi – not because it is the best, simply because it is available for pretty much any platform. You might like to have a play with this too – > http://www.scintilla.org/SciTE.html <- not saying it is the best, but it was a long time go to GUI tool at my previous employer.

Come back here and let us know how you got on.


michael_l
Sat Dec 10, 2016 8:18 pm
I’ve used platformio to generate IDE project files so I can freely choose my IDE :

http://docs.platformio.org/en/stable/us … _init.html

I have to say it does work quite well. If the IDE supports autocomplete it works, etc. I’ve coded in Qt at some point so I can generate QtCreator project. I’ve coded with Java so I can generate project for Eclipse .. and so on. And CodeBlocks of course, very fast IDE. You’ll have to play a little with the platformio.ini file to get some things right. Then it works quite nicely.

So.. I’ve used platformio now for a while but I know this sounds funny .. I’ve not used it for compiling and uploading because that does not seem to work. But only for generating IDE project files. For example in my current project platformio compiled the .bin over 64kB even though Arduino IDE compiles it in 35kB. I use Arduino IDE only for compiling and uploading

Well, I guess it is fair to say compiling works with platformio but it just generates too large .bin files and I have no extra time to debug that further.

I would like to use it also for compiling / uploading because it is somewhat faster that Arduino IDE

ahull: there also seems to be something for VIM users as well:

http://docs.platformio.org/en/stable/id … mio-plugin


ahull
Sat Dec 10, 2016 9:05 pm
michael_l wrote:ahull: there also seems to be something for VIM users as well:

http://docs.platformio.org/en/stable/id … mio-plugin


Paul
Sat Dec 10, 2016 11:03 pm
I can use vi and vim if I must, and I’ve been an emacs user since it was written in Midas and ran on Twenex.

The Arduino UI is lacking a few things which seem to matter more as I add files to the project – simple stuff like an easy way to move back and forth between two files and to go to the declaration or definition of a function. Anything Eclipse based, or Atom, or even VS2015 community would be a big improvement. I’d rather not move from the Arduino/Maple libraries right now – I want to get the hardware up and running before I consider such changes.

I’m willing to do a bit of hacking but I would prefer to not spend time on a solution that won’t work, such as something that won’t build with the external libraries.


Riva
Mon Dec 12, 2016 8:47 am
Paul wrote:I can use vi and vim if I must, and I’ve been an emacs user since it was written in Midas and ran on Twenex.
The Arduino UI is lacking a few things which seem to matter more as I add files to the project – simple stuff like an easy way to move back and forth between two files and to go to the declaration or definition of a function.

RogerClark
Mon Dec 12, 2016 9:55 am
@Riva

I use Notepad++ as well, if I’m doing anything complex in the Arduino IDE.

But its still lacking functions like “find definition” unless you load a plugin (and those plugin’s give warnings about unsigned dll’s, so are a bit risky)


Riva
Mon Dec 12, 2016 12:01 pm
RogerClark wrote:@Riva
I use Notepad++ as well, if I’m doing anything complex in the Arduino IDE.
But its still lacking functions like “find definition” unless you load a plugin (and those plugin’s give warnings about unsigned dll’s, so are a bit risky)

Paul
Wed Dec 14, 2016 2:33 am
I installed Notepad++ and it is a nicer GUI than the Arduino. I installed a plug-in that will find function definitions within the project (but not in the libraries, unfortunately).

Do you write code in Notepad++ and then exit from it and start the Arduino GUI to compile it or is there some way to have both running without one stepping on the other?


RogerClark
Wed Dec 14, 2016 6:29 am
You need to set the preferences to say you are using an external editor, but think you still need to go into the IDE to actually build and upload.

I think platformuino has some way to automate this, and perhaps Arduino Builder does as well, but I’ve not used either of those


Riva
Wed Dec 14, 2016 4:34 pm
Paul wrote:Do you write code in Notepad++ and then exit from it and start the Arduino GUI to compile it or is there some way to have both running without one stepping on the other?

ahull
Wed Dec 14, 2016 8:31 pm
For the record, there is a similar (clone?) application under Linux called notepadqq

http://notepadqq.altervista.org/wp/

There are of course other alternatives. -> https://itsfoss.com/notepad-alternatives-for-linux/

I’m going to give notepadqq a whirl and see if it is any good..


RogerClark
Wed Dec 14, 2016 9:56 pm
Thanks Andy

I ran NPP on Linux using WINE and it seemed to work OK, but a native clone would be better


ahull
Wed Dec 14, 2016 9:58 pm
ahull wrote:For the record, there is a similar (clone?) application under Linux called notepadqq

http://notepadqq.altervista.org/wp/

There are of course other alternatives. -> https://itsfoss.com/notepad-alternatives-for-linux/

I’m going to give notepadqq a whirl and see if it is any good..


RogerClark
Wed Dec 14, 2016 10:03 pm
Andy

I better bookmark this thread ;-)


zmemw16
Thu Dec 15, 2016 1:04 pm
builds quite easily, once you get the dependencies installed, mainly qt5 ones.
debian jessie

ahull
Thu Dec 15, 2016 8:36 pm
Another possibility is to use Geany.. -> https://www.geany.org/Main/HomePage
There is also some chat about using it for building for an Arduino target here -> https://forum.arduino.cc/index.php?topic=296960.0

fredbox
Thu Dec 15, 2016 11:10 pm
I use Geany with the notepad++ color scheme from https://github.com/codebrainz/geany-the … lorschemes

There are quite a few themes there to choose from.


fredbox
Thu Dec 15, 2016 11:39 pm
I also use the Source Code Pro fonts from Adobe – https://github.com/adobe-fonts/source-code-pro. I mostly use the “regular” font. It makes it easy to distinguish a lower case L from a 1 or vertical bar.

MagSem
Fri Dec 16, 2016 9:36 am
I am using Sublime Text, Build 3083, https://www.sublimetext.com/3 as an external editor, then go into the IDE to upload code.

subl_stm.jpg
subl_stm.jpg (58.46 KiB) Viewed 759 times

michael_l
Fri Dec 16, 2016 10:39 am
I’ve been working with following combo: No way going back to Notepad++ ;-)

– platformio to generate IDE project for QtCreator. http://docs.platformio.org/en/stable/ide/qtcreator.html
– QtCreator as IDE. Quite fast with autocomplete and finds quickly declarations/methods and you can compile your project much much faster (platformio) than Arduino IDE to check for errors. http://www.stm32duino.com/viewtopic.php?t=1375
– for uploading I have to use Arduino IDE for now
– next thing is to try debugging with launching BMP GDB from QtCreator. QtCreator has nice debugging interface.

to generate project file with platformio:

pio init --ide=qtcreator --project-option="framework=arduino" -b bluepill_f103c8


Leave a Reply

Your email address will not be published. Required fields are marked *