Reputation: 308
I have a small project which will use iPad as an information kiosk for visitors to browse and one of the requirements is that the iPad needs to communicate with Arduino (with ethernet shield) by sending commands (basically texts) through LAN (or internet) to a port of another display computer.
Been reading about iPad app development including XCode, Cocoa and Objective-C. It seemed to me there's a whole bunch of programming stuff specific to the iPad to familiarize with before I can jump into development. I have a couple of years of experience in LAMP stack but still it looks a bit daunting to get started since the deadline is just well over 3 weeks.
I am now weighing my options, instead of a native app, I am gathering information on building the app using HTML and CSS (web-based). All functions would be built into a web-based app and the iPad acts as a client, triggering the function inside the web-based app and sends the command to Arduino, and the Arduino would in turn send a command to the display computer.
And I thought for a while that I might be able to setup a webserver inside the display computer. Having the iPad opens a web-based app from the webserver and triggers whatever function called and a script in the app would send a command to itself at port 3040.
Now, questions:
Much appreciated!
Upvotes: 1
Views: 6575
Reputation: 12621
Note that these days (2015+) the IDE for Arduino boards (both Windows or Mac) is really quite easy to use. Just click to download and away you go. This extremely old QA is rater out of date now.
To just "get something done" as you describe, you could possibly use something like Corona ( http://www.anscamobile.com/ or perhaps nowadays at https://coronalabs.com ) In some cases if you are just getting started with iOS/Android that can save you time.
Networking --------
Personally, I would advise you to AVOID the web-related approach. It will likely dead-end. I would advise to take the time (some days) to get some sort of simple low-level communications going between the iOS device and Arduino.
In general terms, on the iPhone, "GameKit" (if nothing else) is ridiculously easy to use for networking. For example this QA has info about how you might make your own protocol (just a data structure) and how that relates to other iOS networking concepts, and may thus answer some basic questions you have.
In answer to your other question "If I were to make a native app, what are the steps to get the app available, to at least a few personal iPads..." These days (2015+) it's basically quite easy and you needn't even pay Apple anything for up to 100 or so devices. You can easily google 1000s of QA on this, and the details will change from year to year.
Upvotes: 3
Reputation: 1120
I have implemented a similar (native) iPhone app with an Arduino. Communication was done over UDP. Today I would go for ASIHTTPRequest (http://allseeing-i.com/ASIHTTPRequest/) and a web server on my Arduino and JSON (http://interactive-matter.eu/how-to/ajson-arduino-json-library/)
The effort for a novice iOS developer building an app is very high (starting with all those certificates), so I would suggest you to put a web server on your Arduino: http://arduino.cc/en/Tutorial/WebServer and call the site in Safari. Later you can try your skill with iOS programming. And I highly recommend to start with the iOS simulator. This requires no registration and it's free! Simple download Xcode from the Mac App Store and start.
It has some limitations, but it's a lot easier than building a native app from zero. Espe
Upvotes: 1