I am looking into Crossworks and SEGGER's Embedded Studio and since they are related I am wondering which one of them is more recommendable? Right now Eclipse and the GNU Debugger work OK for me, but the Debugger behaves in a weird way sometimes and I'd rather work with something more reliable and a reliable company I can get support from.
I saw that Nordic's Michael Dietz did a blog post about Embedded Studio: devzone.nordicsemi.com/.../
Does that mean that Nordic might support Embedded Studio in the future in addition to IAR and Keil? What is the real difference between Crossworks and Embedded Studio anyways?
Any practical experiences to share here?
Well they are essentially the same product, as a long time user of Crossworks you can tell that instantly. It looks like Segger contracted Rowley to whitebox the product and streamline it to support Segger adaptors only, but if you can use one of them, you can use either of them, they work the same, the underlying tech is the same, the project files are essentially the same, the package files have a different name, and are basically the same, even the file structure of the support files is the same. I ran SES the day I found out about it, I was instantly comfortable.
They both work better than Eclipse for debugging for one very simple reason. Eclipse uses gdb server. It amazes me that even works, it's an ancient protocol over a socket, it exposes a mere fraction of the power of the debugger on the other end, whereas SES and Crossworks use the JLink DLL and that connects directly to the debug probe and proves a 1000% better, more stable experience. For that alone it's worth switching.
Also Eclipse is a great flexible tool for doing many things, Crossworks/SES is a tool for doing embedded C or C++ programming, so if you are actually doing C or C++ embedded programming, they are better tools, in my opinion. I tried the Eclipse route for a while but I'm so much more productive with Crossworks than I ever was with Eclipse.
I'd love to see Nordic support SES but to be fair they already support a Keil, IAR and gcc makefiles, there's a cost in doing that and adding another platform would be a bit onerous. Perhaps they will, fortunately it's not hard to import the projects and with a bit of practice get them running in 20 minutes or so so even if they don't support it directly, it's not hard. I got the bootloader imported into Crossworks last week, that's actually a pretty tricky one, I think it took an hour.
So pick whichever you like. SES is quite directed and has slightly fewer options to worry about, so starting with that is great, at the point you need to use one commercially you have your choice which one you want to pay for. Whichever you use, it's a great platform for embedded development, I'd never go back to something else.