Project with arduino HELP!

Hello

I want to do a project for school but I have no idea about Arduino.
I need to know if it is possible to make a remote control via Wifi, that simply turn On and Off equipment like speakers, computers,recording studio equipment in general. I will need to adapt each of them, but I need just one so I can demonstrate it in the final presentation.
My idea is to make an app for ipad, iphone, android, where you can see all the equipment you have, and turn them on/off.

I have no idea where to start, any help?

I have no idea where to start, any help?

Might I suggest that starting in the deep end of the pool is not a good idea.

Break the project into stages. Learn to use relays to turn the external hardware on or off.

Then, learn how to use a WiFi shield to allow the Arduino to connect to a local area network.

Then, learn how to send stuff from another device on the network to the Arduino.

Then, you can put the whole project together.

You're right!

Any ideas where I can find tutorial about relays?

While it's well worth learning to control relays, depending on what you mean by school, your instructors may not be too thrilled to have you working with mains voltages. If that's the case, consider this product from Sparkfun (or other vendors): IoT Power Relay - COM-14236 - SparkFun Electronics. It encapsulates the mains switching for you.

Id say the hardest part is gonna be the app on the other device, that's some deep programming compared to the arduino side, although the internet connection part is also a bit tough at first
and before you get to relays learn about transistors so you can properly control those relays

vdalessio:
My idea is to make an app for ipad, iphone, android, where you can see all the equipment you have, and turn them on/off.

I am working on an extremely similar project. Its not a small effort, but its a very doable project. As advised earlier, break it down, forst into two big general sections:

Hardware

Software

  • You get to write it, with the help of a lot of libraries. Based on what you said you want to implement, you'll probably want to implement a web server. But not necessarily. More on this later.

For hardware, consider you'll probably need:

  • Arduino (go for the mega)
  • Wifi shield or ethernet shield
  • Relay shield
  • Some shield with an SD card, maybe an Adafruit data logger which also adds a real time clocl

Okay, now you have some design decisions to make. To meet the project objective, you probably need a web server somewhere. So, is it on the Arduino itself, or is it on some other server? If you implement it on the Arduino you eliminate the need for another server but you complicate the Arduino software and the wifi hardware. If you implement it on a PC somewhere, the Arduino software gets easier since you now only need a client, but now you need another server and you have to write code for it.

If you go with another server, the Andriod phone, iPad, whatever client would query it. The Arduino would also query it to send status updates and also check to see if any commands are pending that it needs to implement. Writing an http client on an Arduino is relatively straightforward. So this PC based web server would act as a bridge between the client devices and your Arduino.

If you elect to put the server on the Arduino, then you need to code at least a minimal http server. You could store the web content on an SD card. As I mentioned, this changes the wifi shield selection, if of course you choose to implement wifi. You need one that acts as an access point. So, you'll probably want one with the GainSpan or H&D Wireless chips. I don't think the wiFly shield can do this, but I'm not sure. The ones with the Microchip wifi module definitely can not. If you just need wired ethernet, you would just plug it into a switch from an ethernet shield.

Finally, don't underestimate the complexity of supporting multiple mobile devices. There are several free libraries designed to do this, like:

Sencha Touch
M-GWT
jQuery

Google those for more info. You can use them either on a PC based web server or even on the Arduino web server. You can allo use "phone gap" to build your javascript into an iPhone or Android app, so you don't need to server it up through the web server, but then the user has to install the app.

Don't let all this scare you off, and good luck!

Wow! Thank you very much!

The only thing I didnt understand much, is the part of the web server. I think im going for Arduino to have it, because I dont want any PC's involved in the project. I want it to be very simple, just the arduino i will need to hook up into the equipment (speakers, etc) and the app to control it. I guess it will be more complicated. If im wrong, let me now, i'm new to all of this.

Thanks!!!

Well the webserver part is key, so you may want to try to undertand that aspect of the project. What about the web server didn't you understand?

Also, I don't know how current this is but you can check out:

http://code.google.com/p/webduino/

Well the main thing is that I want it to be via Wifi, so I will be not using the ethernet shield.

The thing I didnt understood is the part of put the server into the arduino, and storing the web content in the SD Card.

Thank you! you have no idea how much you've help!

Learn to do a google forum search for your key words of interest. Go to the below google advanced search page and type in the key word of interest for your project. Then scroll down to the "site or domain:" entry box and put in the bottom arduino forum link. Then hit enter or use the search button.

edit: sometimes the below doesn't work, possibly due to the forum being slow at times.

http://www.google.com/advanced_search?hl=en

vdalessio:
Hello

I want to do a project for school but I have no idea about Arduino.
I need to know if it is possible to make a remote control via Wifi, that simply turn On and Off equipment like speakers, computers,recording studio equipment in general. I will need to adapt each of them, but I need just one so I can demonstrate it in the final presentation.
My idea is to make an app for ipad, iphone, android, where you can see all the equipment you have, and turn them on/off.

I have no idea where to start, any help?

You do realize that what your looking to do is part of the examples for the etherShield library (the one that uses the enc28j60 chip). The WebRemote shows how to turn on pin on or off via a web page and it's trivially expandable to any number of pins and call them what you like. A relay shield just takes that pin turning on and off to do the same on a relay.

vdalessio:
Well the main thing is that I want it to be via Wifi, so I will be not using the ethernet shield.

The thing I didnt understood is the part of put the server into the arduino, and storing the web content in the SD Card.

Thank you! you have no idea how much you've help!

Okay on the wifi, do you plan to connect it to an existing wifi router, or does your device need to be the access point itself? If the former, you have several choices for wifi shield to use. If the later, you need a wifi shield that can be configured as an access point. Currently the Roving Networks stuff sort of does this not too well. The Hydrogen wifi shield using the GainSpan wifi chip should do it well, but you need to make sure that the GainSpan module has the latest firmware. There are other shields based on GainSpan, like Juniper, but I have been unable to get vendors to confirm what firmware those wifi modules are running. If it is old, you can't upgrade it unless you spend about $250 on some stuff from GainSpan. So choose carefully.

There is a lot of merit to starting this with an ordinary Ethernet shield then adding wifi later. As the prior poster said, some of what you want to do is in the enet shield examples. And, the Hydrogen card (which is currently out of stock with its manufacturer) comes with a library that is compatible with the enet library.

Whether it is wifi or wired enet, a web server in its simplest form is a program that receives requests from a client and sends data out in response. Usually, the data sent is files. You web server will want to take files, add some data to them (like are the lights on or off right now) and then send them to the client. These files are the "web content" and need to be stored somewhere. Two choices, the flash memory of the processor or on an SD card. I suppose there are yet other choices, but in practice, these are the two easiest ways to do it. If you do it on the SD card, well then you can update the web content without upgrading the program in the processor. If you don't want to have an SD card, then you have to use the flash. There is not much of it, so you'll be cramped.

Another option is to add SPI flash, but lets not go there yet.

Does that help make things a bit more clear?

It will be on an existing wifi router (the one in the studio)

Maybe i'll start the project with the ethernet shield, and when is all good, I can change it to Wifi shield.

Yes, its all clear now! Thank you!