Author Topic: Simplest free/cheap IDE for STM32F7 discovery board  (Read 33418 times)

0 Members and 1 Guest are viewing this topic.

Offline mark03

  • Frequent Contributor
  • **
  • Posts: 711
  • Country: us
Re: Simplest free/cheap IDE for STM32F7 discovery board
« Reply #25 on: September 17, 2015, 03:58:07 pm »
For anyone going the gcc/gdb/makefile route on STM32, I want to give a shout-out to the Black Magic debug probe (http://www.blacksphere.co.nz/main/blackmagic) as an alternative to OpenOCD or STLink.  It cleverly emulates the GDB remote debugging protocol so you can program flash, step through your application, etc. much the same as if you were debugging code on your PC.  The firmware is an open-source project, and it looks like they have just added support for STM32F7.  The author funds development by selling ready-to-go boards, but if you are a starving student you can also twiddle some solder-bridge jumpers on a Discovery board and use another STM32 programmer to install the Black Magic firmware in place of the as-shipped STLink.
 

Offline janoc

  • Super Contributor
  • ***
  • Posts: 3785
  • Country: de
Re: Simplest free/cheap IDE for STM32F7 discovery board
« Reply #26 on: September 17, 2015, 09:38:04 pm »
I was looking at Black Magic, but what is exactly the advantage over a generic JTAG/SWD dongle or STLink? 
I wasn't able to find that from the description on the website - from a quick look over the capabilities, that is pretty much all the same as what OpenOCD and a JTAG/SWD dongle can do :-//

 

Offline MT

  • Super Contributor
  • ***
  • Posts: 1616
  • Country: aq
Re: Simplest free/cheap IDE for STM32F7 discovery board
« Reply #27 on: September 17, 2015, 10:13:14 pm »
ST link is for ST devices
 

Offline EmBlocks

  • Contributor
  • Posts: 17
  • Country: nl
Re: Simplest free/cheap IDE for STM32F7 discovery board
« Reply #28 on: September 18, 2015, 06:01:12 am »
For anyone going the gcc/gdb/makefile route on STM32, I want to give a shout-out to the Black Magic debug probe (http://www.blacksphere.co.nz/main/blackmagic) as an alternative to OpenOCD or STLink.  It cleverly emulates the GDB remote debugging protocol so you can program flash, step through your application, etc. much the same as if you were debugging code on your PC.  The firmware is an open-source project, and it looks like they have just added support for STM32F7.  The author funds development by selling ready-to-go boards, but if you are a starving student you can also twiddle some solder-bridge jumpers on a Discovery board and use another STM32 programmer to install the Black Magic firmware in place of the as-shipped STLink.

OpenOCD and STlink from texane are GDB stubs (GDB server) which are using a separate hardware dongle. These applications are sitting in the middle between GDB and the Jtag probe:
GDB -> GDB server (GDB remote protocol) -> Jtag hardware (proprietary protocol)

Blackmagic has integrated the GDB stub inside the probe so you communicate directly with it from GDB with the GDB remote protocol:
GDB -> Blackmagic (GDB remote protocol)

I prefer the first setup because you can extend GDB with nice features between GDB and the stub because of the fast communication (often through localhost) while the second one is more basic. I once looked at it when I was asked if EB could support this probe. I skipped it because it uses special way of communication setup which EB didn't support and because it was hard to implement the live variable feature (peeking at variables on running target) in this probe.

« Last Edit: September 18, 2015, 06:11:16 am by EmBlocks »
 

Offline janoc

  • Super Contributor
  • ***
  • Posts: 3785
  • Country: de
Re: Simplest free/cheap IDE for STM32F7 discovery board
« Reply #29 on: September 18, 2015, 09:53:48 am »
Blackmagic has integrated the GDB stub inside the probe so you communicate directly with it from GDB with the GDB remote protocol:
GDB -> Blackmagic (GDB remote protocol)

What does that mean? You tell gdb to open the USB device directly somehow? Or is there some driver in-between anyway? (like OpenOCD driving an FTDI dongle).

 

Offline bigdawgTopic starter

  • Regular Contributor
  • *
  • Posts: 98
  • Country: us
Re: Simplest free/cheap IDE for STM32F7 discovery board
« Reply #30 on: September 18, 2015, 01:09:16 pm »
ST link is for ST devices

Thats what I am using and have not run into any issues with it so far. It would be interesting to know hear about any specific advantages of using black magic.
« Last Edit: September 18, 2015, 03:40:13 pm by bigdawg »
 

Offline mark03

  • Frequent Contributor
  • **
  • Posts: 711
  • Country: us
Re: Simplest free/cheap IDE for STM32F7 discovery board
« Reply #31 on: September 18, 2015, 03:35:55 pm »
Blackmagic has integrated the GDB stub inside the probe so you communicate directly with it from GDB with the GDB remote protocol:
GDB -> Blackmagic (GDB remote protocol)

What does that mean? You tell gdb to open the USB device directly somehow? Or is there some driver in-between anyway? (like OpenOCD driving an FTDI dongle).

When you plug it in it enumerates as a CDC serial port, which plain old GDB can talk to using its remote debugging protocol, defined eons ago.

I am not sure there is any advantage over OpenOCD.  I just like the elegance, and having not installed OpenOCD before, that looked a bit messy and I was glad to avoid it.  At the time, SWD support was also pretty new in OpenOCD; I think it is more mature now?
 

Offline janoc

  • Super Contributor
  • ***
  • Posts: 3785
  • Country: de
Re: Simplest free/cheap IDE for STM32F7 discovery board
« Reply #32 on: September 18, 2015, 08:35:49 pm »
When you plug it in it enumerates as a CDC serial port, which plain old GDB can talk to using its remote debugging protocol, defined eons ago.

Aha, I see. Makes sense.

I am not sure there is any advantage over OpenOCD.  I just like the elegance, and having not installed OpenOCD before, that looked a bit messy and I was glad to avoid it.  At the time, SWD support was also pretty new in OpenOCD; I think it is more mature now?

OpenOCD is not hard to install, there are even pre-built versions for Windows and Linux around. Or just download one of the many free IDEs - they universally ship with OpenOCD preconfigured.

SWD works just fine today, I am using it with STM32 micros. If your dongle supports it (some cheap FTDI-based ones don't because of the I/O buffer configuration - SWD needs bidirectional signalling) and is supported by OpenOCD, then no problem. It works the same as JTAG as far as debugging is concerned.

 

Offline MarkM

  • Regular Contributor
  • *
  • Posts: 64
  • Country: us
Re: Simplest free/cheap IDE for STM32F7 discovery board
« Reply #33 on: September 22, 2015, 03:41:33 pm »
I'm going to have to check out Eclipse with the ARM plugin, thanks!  I read somewhere about using a high cost IDE that has a 32k limit and using a separate compiler.  What do you think?
 

Offline janoc

  • Super Contributor
  • ***
  • Posts: 3785
  • Country: de
Re: Simplest free/cheap IDE for STM32F7 discovery board
« Reply #34 on: September 22, 2015, 07:51:54 pm »
I'm going to have to check out Eclipse with the ARM plugin, thanks!  I read somewhere about using a high cost IDE that has a 32k limit and using a separate compiler.  What do you think?

No idea. Most of those proprietary IDEs are derived from Eclipse/Netbeans/Idea anyway, so if you get used to normal Eclipse, you should not have big problems switching, if required.

« Last Edit: September 24, 2015, 04:38:07 pm by janoc »
 

Offline futaris

  • Newbie
  • Posts: 3
Re: Simplest free/cheap IDE for STM32F7 discovery board
« Reply #35 on: September 24, 2015, 03:11:39 am »
I use eclipse and gnu arm embedded on my STM32F1xx and STM32L1xx.

Once you have a bare project for whatever processor, you should be fine.

That being said, there is uClinux for the STM32F7 discovery board, if you want a full featured OS, rather than bare metal:

https://www.emcraft.com/stm32f7-discovery-board
https://github.com/EmcraftSystems
 

Offline MarkM

  • Regular Contributor
  • *
  • Posts: 64
  • Country: us
Re: Simplest free/cheap IDE for STM32F7 discovery board
« Reply #36 on: September 26, 2015, 07:20:53 am »
I ended up setting up Eclipse with GNU ARM for STM32 goodies.  Pretty sweet!  I also got the Arduino IDE 1.6.5r5 running with it.  I have multiple maple mini clone boards working in both Eclipse with the ST-Link V2 programmer and USB with the Arduino IDE.  Not sure if it was just me or not, but it took me awhile to get Eclipse working with everything like it was supposed to. :/  I've never been so happy to see an LED blink.
 

Offline janoc

  • Super Contributor
  • ***
  • Posts: 3785
  • Country: de
Re: Simplest free/cheap IDE for STM32F7 discovery board
« Reply #37 on: September 26, 2015, 11:23:03 am »
Yeah, Eclipse can be daunting if you have never used it before. But I guess that's the same for any major IDE. The good news is that once you have things set up, you won't need to touch it for a long time.
 

Offline Rolo

  • Regular Contributor
  • *
  • Posts: 206
  • Country: nl
Re: Simplest free/cheap IDE for STM32F7 discovery board
« Reply #38 on: September 26, 2015, 01:16:02 pm »
I ended up setting up Eclipse with GNU ARM for STM32 goodies.  Pretty sweet!  I also got the Arduino IDE 1.6.5r5 running with it.  I have multiple maple mini clone boards working in both Eclipse with the ST-Link V2 programmer and USB with the Arduino IDE.  Not sure if it was just me or not, but it took me awhile to get Eclipse working with everything like it was supposed to. :/  I've never been so happy to see an LED blink.

Did you follow a "how to" ? I would like to make the same step but I'm dazzled by all the info there is. Can you give more details on how you did this ?
I have a ST-Link V2 programmer and some Maple Mini clone boards I'm programming in mbed right now. Would like to step up to having a local installed IDE and tools.
Thanks !

 

Online gmb42

  • Frequent Contributor
  • **
  • Posts: 294
  • Country: gb
Re: Simplest free/cheap IDE for STM32F7 discovery board
« Reply #39 on: September 26, 2015, 05:11:47 pm »
Plenty of examples just a Google away, e.g. MCU on Eclipse or ChibiStudio that's a one stop solution or even the mbed page for offline tools
 

Offline MarkM

  • Regular Contributor
  • *
  • Posts: 64
  • Country: us
Re: Simplest free/cheap IDE for STM32F7 discovery board
« Reply #40 on: September 26, 2015, 07:49:37 pm »
Here's a link to the GNU ARM Eclipse plugins.  Just start with the overview in the links and read everything.  It ended up taking me like 2.5 hours to just get it to work, but I was having other issues with the laptop.  They also have a bunch of IDE settings they recommend as well.

http://gnuarmeclipse.github.io/

It looks really cool so far, but I haven't had the chance to get into it anymore.  Good luck!
 

Offline cncjerry

  • Supporter
  • ****
  • Posts: 1283
Re: Simplest free/cheap IDE for STM32F7 discovery board
« Reply #41 on: September 30, 2015, 03:15:18 pm »
Eclipse with ARM on mac.  I fought thru all this, and yes, those boards are complicated as all get-out.  The learning curve is as steep as you can imagine, pretty much vertical, but it is short if you have experience with other STM micros.  Having Arduino experience won't help much. The debugger doesn't work well, be prepared to exit Eclipse often and restart.

Once you get the eclipse+arm going, go here: http://stm32f4-discovery.com/ and read thru his code.  Lots of simple examples and it all works.  Plus he has a ton of experience with the F4 boards and answers his board and emails very quickly.  He's been a big help. I gave up on the F4 board three times at least before finding his site.

By the way, the F7 is a kick ass board but I doubt it is worth the effort over the F4 right now.  I've found the I/O to be slow on these boards, specifically any TFT, LCD, etc display, so the extra horsepower is wasted on apps with UI.
« Last Edit: September 30, 2015, 03:22:19 pm by cncjerry »
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf