feasibility of replacing a Raspberry Pi with Arduino for a time-lapse rig

Hi folks,

This is my first post here.

I have developed some off-grid timelapse camera rigs using Raspberry Pi's and the Canon Hackers Development Kit (CHDK) forum to leverage the excellent quality but affordable point and shoot range of cameras.

However while it's a powerful and affordable tool, the Raspberry Pi has a few drawbacks, notably

Uses a lot of power (relatively)
lacks a 'sleep mode,
open to SD card corruption over time and if power is interrupted

So I'm wondering if the features that I need might be achievable on Arduino, or maybe another microprocessor based platform

My core requirements are:

  • Weekly task scheduling (no problems here methinks)
  • Remote config of task scheduling (ideally via a self hosted web interface)
  • Local storage for data (could be SD card for instance)
  • PTP connectivity with camera for downloading images to local storage
  • Mobile data connectivity (3/4G or LTE - I'm Australian based)
  • FTP capability to upload images

Extra features that would be awesome

  • In built 12 Solar charge controller
  • LifePo4 cell balancer

I can do all of the above with Raspberry Pi and various HATs (shields in Pispeak)

If this list is possible, I'd appreciate any pointers to resources or specific boards best suited. I'd like a board with a built in real time clock, if that's possible.

If it's beyond the scope of Arduino or similar, perhaps some suggestions as to how to integrate and connect a Raspberry Pi, which is powered up on schedule to handle the stuff that's not directly possible on the microcontroller.

How, for instance, could a Raspberry Pi, access a shared storage device that has been filled with camera images under the control of the microcontroller?

Any suggestions would be welcome
Nigel

I can’t imagine what advantages an Arduino would give you over a Pi. I can foresee all the problems you are having now on the Pi being the same on an Arduino with the possible exception of the amount of power it consumes.

However if you use both you might solve your problems having the Arduino control the powering up and down of the Pi when it is needed.

You also need to look at an uninterruptible power supply design.

Grumpy_Mike:
with the possible exception of the amount of power it consumes.

Hi Mike,

Power saving… that’s what it’s all about.

I’m not having problems now… it works a treat, it’s just heavy on the juice at around 2Watts, 24 hours a day.

I did a rough comparison test yesterday, taking images once every 60 seconds:-

Test One
Current configuration rig
Raspberry Pi Zero W 1 wifi uploading thumbnail images to internet immediately on capture

1 hour = 2Wh

Test Two
Arduino as a simple timer, the camera boots for 6 seconds per minute, takes a shot then powers down

1 hour = 0.2Wh

That’s a very worthwhile saving, when you consider matching the needs with a Solar panel and batteries

Test two didn’t include the processing of images to thumbnails, or mobile data modem and upload but, these could easily be batched so the power hungry modem and Raspberry Pi will only draw power briefly.

Knowing that microprocessors have a limited flash memory for applications, my query is… can an Arduino (or similar), do all the things on my list… connecting to a camera over PTP to retrieve images, save them to storage then connect to an ftp site and upload them? Will I be able to remotely change my intervalometer settings if I need to etc?

A solar panel powered UPS will be part of the system. I just received my Lithium Phosphate battery packs this morning. I’m hoping to be able to monitor and manage the batteries remotely too, so I can respond if necessary to keep the rigs running.

There are a few solar power charge monitoring HAT’s available for the Raspberry Pi. Do they exist for Arduino too? It’s got more Analogue to Digital converters onboard if I remember correctly.

The Pi hasn’t any A/D converters on board.

can an Arduino (or similar), do all the things on my list.. connecting to a camera over PTP to retrieve images, save them to storage then connect to an ftp site and upload them?

It can but not a Uno, try a Zero or a Teensy. It will also be a lot more difficult doing it on the Arduino platform because so much of the infrastructure that comes with the Pi has to be specifically written for the Arduino.

Have you seen this about the Pi zero Raspberry Pi Zero - Conserve power and reduce draw to 80mA | Jeff Geerling

Thanks Grumpy_Mike

This turned up in a search.. looks promising

https://spellfoundry.com/product/sleepy-pi-2/

Yes that should do, it looks like a pre-built version of what I suggested in reply #1.

The only snag I can foresee is if you are waking it up every minute then the boot time might be around that so the savings might not be so good.

I've played a bit with timelapse photography recently and have tried two main approaches.

First, similar to you I've used a Linux SBC with a USB webcam. I used a NextThing CHIP SBC which is roughly equivalent to a Raspberry Pi Zero except that it has on board LiPo battery management. Sadly NextThing is out of business and excepting the battery controller capability it doesn't really address your power management issue.

The second approach is to use old Android cellphones. This gets one a reasonably good quality camera, albeit without optical zoom, much better power management than a Linux SBC, a self contained battery, trivial interface for supplementary power, and connectivity via wifi, bluetooth, USB, and over the cell network.

As Mike notes above, it's not clear what advantage Arduino brings to the table except as a controller to switch power on/off to the Linux SBC.

Hi @MrMark

Thanks for chiming in..

I went with CHDK for the resolution, which rivals that of SLRs.

I get 5152 by 2896 pixel images with an IXUS160 that costs around 60 bucks from Gumtree. So I'm riding that wave you touched on, of people dumping their point and shoot units due to having a pretty good camera in their mobile phones.

However, your comment that Android is a viable alternative are very interesting to me because I looked into the Android option during my research but couldn't find any resources to get me started.

There are time-lapse apps for sure, but none of them offer the extended functionality that I need

  • Weekly scheduling ie. Mon-Fri 8:30 am - 4:30 pm
  • Remote logging in, for updating configuration etc.
  • Resize images to thumbnail and ftp upload

Then I found the CHDK forum, where some very talented programmers share their developments in an open source and responsive community and I was up and running very quickly.

Would you be kind enough to share some links to Android resources?

Maybe I missed them.

Thanks in advance
Sdack

Grumpy_Mike:
if you are waking it up every minute then the boot time might be around that so the savings might not be so good.

Actually, with an Arduino powering up the camera, the following sequence:-

Boot up
shoot one image
shutdown

takes 6 seconds.

My current plan is to schedule the Raspberry Pi to power up much less frequently for file handling, thus reducing it's power to a fraction of the 2W/hr that my current rigs use.

For Android phone to date I've just used apps from the android app store. I don't recall off hand which one I used, but it was just taking frames at intervals. I'd then copy off the recorded video and edit offline to change playback speed or cut out bits that weren't of interest.

I have used MIT AppInventor2 which is a (free) simplified web-based Android development environment to write various Android applications. Natively it does not have sufficient control of the camera to acquire frames without user intervention, but it has a capability for extension and I see that there is at least one camera extension available (at cost) that appears to allow frame capture. It's on my list of things to do one day, but that is a rather long list.

Sdack:
Actually, with an Arduino powering up the camera, the following sequence:-

Boot up
shoot one image
shutdown

takes 6 seconds.

My current plan is to schedule the Raspberry Pi to power up much less frequently for file handling, thus reducing it's power to a fraction of the 2W/hr that my current rigs use.

That seems very quick for a Pi to boot. What OS build are you using?

Thanks Mark,

I'll look into those links.

Yes, the time-lapse apps are pretty good but they all, in my limited experience, fall short of weekly scheduling, opting instead for manually set up and monitored short duration shoots.

That seems very quick for a Pi to boot. What OS build are you using?

That's not a Pi booting, that's a Canon IXUS160 camera booting and auto running a CHDK script which, on power up, shoots the shot then shuts down.

The intervals in this set up are controlled by an Arduino operating a relay.

But that's only part of my system, I also need file handling and Internet connectivity, which is why I'm considering BOTH Android AND Pi.

My original post asks whether I really need to have BOTH but it seems Android lacks the sophistication that comes with the Pi