Arduino on Xcode Project — Official Thread

Three things are missing:

• code sense for Arduino basic libraries, like Serial.print which remains in black
• automatic closing before uploading / launching after uploading of the serial console connected to the right port
• true Xcode 4 template

Help is welcome!

I'm not sure to understand the difference between the version for Xcode 4.2 and 4.3.

And this is weird to have 2 directories if differences are needed. It would have been better to have branches inside git. This way, we could modify the makefile for example in both version (using merge between 4.2 and 4.3).

jet_:
I'm not sure to understand the difference between the version for Xcode 4.2 and 4.3.

Changes:

  • include user libraries from SketchBook/Libraries
  • simplified sketch structure with setup() and loop() for better compatibility
  • see to do for bugs and missing features

jet_:
I'm not sure to understand the differenceAnd this is weird to have 2 directories if differences are needed. It would have been better to have branches inside git. This way, we could modify the makefile for example in both version (using merge between 4.2 and 4.3).

Back to ArduinoOnXCode4_2 folder name

So I guess you are rei-vilo from github? Is timknapen here too? I'm jeromelebel. So we are back only 2 version of Xcode project (for each repository). This is a total mess.

So now the most advance project on rei-vilo is 4_2?

by the way, why 4_3??? Xcode 4.3 is not released?

Hi all, and WOW, nice to see such nice activity on this project!

I cloned jeromelebel's git repo and got it to compile and upload the
test program (blinking on-board diode) successfully. I'm running Xcode 4.2.1.

I understand I really need to read up on Xcode to get up to speed in order
to help out. I downloaded the book "Xcode 4 developer reference" by Richard
Wentk as a start. You guys know anything about this book? Got good reviews.

I'm currently in two topics in Uni in order to learn electronics + arduino
proper, in addition to my main programming track. Bear with me as I tag
along and learn as fast as I can.

Regarding the xcodeuino.com site, I can have something up and running just as
soon as we spec our requirements. I am thinking along the lines of a simple Joomla!
installation with a 1.6-based Template from somewhere, with modules for

Any input on this? Do we need and want for this purpose at all? Maybe not / overkill?

I am thinking the purpose of this site over time is to facilitate
a quick start and a growing resource for Arduino development on OSX as well
as integration with iOS (think Prowl, push notifications and remote control) as I know
you guys have successfully done. I'm thinking there has to be large number of people
interested in the intersection Mac / Arduino / iOS.

Hi

I'm glad you tested my repository... Because, I didn't... Unfortunately I don't have any aduino with me this weekend.

I never heard anything between iOS and arduino. Is there anything to do between those 2?

I never heard anything between iOS and arduino. Is there anything to do between those 2?

Arduino with a WiFi shield :slight_smile:

Then your Arduino can e.g. use Avviso (http://avvisoapp.com/) and Prowl (http://www.prowlapp.com/) for
an easy way to create even more interrupts in your already fragmented concentration :slight_smile:

I'm looking to use iOS as a two-way remote control for Arduino. I'm thinking the easiest way to do
this is to set up a third party web service somewhere in the middle for the two to connect to to
facilitate a link. I'm not sure how, yet, but I have a thorough networking topic in this semester at Uni to
grind me in the right way.

I'm curious, what kind of projects are you guys working on regarding Arduino these days?

jet_:
So I guess you are rei-vilo from github? Is timknapen here too? I'm jeromelebel. So we are back only 2 version of Xcode project (for each repository). This is a total mess.

Yes, it is.

Actually, I started the project. Tim Knapen tool a branch. Then I closed my repository and now I'm working on a fork.

I issued pull requests to Tim Knapen repository.

I fully agree we need to pool resources and maintain one single repository.

Because I own a chipKIT UNO32 board, I use MPIDE which can address both platforms.

My goal is to build the makefile(s) I could use for Arduino and chipKIT boards from Xcode.

jet_:
by the way, why 4_3??? Xcode 4.3 is not released?

I've made a confusion about which program was concerned by the .2: .2 stands for Xcode 4.2 and not for the second release of the makefile.

It's fixed now.

To avoid confusion, I posted the MPIDE on Xcode 4.2 project on this mpideOnXCode42 repository.

Creating another repository not related to any previous repositories, was definitely not what I had in mind... The number of repository is not a problem if all are forks from each others, and if in all branches contains only one version of the code.

I hoped to convince "timknapen" to remove either 4_2 or 4_3 from his repository (and eventually he could create a branch to work on the second version), then you and I would have to merge, and eventually apply our diffs again on the remaining Xcode project.

HaakonStorm:
Regarding the xcodeuino.com site, I can have something up and running just as
soon as we spec our requirements. I am thinking along the lines of a simple Joomla!
installation with a 1.6-based Template from somewhere, with modules for

I think we badly need this website give maximum visibility on the project and to clarify the different versions.

So, let's go!

jet_:
Creating another repository not related to any previous repositories, was definitely not what I had in mind... The number of repository is not a problem if all are forks from each others, and if in all branches contains only one version of the code.

I opened a new repository because I don't want to impose the MPIDE on Xcode project on Arduino on Xcode. Reviewing and accepting a pull request ask for time.

Converting a repository into a branch isn't that difficult.

Both projects share the same issues.

I think Haakon Storm has the solution with the xcodeuino.com website.

I still believe it would be better to either create a branch in your repository, or even fork your own fork. That way, ArduinoOnXcode and your project could be benefit from each others.

Hi all,

Sorry for the mess. I just wanted to quickly share my findings about the code sense issue on XCode4 with Avenue and all the others.
Because I didn't really know if my solution was stable and I don't understand one bit of git, I just created a new folder and appended _3.
I had already run in trouble with git before, so there was also a _2 folder... had nothing to do with XCode 4.2 ... uhm yes... sorry about that.

I've cleaned it up now. There is again only one XCode4 project and I will try to learn about git as soon as possible so I can join the branching and pulling and pushing fun.

Also I don't use Lion or XCode4 myself, so all I'm doing is just suggesting some solutions, but I will be slower than the people who actually use XCode 4. I'm still on Snow Leopard and XCode 3.2.

best,
tim.

Tim,

Thanks for your hard work.

I don't know how to place the MPIDE on Xcode project along the Arduino on Xcode project.

I think Storm's idea is great.

Have a nice day.

Thanks a lot !

I will update my fork as soon as I can.

Hey Avenue33 (olivier?)

I was looking through your version of the XCode project on github and noticed that you have a way to allow paths to use '~/' for the user path. How did you manage to do that?
When I was testing this, my makefile didn't understand ~/ as the current user's home path??

Everyone else:
I will continue making a bit of a mess of the repository for a while as I start learning git and try to set my repo up as a collaborative project.
This repo only makes sense if all of you can update to it and add your improvements.
I think I should split the repo up into 4 projects because of the changes introduced in Arduino 1.0 :

  1. Arduino0022OnXCode3 : Template for Arduino 0022 with XCode 3.2 on OSX Snow Leopard
  2. Arduino1OnXCode3 : Template for Arduino 1.0 with XCode 3.2 on OSX Snow Leopard
  3. Arduino0022OnXCode4: Empty project for Arduino 0022 with XCode4 on OSX Lion
  4. Arduino1OnXCode4: Empty project for Arduino 1 with XCode4 on OSX Lion

What do you guys think? Does this make sense? I would split it up like this because making an XCode project that works with both Arduino 002x and Arduino 1.0 will become quite complicated. There are too many renamed files...
Or should we just abandon 0022 and go ahead with the latest and greatest version of Arduino.. ?

best,
tim.

@Tim

Yes, my first name is Oliver, and Rei Vilo in reverse ;).

Here's the trick for the ~:

  1. Select Project > Build settings
  2. Click on Add build setting > Add user-defined setting
  3. Add new key = SKETCHBOOK_PATH with value = ~/Documents/SketchBook/ ( ~ accepted)

timKnapen:
Or should we just abandon 0022 and go ahead with the latest and greatest version of Arduino.. ?

MPIDE is still on release 0022, so I'd like to continue with this release.

Most of the issues we're presently facing aren't Arduino- or chipKIT-releated.

They're Xcode 4-related, as code sense, serial console and template.

Hey Olivier,

"verlan" right? this much french I know :slight_smile:

I still don't get it, from your picture I can see how you add it in XCode, that's not the problem. My problem was that the makefile didn't understand ~/ and couldn't translate it into /Users/YourUserName/
That's what I'm curious about!

oh and I think I'll be able to fix code sense for the Arduino libraries too. I will test & upload it as soon as I can get to the Lion machine.

best,
tim.

The makefile:

# print info
info:
	@echo "------------------------ some info for debugging ------------------";
	@echo "\nUsing AVRDUDE: " $(AVRDUDE);
	@echo "\nUsing board: " $(BOARD);
	@echo "\nUsing BF_CPU: " $(BF_CPU);
	@echo "\nUsing SKETCHBOOK_PATH: " $(SKETCHBOOK_PATH);
        ...

The result:

------------------------ some info for debugging ------------------
Using AVRDUDE: /Applications/Arduino.app/Contents/Resources/Java/hardware/tools/avr/bin/avrdude
Using board: Arduino_UNO
Using BF_CPU: 16000000L
Using SKETCHBOOK_PATH: /Users/OlS/Documents/Arduino/_Projets
...