ARM Development on Mac OS X? - Page 1
Forum section: electronics / general

author: naragon1
author_rank: Contributor
timestamp: November 30, 2015, 04:17:19 am
content: I've been doing some AVR development for ATMega168, 328, and ATTiny2313 and ATTiny85 and so far I've been able to create a decent/cheap tool chain for OSX using avrdude and an USBTiny programmer. I'm interested in playing around with ARM MCUs, but it seems like all the IDEs only seem to support Windows. Can anyone recommend a decent IDE for ARM development (commercial or otherwise ) for OS other than Windows?EDIT: I guess I should clarify - a quick Google search yields a number of potential options, e.g CrossWorks for ARM. I guess I'm looking for a specific recommendation that someone has had first hand experience with.

author: zapta
author_rank: Super Contributor
timestamp: November 30, 2015, 05:03:23 am
content: Search for Arm Pro Mini. Works flawlessly on Mac OSX using LPCXpresso.

author: andersm
author_rank: Super Contributor
timestamp: November 30, 2015, 05:47:32 am
content: I'm using Eclipse with theGCC ARM Embeddedcompiler,GNU ARM Eclipseplugin and OpenOCD for JTAG. All the software is free, and as a bonus works on Windows and Linux as well.

author: janekm
author_rank: Unknown
timestamp: November 30, 2015, 05:52:31 am
content: Simplicity Studio from Silicon Labs is a very easy-to-get-going IDE (based on Eclipse) for their range of ARM micros, that's the one-download option I would recommend (if you don't need chip flexibility).For toolchain you wanthttps://launchpad.net/gcc-arm-embeddedwhich is the version of GCC maintained by ARM.http://gnuarmeclipse.github.iooffers plugins and instructions for putting together an Eclipse-based IDE for basically any ARM Cortex based MCU. For programmers, the Blackmagic probe (https://github.com/blacksphere/blackmagic) is nice as it doesn't need any other host software than GDB, so less to install / maintain. But depending on which chip you want to program you may need to compile the latest version from github. I used an ST-Link clone (as can be found on eBay) reprogrammed as Blackmagic probe, it's great as it comes in a robust, tiny dongle.You can also use ST-Link clones directly with openocd or texane.There are now also starting to be options for using the Arduino IDE (and Arduino compatible libraries) for some ARM-based chips, for example:http://www.stm32duino.comOverall the situation is much, much better than it was even a few months agoThough things are still a bit new so it can be a bit of a time-sink to keep on top of all the changes / improvements going on.

author: kripton2035
author_rank: Super Contributor
timestamp: November 30, 2015, 07:13:35 am
content: a virtual machine like vmware fusion is a good option when developping hardware on mac os x ...don't use Parallels as it has difficulties with usb devices that are not standard (ex: programmers, etc...) you must unplug and replug everytime.

author: matseng
author_rank: Frequent Contributor
timestamp: November 30, 2015, 08:20:48 am
content: Quote from: kripton2035 on November 30, 2015, 07:13:35 amNot so sure about that. I do a lot of development for Verfone terminals and the firmware upload tools are using proprietary Verifone win-only USB drivers - it works like charm under Parallels. I really never had any major problems with the usb-passthrough in Parallels except for a rather heavy cpu load when running the Digilent Analog Discovery at too high sample rates.

author: dr_dan
author_rank: Contributor
timestamp: November 30, 2015, 09:12:59 am
content: Quote from: matseng on November 30, 2015, 08:20:48 amSeconded - I've used a a Tech-Tools digiview logic analyser, Xeltek multi-device programmer, and Atmel JTAGICE3 programmer with no issues at all under Parallels.

author: matseng
author_rank: Frequent Contributor
timestamp: November 30, 2015, 09:20:25 am
content: Quote from: dr_dan on November 30, 2015, 09:12:59 amSorry for being a bit OT heer, but are you running El Capitan and did you upgrade to to Parallels11? Not sure if the $49 for the 10->11 upgrade is enough value for the money...

author: naragon1
author_rank: Contributor
timestamp: November 30, 2015, 01:19:21 pm
content: Quote from: zapta on November 30, 2015, 05:03:23 amWow, I wasn't aware of this. It looks amazing, now I finally have an excuse for a toaster oven.

author: naragon1
author_rank: Contributor
timestamp: November 30, 2015, 01:22:23 pm
content: Thanks for all the replies. I think I have enough here to keep me busy for a few days. I used to have Windows running on VMWare Fusion setup a while back, but when I upgraded to Yosemite the older version of Fusion I had stopped working. I don't want to have to pay for either Fusion or Parallels at this point.

author: kripton2035
author_rank: Super Contributor
timestamp: November 30, 2015, 07:03:17 pm
content: Quote from: dr_dan on November 30, 2015, 09:12:59 amnice to hear these works under parallels, but I wasnt able to make mikroprog to work under parallels, and it went flowlessly under vwmare...same for a customer medical special peripheral (to scan foot pressure with usb connexion)I was able to use cypress programmers under parallels but it hanged sometimes. no hang at all since I am with vmware.

author: westfw
author_rank: Super Contributor
timestamp: November 30, 2015, 07:18:26 pm
content: (I'm really not fond of paying more for my VM/Windows SW than I would for a pretty decent used PC. Sigh.)(And I've been pretty unhappy with W8/W10 performance under Virtual Box. Is it better with the commercial packages?)

author: dr_dan
author_rank: Contributor
timestamp: November 30, 2015, 09:33:52 pm
content: Quote from: matseng on November 30, 2015, 09:20:25 amI'm not running the latest versions - it all works so I see no need to pay money for no additional functionality. OS X 10.6.8, Parallels Desktop 8.

author: dannyf
author_rank: Super Contributor
timestamp: December 01, 2015, 03:22:25 pm
content: QuoteIt is not common to run into developers on Mac: most of the ones that I ran into run their development environment inside a copy of windows on the Mac.If I were you, I would try to figure out a) if there is a particular reason you want to develop on Mac; and b) if your priority is to develop ARM or to develop it on Mac. There are reasons why most of those tools are windows based.

author: free_electron
author_rank: Super Contributor
timestamp: December 01, 2015, 03:38:48 pm
content: make your life easy : get a pc... you can find a good used pc on ebay for 200$... Get a used dell optiplex 790 or 990 with an i5 and win7 in minitower. rock solid machines.you may not like my answer , but the fact is that NOBODY, develops such tools for MacOs. It used to be that hardare development was done on Sun workstations. those went the way of the dodo due to the machine being too expensive. Pc's are a dime a dozen. Mac's are too expensive.

author: nctnico
author_rank: Super Contributor
timestamp: December 01, 2015, 03:45:42 pm
content: For those recommending Windows: perhaps it didn't occur to you or you never noticed but compiling software on Windows is extremely slow.

author: zapta
author_rank: Super Contributor
timestamp: December 01, 2015, 03:45:51 pm
content: Quote from: free_electron on December 01, 2015, 03:38:48 pmDemonstratively false.

author: Bassman59
author_rank: Super Contributor
timestamp: December 01, 2015, 03:51:27 pm
content: Quote from: zapta on December 01, 2015, 03:45:51 pmAgreed.

author: Bassman59
author_rank: Super Contributor
timestamp: December 01, 2015, 03:54:02 pm
content: Quote from: kripton2035 on November 30, 2015, 07:13:35 amI gave up on Parallels a few years ago when I noticed that it was dogshit slow trying to access the Mac hard disk which was mounted in the virtual Windows (XP at the time) as a network drive. It was unusable. I switched to VMWare and have not looked back. Recommended if you need to run Windows programs on a Mac. And I do: Xilinx tools, Altera tools, ModelSim, Altium, Keil uVision. VMWare has no problem with the various programming dongles.

author: westfw
author_rank: Super Contributor
timestamp: December 01, 2015, 05:18:42 pm
content: QuoteReally? I hadn't noticed that. Do you have a particular example that can be tested? ("download this compiler, this sample program, and run this command.")Now, it seems that the usual compile process with its myriad tmp files and helper-programs interacts REALLY BADLY with some anti-virus software, but I'm not sure that you can blame windows for that.QuoteMeh. If you do a linux version (which is increasingly desirable), you can get a Mac version nearly for free. (EAGLE took this route. Their first Mac version ran under X11 and was more unix-like than Mac-like, and that was ... fine. (well, it was "ok.")

author: nctnico
author_rank: Super Contributor
timestamp: December 01, 2015, 07:16:32 pm
content: Quote from: westfw on December 01, 2015, 05:18:42 pmI already did that test several times and WIndows is always several times slower on the same system. Besides anti-virus software (which is necessary so do blame Windows) the task switching, disk caching and memory management used in Windows are not as good as the typical Unix system and it shows if you are going to start/stop many processes and open/close many files. On really large compilation runs task switching alone can eat up a significant amount of time (the difference between running for 30 minutes or 50 minutes).

author: andersm
author_rank: Super Contributor
timestamp: December 01, 2015, 07:29:33 pm
content: GCC-based toolchains will also have the added overhead of the Unix emulation layer (MinGW/Cygwin).

author: cncjerry
author_rank: Unknown
timestamp: December 01, 2015, 08:25:08 pm
content: Eclipse with GCC on OSX. I use a large screen iMac. Best UI.

author: gmb42
author_rank: Frequent Contributor
timestamp: December 01, 2015, 09:48:25 pm
content: Quote from: nctnico on December 01, 2015, 07:16:32 pmTotally off-topic, but I couldn't resist.Anecdotes aren't data.Unless you dual-boot a machine it's somewhat hard to compare apples and apples. The simplest demonstration I can come up with to show comparable compilation times for a "large" project is the Wireshark Petri-Dishbuildbotthat provides cross-platform test compiles of changes before they are merged into master (so expect breakages).There are two build slaves, one Ubuntu using GCC, the other Windows using Visual Studio 2013, both are Amazon EC2 spot instances (so available CPU cycles can vary a bit) and both compile the Wireshark codebase in roughly the same time, approx. 14 mins.The build slaves have slightly different build sequences, but the first Ubuntu compile step is roughly equivalent to the Windows "compiled with MSBuild" step.So in this sample of 1, there's not much in it. Other examples would be interesting.

author: nctnico
author_rank: Super Contributor
timestamp: December 01, 2015, 10:55:14 pm
content: Quote from: andersm on December 01, 2015, 07:29:33 pmNot really. Under the hood Windows offers a C API (POSIX) which is pretty much the same as you'll find on Unix machine. If you don't need a GUI it is very easy to write portable code which compiles for both Windows and Unix based systems. See:http://social.technet.microsoft.com/wiki/contents/articles/10224.posix-and-unix-support-in-windows.aspx

author: andersm
author_rank: Super Contributor
timestamp: December 01, 2015, 11:14:28 pm
content: Quote from: nctnico on December 01, 2015, 10:55:14 pmThat may well be, but GCC still requires either MinGW or Cygwin (or atleast did the last time I cared about building a Windows-hosted toolchain). Many years ago the need to emulate fork and exec was cited as one reason large builds ran slower under Windows, maybe things have improved since then.

author: free_electron
author_rank: Super Contributor
timestamp: December 01, 2015, 11:42:56 pm
content: Quote from: zapta on December 01, 2015, 03:45:51 pmshow me any commercial big name tool. Raisonance, Nohau , Keil , IAR, ARM RVDS, American Arium.where are the Macos versions ?

author: zapta
author_rank: Super Contributor
timestamp: December 02, 2015, 01:16:28 am
content: Quote from: free_electron on December 01, 2015, 11:42:56 pmHmm, NOBODY became 'big names'.... That's a different statement.

author: c4757p
author_rank: Super Contributor
timestamp: December 02, 2015, 01:45:11 am
content: Quote from: zapta on December 02, 2015, 01:16:28 amI don't think he considers anything that costs less than a car to be worth his time.

author: zapta
author_rank: Super Contributor
timestamp: December 02, 2015, 02:00:39 am
content: Quote from: c4757p on December 02, 2015, 01:45:11 amSubsidized car or full price?

author: c4757p
author_rank: Super Contributor
timestamp: December 02, 2015, 02:09:57 am
content: Not even going there. O0

author: naragon1
author_rank: Contributor
timestamp: December 02, 2015, 09:26:02 pm
content: Quote from: janekm on November 30, 2015, 05:52:31 amI didn't mean for this thread to become a debate about OS. Just to close the loop, I went with the above setup which works great and was really easy to set up on OS X. In case anyone is interested and they want to set up a similar toolchain on Windows, Andy Brown did a really nice write up going the other way:http://andybrown.me.uk/2015/03/22/stm32dev-windows/

author: free_electron
author_rank: Super Contributor
timestamp: December 02, 2015, 10:04:59 pm
content: Quote from: c4757p on December 02, 2015, 01:45:11 ammy statements are based on what i see being used in industrial settings. All the companies i have worked for , or have come in contact with, all use commercially available software and development systems.Nohau, Ashling, Greenhills, ARM , Lauterbach , American Arium, Keil, IAR , and others, you name it.Commercial tools.not homebrew , not slapped together , not open source.Not a single one for MAC. Maybe one for some *nix flavor.Same goes for things like FPGA tools. win/*nix , no Macos.In 23 years, i have never seen a hardware/firmware engineering lab that used Macs. EVEN AT APPLE ! MACS are designed using WINDOWS based CAD/CAE tools.That's the simple truth. The ecosystem in that market is too small so nobody releases those kind of tools for that platform.Don't get me wrong. I also have a Mac and various other Apple machines and like em very much, when running the applications these machines are designed for.just get a cheap pc. besides : you don:t want to fry your 2700$ mac's usb port with a wonky soldered ftdi232 ... get a cheapo usb plugin card and fry that. 12$ gets you a 4 port usb pci card. fry em to your hearts content

author: nctnico
author_rank: Super Contributor
timestamp: December 03, 2015, 12:01:12 am
content: I depends completely on where you look. In the past 15 years I have been using GCC for several different microcontroller platforms almost exclusively and this wasn't initially my own choice!

author: andersm
author_rank: Super Contributor
timestamp: December 03, 2015, 09:15:54 am
content: It wasn't too long ago you'd get similar responses when asking about development on Linux.

author: zapta
author_rank: Super Contributor
timestamp: December 03, 2015, 06:09:05 pm
content: Quote from: free_electron on December 02, 2015, 10:04:59 pmI have had excellent experience with LPCXpresso from NXP on Mac OSX, including seamless integration with hardware debuggers. Same Macbook Air 11" also does PCB design (eagle), 3D modeling (openscad) and 3D printing (Simplify3D). Life is good.

author: Sal Ammoniac
author_rank: Super Contributor
timestamp: December 03, 2015, 06:20:33 pm
content: Quote from: free_electron on December 01, 2015, 11:42:56 pmRowley CrossWorks for ARM has a Mac OS version. Although Rowley may not be a "big name", CrossWorks is a fully professional tool that I wouldn't hesitate to use in a commercial environment.The best thing about it is they have a personal license for USD$150 for hobbyists like me. This is the full version too, not a limited or crippled version.

author: c4757p
author_rank: Super Contributor
timestamp: December 03, 2015, 06:30:30 pm
content: f_e, actual manufacturers provide and support cross-platform development tools. If you don't think anybody uses them commercially, what funds their development?Sounds more like you're trying to project your own experiences onto the entire industry.

author: zapta
author_rank: Super Contributor
timestamp: December 04, 2015, 03:57:01 pm
content: naragon1, would be interesting to hear what you find and what works for you.

author: free_electron
author_rank: Super Contributor
timestamp: December 04, 2015, 05:43:32 pm
content: Quote from: c4757p on December 03, 2015, 06:30:30 pmKeil has nothing for macIAR has nothing for macNohau . zipLauterbach nadaAll the 'traditional' (read : been around since the 70's) tool providers have nothing .Show me a some. enlighten me. I would love to know about some , so i can convey them to people asking for these.I don't know any , apart from some oddball like Crowley and a few 'slapped together' ( read we take eclipse and shove GCC up it's ass and release that). it gets even worse once you start throwing debuggers in the mix ( hardware debuggers , that are more than simple jtag or SWD dongles ). Then the field collapses to windows only.It goes beyond that. Good luck finding something like a Can analyser , I2C, SPi, sniffer (like totalphase's) or any other kind of 'real' tools. Agilent doesn't have anything on Mac. Tek ? keithley ? Zilch. nop.The playing field for MacOs for this kind of application is very small.It is larger on linux (and growing)But windows still owns 90% of that stuff.Why? i don't know. I'd assumed by know, given the 'techieness' of linux that there would ave been a switch, but it happens very very slowly.

author: andersm
author_rank: Super Contributor
timestamp: December 04, 2015, 05:59:06 pm
content: Quote from: free_electron on December 04, 2015, 05:43:32 pmTotal Phase have supported Macs for many years.

author: zapta
author_rank: Super Contributor
timestamp: December 04, 2015, 06:04:32 pm
content: Quote from: free_electron on December 04, 2015, 05:43:32 pmI used Saleae + Mac to decode Linbus and it worked great. It can decode many of the protocols you mentioned and they even give you an SDK so you can decode proprietary protocols.Quoteanything-outside-of-my-horizons-doesn't-exist is silly.

author: c4757p
author_rank: Super Contributor
timestamp: December 04, 2015, 06:05:21 pm
content: Quote from: free_electron on December 04, 2015, 05:43:32 pmAh, I see. If you didn't grow up with them, they're not good enough.

author: andersm
author_rank: Super Contributor
timestamp: December 04, 2015, 06:10:14 pm
content: I'm also going to go out on a limb and say the OP probably isn't in the market for a $10000 debugger, or interested in paying a couple of thousands per year in compiler maintenance fees anyway, so the point is kind of moot.

author: naragon1
author_rank: Contributor
timestamp: December 04, 2015, 06:39:37 pm
content: Quote from: zapta on December 04, 2015, 03:57:01 pmI went with gcc-arm-embedded and Eclipse. It works fine for me - no issues whatsoever. I'm used to development on Eclipse so it was a natural fit, plus it's free - can't beat that.

author: zapta
author_rank: Super Contributor
timestamp: December 04, 2015, 07:48:39 pm
content: Quote from: naragon1 on December 04, 2015, 06:39:37 pmGreat! What MCUs (or what vendor) are you using?

author: free_electron
author_rank: Super Contributor
timestamp: December 04, 2015, 08:32:23 pm
content: Quote from: c4757p on December 04, 2015, 06:05:21 pmLook , we can keep dancing around this until we have a long grey beard.old, new. doesn't matter.go to all the ARM processor suppliers. look at the tools they provide (whether their own or 3rd party) and make a list. MACos will be slim pickins ...go to all processor manufacturers for that matter. ARM 8051 , Renesas , Freescale , whatever. Look at the availability of native MacOs based tools.Go for it. prove me wrong ! Show me a list of macos tools for those things, so the next time someone asks me if there are any , i can answer yes and give them the list.

author: naragon1
author_rank: Contributor
timestamp: December 04, 2015, 09:20:47 pm
content: Quote from: zapta on December 04, 2015, 07:48:39 pmI'm playing around with an STM32F4 Discovery board. I don't do this for a living, it's just for fun. Hence all the more reason I'm not willing to shell out thousands for a "commercial" grade IDE. I'm pretty comfortable around a command line, so I don't mind struggling with GCC and other such tools.

author: nctnico
author_rank: Super Contributor
timestamp: December 04, 2015, 10:32:03 pm
content: Quote from: free_electron on December 04, 2015, 05:43:32 pmSo what? None of the traditional car makers make decent electric cars. Does that mean that there shouldn't be any electric cars?

author: rsjsouza
author_rank: Super Contributor
timestamp: December 05, 2015, 04:30:21 am
content: Quote from: free_electron on December 04, 2015, 08:32:23 pmfree_electron, I also see a similar scenario in professional dev tools, but recently TI released its IDE for MacOS and had native command-line compilers for some time. In this case, I can't help but think the marketplace is changing.

author: kc8apf
author_rank: Regular Contributor
timestamp: December 05, 2015, 08:14:18 am
content: While not officially supported, the LLVM shipped with Xcode is capable of producing ARM M profile binaries. I know a few teams at Apple use this because they can get bugs fixed quickly by walking down the hall.

author: dannyf
author_rank: Super Contributor
timestamp: December 05, 2015, 12:55:54 pm
content: There is likely a material distinction between "someone is using that tool" and "lots of people are using that tool".

author: zapta
author_rank: Super Contributor
timestamp: December 05, 2015, 03:48:46 pm
content: Quote from: kc8apf on December 05, 2015, 08:14:18 amMac OSX is also a popular platform for developing C++ code for Android ARM devices.Example (around the 13:00 mark)https://youtu.be/RJiocrkn2Z8?t=801

author: timb
author_rank: Super Contributor
timestamp: December 05, 2015, 09:32:50 pm
content: Quote from: free_electron on December 04, 2015, 08:32:23 pmTI is doing Code Composer Studio for OS X now, including their own compiler, RTOS support tools, debugger tools, etc.People had been hammering them in the forums for *years* about bringing the stuff over to OS X and this year they finally started doing it.The thing is, there's a whole generation of engineers 30 and under who grew up during the resurgence of Apple. We want OS X tools and the companies are finally starting to get the message.Over the next 10 years, you'll start seeing more and more OS X/Linux tools come out. Companies that don't provide them will become irrelevant.Just because you're old and set in your ways doesn't mean the rest of the world isn't moving forward.

author: matseng
author_rank: Frequent Contributor
timestamp: December 06, 2015, 03:00:00 am
content: Anything non-GUI really should just be a recompile away from being able to run on any os. So there're really no reason that the FPGA companies couldn't release their compilers , place&routers and whatnots for linux, osx or even android...

author: westfw
author_rank: Super Contributor
timestamp: December 06, 2015, 04:03:53 am
content: Microchip supports MacOS for its PIC compilers and MPLABX IDE.I think it's a serious mistake to ignore open-source compilers and tools that run equally well on unix/linux/windows/macos. A lot of people use these (yes, even "real, commercial devlopers".) Also, a lot of SW gets built on some sort of back-end server farm (of largely irrelevant "flavor"), with the per-engineer interaction done on "whatever the engineer wants, because engineers are weird and get upset when you try to make them use tools that they don't like."

author: zapta
author_rank: Super Contributor
timestamp: December 06, 2015, 07:16:47 am
content: Quote from: timb on December 05, 2015, 09:32:50 pmThat's what we need. ARM development environment made by and for millennials, with social media integration of course. I am tired having to tweet manually each time my project links successfully.

author: timb
author_rank: Super Contributor
timestamp: December 06, 2015, 07:35:38 am
content: Quote from: zapta on December 06, 2015, 07:16:47 amWe could go one step further and just pipe all compiler generated messages straight to Facebook.

author: kaz911
author_rank: Super Contributor
timestamp: December 06, 2015, 11:37:44 am
content: Quote from: timb on December 05, 2015, 09:32:50 pmThanks - had not noticed - now installed on my OSX dev machine - one less reason to start Parallelswhen I'm out. And no more retina sizing issues on Parallelseven better.It is a beta 2 - but enough maybe to really work multi platform.

author: timb
author_rank: Super Contributor
timestamp: December 06, 2015, 06:33:36 pm
content: Quote from: kaz911 on December 06, 2015, 11:37:44 amYes, still a beta and still not 100% up to Windows, but it's come a long way in the last 8 months! The initial beta release only supported a few MSP430 chips and no TI-RTOS! Now they've got XDC and tons of other stuff.Honestly, the best thing to come of it for me is that they've ported a ton of emulation drivers over, which means I can now program stuff like the CC2650 (which is a CM3 BTLE MCU) from OS X now. (Before, the only thing stopping me was a single DLL file...)Also, if you haven't taken a look at TI's web based tools, they're pretty nice. It's Code Composer Studio in the Cloud, basically. It's a full IDE+Debugger+Device Programmer that runs right in your browser.

author: kaz911
author_rank: Super Contributor
timestamp: December 06, 2015, 08:00:13 pm
content: Quote from: timb on December 06, 2015, 06:33:36 pmyes - thanks for the info - but web based tools are not my cup of tea.and I use CC26xx as well plus RTOS - Very versatile little things.Now we just need the tools (RF & Burner)

author: timb
author_rank: Super Contributor
timestamp: December 06, 2015, 09:43:51 pm
content: Quote from: kaz911 on December 06, 2015, 08:00:13 pmYes they are! I love the little Sensor Controller that's on the newer chips; I'm still waiting for an OS X version of the Sensor Controller Studio, at the very least they should release the compiler by itself.

author: free_electron
author_rank: Super Contributor
timestamp: December 07, 2015, 12:50:42 am
content: Quote from: timb on December 06, 2015, 07:35:38 amCodebook. Facebook for coders