Back in the day.... a decent embedded environment... ESP32? - Page 1
Forum section: electronics / general

author: NivagSwerdna
author_rank: Super Contributor
timestamp: June 15, 2019, 06:24:56 pm
content: >>>Rant OnOnce upon a time I used to develop using CCS Compiler with IDE using ICD-U?? programmer/debugger against PIC 16F and 18F devices... hardware breakpoints...... today I would like to develop against ESP32.. so I download ExpressIf-IDF which is basically a command line environment... what gives?What happened to a decent integrated IDE and debug? Am I missing some magical IDE and/or tool set?I would like a proper 32kHz external crystal clock so I think Arduino is a non-starter (and anyway that doesn't have decent features like 'goto definition' etc. or debug).Has everything gone Open Source, free and crap? Is a hardware breakpoint too much to ask for? Single stepping on the target?

author: GromBeestje
author_rank: Frequent Contributor
timestamp: June 15, 2019, 06:39:11 pm
content: Hardware breakpoints, single stepping? I have to experience with the ESP32, but the ESP32 has JTAG support, and there is an openocd branch that supports it.Personally, I won't want to change IDE for every different chip. So, I would prefer anything that uses a gdb debugger, so it can be used by my IDE of choice. I don't have the hardware, but from what I see, I would have hardware breakpoints and single stepping on an ESP32 in my Eclipse IDE.

author: malagas_on_fire
author_rank: Frequent Contributor
timestamp: June 15, 2019, 07:06:13 pm
content: Check some of this links if they might help you, following the GromBeestje:https://docs.espressif.com/projects/esp-idf/en/latest/api-guides/jtag-debugging/https://github.com/Sloeber/arduino-eclipse-plugin/issues/819One IDE to rule them all

author: GromBeestje
author_rank: Frequent Contributor
timestamp: June 15, 2019, 07:51:17 pm
content: I'm using the gnu mcu eclipse plugin,*https://gnu-mcu-eclipse.github.io/which has support for ARM and RISC-V targets,But it should work for anything that has a GDB debugger. The thing you want here is it's openocd integration, and then you just point it the gdb for the xtensa architecture, and it should work.Furthremore, I use eclipse with external makefiles. So, the code is independant of eclipse. I've seen some examples for ESP8266 which build using makefiles. I'm not sure about the ESP32, but if I assume something similar, it's just pointing eclipse to the directory and it should run the makefile.I have no experience with the Arduino platform, but it seems, recent Eclipse versions have some Arduino support. By that, I mean I see "Arduino" as an option when I create a new project.

author: NivagSwerdna
author_rank: Super Contributor
timestamp: June 15, 2019, 10:05:28 pm
content: Thanks for keeping me going... I readhttps://docs.espressif.com/projects/esp-idf/en/latest/get-started/eclipse-setup.htmland at least have an IDE (although I've always hated Eclipse)... I may have been unfair about the debugging.. looks like I was just ignorance and trying to avoid the learning curve... we'll see..

author: ebclr
author_rank: Super Contributor
timestamp: June 17, 2019, 07:39:55 am
content: You can program ESP32 with Arduino IDE, that for sure is the easiest way and will Solve 85% of all your needs, Including use of each core, and low power processor

author: NivagSwerdna
author_rank: Super Contributor
timestamp: June 17, 2019, 10:36:58 am
content: Quote from: ebclr on June 17, 2019, 07:39:55 amI looking to use an external 32kHz XTAL... I don't think that configuration works under Arduino?

author: westfw
author_rank: Super Contributor
timestamp: June 17, 2019, 06:11:27 pm
content: Cheap chips have fewer tools. For espressif, selling beyond the Chinese market is a relatively new thing (data sheets? In English?!)A set of cli tools ought to be about 90% of the way to being integrated into one of the open source IDEs.It seems that “many” people hate any specific IDE, anyway.How much did you pay for your copy of CCS? Most of the non-OSSW IDE vendors have gone out of business, in between piracy, OSSW competition, and just not being able to keep up with the pace of new chips and GUI styles...

author: thm_w
author_rank: Super Contributor
timestamp: June 17, 2019, 11:29:33 pm
content: Looks like VisualGDB (paid plugin for VS) has some ESP32 support:https://visualgdb.com/tutorials/esp32/lyrat/But judging by the instructions its not completely polished yet. Their STM32 stuff is really well implemented IMO.Quote from: westfw on June 17, 2019, 06:11:27 pmIt is free now but it used to cost $800 not long ago. I think TI realized giving out free samples, IDE's and cheap dev boards is a better way to sell their chips.Being TI, some of their micros are very expensive of course.

author: westfw
author_rank: Super Contributor
timestamp: June 18, 2019, 06:40:00 am
content: (The PIC “CCS” compiler (http://ccsinfo.com) for various PICs shouldn’t be confused with TI’s “code composer studio” for TI’s various microcontrollers (msp430, arm, etc...) I’m pretty sure the OP was talking about the PIC Version, which is still sold commercially ($50 to about $600, depending on how many different PIC families and how much IDE))

author: NivagSwerdna
author_rank: Super Contributor
timestamp: June 18, 2019, 08:37:55 am
content: Quote from: westfw on June 18, 2019, 06:40:00 amIndeed I was referring to The PIC “CCS” compiler. It was a long time ago but it was approx. 1 work day value including the ICD. I tend to price tools in time.

author: Masa
author_rank: Contributor
timestamp: June 18, 2019, 08:06:40 pm
content: I have not tried this one personally, but there seems to be extensions for Visual Studio Code that claim to support ESP32:https://marketplace.visualstudio.com/items?itemName=platformio.platformio-ideVisual Studio Code is open source text editor / IDE:https://code.visualstudio.com/It supports about any language trough the extensions that can be installed from the extensions tab.And if you have command line tools, they can be added as "tasks" in the menu / keyboard shortcuts, so that you can use them like you would be using an IDE.

author: Fire Doger
author_rank: Regular Contributor
timestamp: June 19, 2019, 05:47:49 am
content: Quote from: Masa on June 18, 2019, 08:06:40 pmSubscription based licence 95$ per month for debug?Better donate them to Eclipse....

author: malagas_on_fire
author_rank: Frequent Contributor
timestamp: June 19, 2019, 12:46:01 pm
content: And pray for a cuppon. Does iar codec studio letra you programa any ti micro till 32kB? Sorry if its a bit off

author: Fire Doger
author_rank: Regular Contributor
timestamp: June 19, 2019, 05:46:27 pm
content: Quote from: Fire Doger on June 19, 2019, 05:47:49 amQuote from: malagas_on_fire on June 19, 2019, 12:46:01 pmMeh, never mind, its free nowNext time I will ask for gold bars...https://community.platformio.org/t/platformio-plus-goes-open-source-improving-embedded-development-community-worldwide/8240?utm_source=platformio&utm_medium=mail&utm_campaign=pio-plus-oss

author: westfw
author_rank: Super Contributor
timestamp: June 20, 2019, 08:55:49 am
content: (Nicely handled retraction, btw. I remembered debugging being non-free, but not as expensive as you had quoted, so I went looking to confirm. Couldn’t find ANY prices... and then came back here to see your never mind!” And other topic. Well done!)(And good news!)

author: NivagSwerdna
author_rank: Super Contributor
timestamp: June 20, 2019, 10:06:57 am
content: I haven't used PlatformIO before but might well check it out...has an overview

author: IanJ
author_rank: Unknown
timestamp: November 27, 2019, 11:52:54 am
content: Quote from: thm_w on June 17, 2019, 11:29:33 pmJust trying VisualGDB trial at the moment on a large Arduino project I am converting from Atmel 8-bit to STM32 and I am well impressed so far......loving the Visual Studio environment for Arduino.Slight issue with my Arduino libraries paths which I am discussing with support.Cost will be $99 for Embedded version once i know it all definitely works etc.Ian.

author: NivagSwerdna
author_rank: Super Contributor
timestamp: November 27, 2019, 01:11:06 pm
content: FWIW I moved to VSC and Platform.io and had a generally better experience. For my use case I discovered that the Arduino builds did not allow running off the external 32kHz XTAL very well... I had some success with the SDK and then got sidetracked...It will be interesting to know how your VisualGDB adventure goes.

author: newbrain
author_rank: Super Contributor
timestamp: November 27, 2019, 01:42:48 pm
content: VS Code is my gotoeditornowadays, and I sometimes use it for development too (especially remote ssh/wsl).But I'm a very happy customer of VisualGDB: I have been using it for a number of years now and did not find any serious problems (some bugs here and there, yes).I bought the embedded version, and it supports all the MCUs I use (ST and NXP mostly) and tons more...Its ability to import NXP SDKs and Cube MX projects is also nice.ESP32 is supported, too, give it a try.Visual Studio Community is free for any non-enterprise use (a bit of oversimplification, check the license for your use case) and an extremely good IDE - much better than any (vendor shipped version of) Eclipse - of course, Windows only.

author: IanJ
author_rank: Unknown
timestamp: November 27, 2019, 07:53:41 pm
content: Quote from: newbrain on November 27, 2019, 01:42:48 pmWell, I ported across my biggest Arduino Atmega1284 project, 13off .ino files and a good few hundreds of lines of code (not counting 7 libraries). and re-wrote some of the code STM32 and in VS/VisualGDB it compiles and uploads to a STM32F103 just fine.One issue I do have is the <STM32Sleep.h> won't compile, it complains about a libmaple/gpio.h file is missing. That file isn't in the sleep library folder but in another STM32duino lib folder.......but I just can't get it to compile without error so for now I have contacted VisualGDB support and commented out my sleep functionality. Wierd because it compiles fine with the Arduino IDE.There's another library (U8G2) which won't compile also unless I specifically reference it directly in Arduino Settings.........dunno why!One issue with VS 2019 is the damn Code References that scatter themselves all over my code (pic below....WTF!).......no matter what I do it won't switch off. This could be a deal breaker so holding off on purchasing VisualGDB till I sort it out.So far so good though......Ian.

author: westfw
author_rank: Super Contributor
timestamp: November 28, 2019, 02:41:58 am
content: QuoteSo, how screwed are you now that both Leaflabs and RogerClark have left, leaving STM32 support to ST, who doesn't use the libmaple stuff? Do the VisualGDB folk have a roadmap for jumping on the newer ST-based code? Presumably you're fine until the older stuff actually breaks, or you need a newer chip that isn't supported there, but ... I'd be worried...

author: IanJ
author_rank: Unknown
timestamp: November 29, 2019, 12:27:22 pm
content: Quote from: westfw on November 28, 2019, 02:41:58 amNot screwed at all.....there are always workarounds and other options......just aiming high is all at the moment.What looks good about VisualGDB is that I have made no source code changes at all from Arduino IDE to Visual Studio, nor to any of the libraries etc because VisualGDB just uses the Arduino exe's in the background........so can always go back. The issues are one of configuration I am told by VisualGDB sk hopefully sorted soon.My use of STM32 is very light, just F1 and L1 so far.Ian.

author: newbrain
author_rank: Super Contributor
timestamp: November 29, 2019, 02:00:27 pm
content: Quote from: IanJ on November 27, 2019, 07:53:41 pmThat's easy: search for CodeJumps in the Tools->Options dialogue and set everything to False.You can also fine tune which ones are shown.I love this, so I keep it enabled.