Stable network on an Arduino

Hi!

I am now running an Raspberry Pi as a temperature sensor for logging temperature to a external web server. But i want to use an Arduino and run a simple web server that hosts the temperature that the external server can access and put it in a mysql database.

What is the best way to get STABLE network connection to an arduino? Wifi or ethernet? Shield or integratet wifi? What arduino board is the best for this setup?

It needs to be 100 % stable as its going to run on an remote site and i cant go reseting it all the time. Yes, i can have remote restart, but that will meen downtime and i will miss some data.

Tnx!

Seems like the wrong way around to do this...

  1. Arduino for the sensors.
  2. Use Serial lines (Rx tx) to communicated arduino to the raspberry Pi.
  3. Raspberry Pi hosts the webserver.

It needs to be 100 % stable as its going to run on an remote site and i cant go reseting it all the time. Yes, i can have remote restart, but that will meen downtime and i will miss some data.

Some people have reported in the past that they have had setups that have run months at a time with no issues. You might search the forum for their post.

rolvs:
It needs to be 100 % stable as its going to run on an remote site and i cant go reseting it all the time. Yes, i can have remote restart, but that will meen downtime and i will miss some data.

The most stable applications I've made are doing like that:

  • use Ethernet Shield with W5100, not WiFi
  • use fixed IP address in the local network (not DHCP)
  • use Arduino client access to Internet webserver (not Arduino webserver for clients from the Internet)

Johnny010:
Seems like the wrong way around to do this...

  1. Arduino for the sensors.
  2. Use Serial lines (Rx tx) to communicated arduino to the raspberry Pi.
  3. Raspberry Pi hosts the webserver.

I run the sensors om an rpi today, but i want a more stable setup.

rolvs:
I run the sensors om an rpi today, but i want a more stable setup.

Define "stable"?

As af as I can tell, there have been projects going for years without a reboot of a simple linux OS on an RPi.

rolvs:
It needs to be 100 % stable as its going to run on an remote site

Nothing is 100% stable even if some things come close. But it's like the 100 year storm. It could arrive tomorrow.

To get high reliability you need to identify all possible failure modes and have contingency plans to deal with them. You also need a very challenging suite of tests for your software.

While having two microprocessors doubles the risk of a single failure it becomes very unlikely that both fail at the same time (unless they are both fed from a single power supply - but that would not be the MCU's fault). So you could arrange for each to watch the other and cause a reset if necessary.

I don't know what are the possible failure modes for a webserver, but I suspect they may be complex and easier to deal with on an RPi. Even banks have server failures. London Transport had one a few days ago when the new fares were implemented.

Using an Arduino in client mode and relying on the watchdog timer to deal with major failures may be a satisfactory option. But that assumes that the server is reliable (wherever it may be).

If access to the server requires the use of the internet you must also allow for possible internet problems that are completely beyond your control.

Another option is to set a more realistic reliability target.

...R

Check out Catweazel's Arduino web server, with home weather info. http://www.2wg.co.nz/

I seem to recall that this has been running for several years.

Johnny010:
Define "stable"?

As af as I can tell, there have been projects going for years without a reboot of a simple linux OS on an RPi.

Unless you're just looking for a fun Arduino challenge, I second just dropping the Arduino component. Assuming you've got enough voltage going to the RPi, you shouldn't have any issues with stability. You've already got the sensors working on the RPi and setting up a webserver and mysql database is on the RPi is very simple. The Aurdino is just going to add complexity to the system, possibly reducing the overall stability. I've let my RPis sit working for extended periods of time doing things similar to what you're proposing without any stability issues.