Arduino Remote Datalogger Wi-Fi/GPRS GSM

Hello all..

I'm currently doing some research on how I will do my final thesis. I own a arduino mega and an ethernet shield, but i was looking for a more sophisticated device that could do multiple things.

And basically the point of this topic is to hear some opinions about how feasible is this ideia that I have.

Connecting to my home's router by ethernet, i was able to get info out of the arduino, but in my local network, that is, without port forwarding. And here starts my question. If i wanted to use Wi-Fi shield, I could create a dns server for example and run a webserver through there? Also, if i want to me a really sophisticated user interface (to remotely monitor the datalogger) what should i look for? Application in C# for example? Is it feasible?

First what it has to do is to read sensor data, store it in a SD card, and also be available for download in a remote webserver. I checked some options about this, and i found that, using Cosm I could upload data to the webserver, and get some statistical work done with that data. But my goal was to, somehow using, for example a Csharp app, controlling the arduino, shutting down some I/O, basically controlling the arduino. Is that possible to implement using Arduino Mega + Wifi ? Also, an interesting thing would be to create some arduino app to see the results or even to configure (Through cosm this is possible i think..)

Another option that i was thinking about was, instead of WIFI, using GSM. Found a really good GPRS/GSM board in cooking hacks, and I guess that It would be another way. It would be possible for me, despite the higher power consumption, to create that suposed webserver to get the info out of te arduino. More over, it would be possible for me to text the device with some commands, or even to make the arduino capable of sending SMS alerts if some threshold level is achieved.

All in all, i was looking if you have any ideas or if you could point me for some similar project, or tutorials, informations, anything that would help me make a decision so then i could order the equipment and start working on this.

I really appreciate any help that you could provide. Thanks. Best Regards,


This issue has come up a few times in the last month, so you might want to read some of the older posts.

It is possible with more powerful computers to do things like have a VPN (virtual private network) where you can establish connections between security domains. For example, I have two laptops at home that run my work VPN software (and are secured enough to meet the rules my work sets out for connecting machines to the network), and I can log into these machines from work, by noting down the IP address on the VPN. However, this requires some site that can act as the VPN connect points that bridge the internal and external networks. I suspect none of the Arduinos have enough memory to run a full VPN as well as the full network suite that the VPN might use.

IMHO, a better approach is to have a web server that does all of the fancy GUI stuff, etc. It then has a page that the Arduino logs into, specifies password, etc. and the arduino just adds the recent log files. This page has no fancy graphics, and is just a simple way for the arduino to upload its data. All of the complex stuff is then done in the web server. Now, it means you have two sets of programs, in different languages, one for the Arduino, and one for the web server.

You might want to check out these services, that would let you do some of the work by using their servers:

A common method for instance seems to use twitter to send the information (assuming it isn't confidential).

Thanks for quick answer. I'll look into it.

Allow me to clarify some more matters of what im trying to do.

The device would be added to a water heater, receiving data from it. Now, theres several types of data i would like to get. For example, while transporting this material from one place to another (for example, factory to a client's home) I would like to know its route and movements (In order to know if something happened while it in route. Once at client's home, i would like to avoid having to mess with client's router, so basically only initial configuration of SSID and password would be required for the system to log the data remotely and, therefore, be controlled and analyzed remotely. Even though i found a shield (Red-Fly Wifi) that supports DHCP, im still struggling to see the pro's and con's of this protocol.

In some days, and after more research I'll probably come back seeking assistance

Thanks again!

I don’t know all of the details, but from your posting, it sounds like you are trying to use the wifi network in the home you are installing the heater in without ‘bothering’ the client and/or the owner of the house. I dunno, if I found a device that I didn’t authorize on my wifi network, I would likely tell the router to blacklist that device, and refuse to send packets to/from it.