I want to start developing embedded applications on ARM and I am looking into the tools options and honestly it's quite confusing.
I am trying to decide on which IDE and debugger I will be using and so far I see the most common are:
- MDK-ARM from Keil
- Embedded Workbench from IAR
- Eclipse (with GCC, some other compiler or even IAR or Keil)
- CoIDE from CooCox
- Crossworks from Rowley
Looking into all this options I can so far see that Keil and IAR are the industry most preferred IDE (despite looking horribly old...but most people say they compile very optimized code), and they do have some free versions.
The real issue for me is which debugger to choose. U-link only works with Keil, and I-jet only works IAR, but J-Link work with both and appear to be very good (I am not aware if using J-Link will leave some IDE special functions unavailable, I am just saying it appears to be good because it's faster to upload code). BUT all of them are really expensive (there is a student version of J-Link but it can't be used for profitable projects so I am inclined to not choose that one).
Then comes the classic poor man's choice: Olimex (around U$50-U$75). But Olimex appears to only work with IAR (and I like to have the ability to use the debugger on the IDE) and some other Open Source softwares only.
What puzzles me is I don't see many people speaking about LPC-Link2 from NXP. It's cheaper than all of them and you can upload J-Link firmware and it will work with IAR and Keil for just U$28,00! Since I don't see many people talking about it, it makes me feel there some "catch", something I am missing on it...
So what I want from this post is basically:
- What is your current tools choice (IDE and Debugger)?
- Any tools you used before and didn't like?
- Did I miss any details or important information in my "tools" options small review?
- Do you know why people don't speak much about the LPC-Link2? Are there any issues with the debugger? Performance is not good or something else? (this question is optional)
For the moderators:
I know this kind of question is not like the general Q&A type, and it becomes more of a "survey", but it's nice because it will upvote the most trusted and liked tools combinations and it will serve as future reference for future beginners like me (and can be updated as things are released in the market). Please do not close it, this can REALLY help people out!
For the moderators who placed this post on hold:
First of all, this IS the major electronics source of information out there, and there aren't many others to go. For beginners the questions usually will be about "how this works", but also, SPECIALLY in electronics, they will be "which platform should I choose and why?". Is software development there are multiple websites to point out pros and cons, but in electronics there aren't, and most decisions on electronics platforms involves buying equipment, and not being able to find the best one, means people will spend money where they shouldn't.
I made this post as a way to document all the possible combinations of ARM development toolchains and pros and cons of each one, asking people why they choose it. Yes there will be a little of "opinion based", but it will come as well with "references and specific expertise", since I made clear to ask for it. I asked "why people use it" and this will be related to their professional expertise and fields, as states the rules:
Primarily opinion-based - discussions focused on diverse opinions are great, but they just don't fit our format well.
Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than on facts, references, or specific expertise.
On the other hand, I saw this post in here, which became even a community wiki, and it isn't closed, or on hold. Why my post, which is more complete and will help even more people (people interested in a IDE and a Debugger, not just a compiler) is going to be on hold?
Honestly this kind of decision and inflexibility only harms the community, and I sincerely ask you to re-open this post, or at least close the community wiki one, otherwise, in my opinion this can be seen as a clear case of double standards.