Home/Farm automation. Mega+RAMPS+Ethernet? Raspberry Pi?

I will be starting to work on home/farm automation, and I'm trying to decide how I want to build the system.

Eventually, I would like a tablet permanently mounted on the wall near the house thermostat (or controlling the house HVAC...) that monitors everything over my home LAN, and where I can manually control and even catch real-time images/video.

General things I will need to do is run thermisters, run motors (maybe steppers), run actuators to open doors, sensors for this and that. Basic Arduino stuff.

But when I want to add video/pics into the mix and ethernet capability to have everything reporting to and controlled by a central server, I'm not sure.

I know that the central controller will be of Raspberry Pi, but the rest of it I'm still hung up over which way to go.

Raspberry Pi have built in ethernet/WiFi, some GPIOs and can easily handle any video needed. But they are $40+ each to get setup, but that doesn't include any drivers for motors or anything, and I don't know how they will stand up to MN winter temps (I have experience running 'duinos outside just fine). I can grab a clone MEGA+RAMPS and have all sorts of capabilities for running stuff and sensors for $20. Ethernet shields are $10. The MEGA is just super capable at doing microcontroller stuff, and extremely stable, and cheaper. I would actually be running CAT5 instead of WiFi as much as possible.

Power usage doesn't matter, they will all have access to mains.

Plus, I have experience coding for Arduino, I get to start again with a Pi :o

And on a related note, other than loosing X step & X direction on the RAMPS, any reason anybody knows of where I can't use a Mega/RAMPS/Ethernet combo?


Use an Arduino where it meets the requirement. Use an RPi where you need its extra capabilities.

You might consider the ESP8266 or the ESP32 as alternatives to the RPi - they include WiFi. The ESP32-CAM variant costs about £8.

I would use a cheap laptop for the hub of the system - it has lots of processing power and hard-drive capacity and what is effectively an uninterruptible power supply. And it is easy to program with Python. Run a web server on the laptop and other things can easily connect to it - including the tablet you want as the control hub.