AVR MacPack Users?

Go To Last Post
21 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Greetings -

I am looking for AVR MacPack users who would be interested in input on a real Mac GUI interface for MacPack. Working on it right now but not ready for alpha, even. I'd like to solicit comments about the options that will be offered, how things are organized, etc. Please send me a PM if interested, or leave a note in this thread.

It WILL provide automatic linking to the text editor of your choice. It will run gcc and it will run avrdude. No editing of the makefile is required on your part; its all done behind the scenes from entries in the gui.

Jim

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I've been using it, with X-Code quite successfully. Better x-code integration would be cool. Though I would certainly look at your GUI, and offer any tips/comments.

Writing code is like having sex.... make one little mistake, and you're supporting it for life.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I don't know anything about x-code. The gui simply generates shell commands behind the scenes (as well as manages files and gives simple access to help docs).

Should have something for comments in a few days.

Jim

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I've been using VIM for editing for several months. It was OK, as I like VIM. However I got fed up with the my workflow. Every time I needed viewing/editing multiple files I ended up using multiple terminal tabs....

Eventionally switched to Xcode although I never used it before. To start new project you simply type avr-project command in terminal. This creates all necessary files off the template. There are still many things which Xcode is capable of doing however AVR-GCC integration is far from perfect.

Just my 5cents...

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Jim,

I use a Mac for one of my development machines, but not AVR MacPack - I've just used Mac Ports to get avr-gcc, avr-libc, etc. If I've understood AVR MacPack correctly, it's just the same stuff but bundled with a GUI installer and a more recent version of the compiler (which I'll need if I can ever get my hands on an AT90USB162).

I use Eclipse for C code, along with the AVR plugin (not that I use that plugin's features much) - it's the environment I'm most accustomed to because I have it across multiple platforms. Its key features are:

  • handles the make file(s) well automatically if I want it to, and can spit out a hex file without me having to think about it all;
  • handles multiple build configurations (e.g. Debug, Test, Release) for a project;
  • consistent across Linux, OS-X, and MS-Windows;
  • automatically discovers header files;
  • makes a fair effort at code completion;
  • does visual debugging through GDB.
That seems like a lot of complex features that would take considerable effort to reproduce. Is there a useful feature that I'm missing out on?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Well, lets see if I can do a compare and contrast. I am not yet THAT familiar with AVR MacPack but I'll give it a try.

1. AVR MacPack gives you a template makefile. As supplied, you need to fill in processor, clock rate, and something else. AVR MacPack GUI uses values from a "project dialog" to fill these in for you. That way, you should not have to touch the makefile.

2. Don't know how to deal with build configurations yet. That is high on my list after the interface, itself.

3. Mac only, though the underlying gcc and avrlibc are consistent across platforms. The fact that the gui is Mac, only, should not impact the outcome of the process.

4. No automatic header file discovery is planned. I could see it happening, though.

5. No code completion. It is dependent on third party editors such as TextWrangler.

6. AVR MacPack GUI will provide simple access to simulavr. I don't yet know its capabilities. I also don't know what debugging is offered.

Jim

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Oh, another thing that WILL be in it is simplified management of fuse bits with selections pertinent to the chosen micro.

Jim

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I forgot to mention the GUI fuse editor - the AVR plugin for Eclipse has one of those too.

I think there might be a market for a GUI type of make file builder on OS-X as you've proposed. Eclipse provides a lot more stuff (and complexity) than many people need. It's also very slightly clunky on a Mac, because it relies on the Java SWT libraries, which haven't quite updated to Cocoa yet. The next release of Eclipse will fix that - it's already available in a milestone build. I think it would be a good idea to play around with an Eclipse + CDT + AVR-plugin setup to get some ideas about features: what it has, what it's missing, or what you could do better.

From what you've described it doesn't sound like I'm missing out on anything fundamental, but I'll certainly take a look once you've got something ready.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I use AVR MacPack. I am using TextMate for editing and a shell script or Makefile handle compiling/uploading, which worked really well for me so far.
But in any case, I would like to try your GUI when it's at some beta stage and, who knows, maybe participate in development a little?
It's interesting to see where this is heading.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thanks for the input, folks.

I will get back to all of you who appear interested as development proceeds.

Jim

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

So what are you planning to use to develop the gui?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

It is being done in RealBasic. The code will be available to anyone who wants it. It is a native Mac application that "plays nice" with the MacOS and obeys all (well, almost all) the Apple Human Interface rules.

I am at the point of "automatic" changes to the makefile based on selections in a Project Preferences window. It automatically opens all of the project files in the editor of your choice. It is now displaying (via dropdown menu) all of the help, man, and info files for all of the component applications. It lets you select the target processor from a list that is parsed from gcc's own documentation.

It is proceeding quite well.

Jim

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

ka7ehk wrote:
It is being done in RealBasic. The code will be available to anyone who wants it. It is a native Mac application that "plays nice" with the MacOS and obeys all (well, almost all) the Apple Human Interface rules.

I am at the point of "automatic" changes to the makefile based on selections in a Project Preferences window. It automatically opens all of the project files in the editor of your choice. It is now displaying (via dropdown menu) all of the help, man, and info files for all of the component applications. It lets you select the target processor from a list that is parsed from gcc's own documentation.

It is proceeding quite well.

Jim

Ok. Presumably you'll be posting the binaries so that people who don't want to buy RealBasic can try it?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Absolutely. It will be a fully compiled native MacOS app. I was just indicating that the source code will be available.

Jim

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

ka7ehk wrote:
Absolutely. It will be a fully compiled native MacOS app. I was just indicating that the source code will be available.

Jim

Thanks Jim. Look forward to seeing it :)

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Why Mac only? This sounds like a one-window application that would be pretty easy to build as a cross-platform utility. Even if you don't have the capabilities of testing it on other OSes, it would be nice to at least start down that path so someone else can continue your work.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

This app is designed to drive the command-line of gcc. I have no idea if what is provided in AVRMacPack is compatible with everything else.

That said, RealBasic DOES produce cross-platform compiles, very nicely. The one thing I would have to mess with is the directory location(s) of gcc and all the support stuff (avrdude, etc). I will try to structure that so that the file access code is platform dependent and I can come back and put in the proper linux and Windows access procedures.

The first one out of the chute will be Mac-only. But, I will try to come back and add those things for the other OS's.

Its not quite a one-window app. There is an application preferences window, a project preferences window, the primary window to manage project files and to view messages and status information. Ultimately, there will be a "fuse editor" so that new fuse patterns can be added without me having to upgrade the app. There MAY be windows to interact with AVRDude and gdb - not sure yet.

Jim

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Ah, at first I didn't realize that you are doing it with RealBasic. Unfortunately that means you can count me out at least as a contributor, but I can still test it when it's ready :D

BTW, there is a nice program named "AVR Tools", written by Kok Chen (a retired Apple engineer). It is an Universal Binary application, written in Objective-C/Cocoa:
http://homepage.mac.com/chen/w7a...
It is completely free and source code is available without license.

It's not exactly an all-in-one package for AVR programming, but you can do many things such as hex uploading, fuse programming and it also provides terminal for communication through RS232. And what's best, you can actually take the code and expand/modify it to your needs.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Ill take a look at AVR Tools.

Thanks
Jim

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Has anything come of this? Was this project ever completed?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

No, it was not.

Jim

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net