Any recent findings on power saving methods?

  • 6 Replies
  • 616 Views
*

Offline RaduP

  • *****
  • 890
Any recent findings on power saving methods?
« on: 19 / May / 2017, 19:12:39 »
Advertisements
I haven't kept a close look at CHDK in the last years, and sort of lost touch with the development since 2009 or so when I ported CHDK on my SD980. I remember that back than tried to find ways to save power, but nothing really interesting came out of it.

A few days ago I did a test on my SX210, and wrote a script that just blinked the autofocus LED every 20 seconds while in play mode with the screen off. Most of the time was spent sleeping.
The script ran for exactly 12 hours, and the battery is rated at 1100 mAh, so that would be around 90 mA. But given the fact that the battery is 7 years old, I am guestimating that it is at around 70% of the capacity, so I guess the camera uses around 65 mAh or so. I might get a better number if decide to run it exclusively on an external battery (but I'll have to break the case).

Anyway, 65 mAh seems a lot for a camera doing nothing. Are there any new about changing the CPU clock, or perhaps disabling the watchdog and doing some HLTs or something similar? Any subsystem like USB or HDMI that can be shut down, in case it's still active?

Re: Any recent findings on power saving methods?
« Reply #1 on: 19 / May / 2017, 19:20:13 »
Well, there is this "study" :  Battery Intervalometer

And since you've last been around, the set_lcd_display( ) function has been added. It turns off more than just the backlight (i.e. set_backlight( ) ).

But I don't believe anyone has gone any deeper into finding power saving techniques beyond the ones listed in the link I just posted.
Ported :   A1200    SD940   G10    Powershot N    G16

*

Offline RaduP

  • *****
  • 890
Re: Any recent findings on power saving methods?
« Reply #2 on: 19 / May / 2017, 19:22:50 »
I googled that already :)

My script (that actually does something) looks like this:

@title Intervalometer
@chdk_version 1.3
@param a = interval (min)
@default a 3

b=a


rem set_lcd_display 0
set_aflock 1

do

s = get_tick_count

if b>=a then
set_lcd_display 1
set_record 1
shoot
sleep 2000
set_record 0
sleep 2000
set_lcd_display 0
b=0
endif

set_led 9 1
sleep 100
set_led 9 0


sleep 57*1000 - (get_tick_count - s)

set_lcd_display 1
set_record 1
set_record 0
sleep 2000
set_lcd_display 0

b=b+1   
until ( 0 )

Re: Any recent findings on power saving methods?
« Reply #3 on: 19 / May / 2017, 21:56:29 »
FWIW, most users who post here about power draw start off with the assumption that "if only" they could turn off the backlight, their battery would last for days.

Even though they also want to shoot at rates faster than 2 frames per second.

But I think your current thought process (based on your other forum post today) is somewhat different?   If you only want to shoot once per hour (for example) then how do you force the camera into the lowest possible current draw in between?

I was unable to test Canon "sleep mode" on my A1200 when I ran my initial battery tests, so that's an option to pursue if your camera supports it.  It's possible you can do that from the firmware even if it's not exposed as an option on the camera button pad I geuss.

But I suspect that the best way to achieve long term micro-power operation is to utilize a microcontroller designed to run that way, and use it to start the camera periodically and run a CHDK startup script.  The script can then do its business and shutdown the camera.


Ported :   A1200    SD940   G10    Powershot N    G16


*

Offline RaduP

  • *****
  • 890
Re: Any recent findings on power saving methods?
« Reply #4 on: 19 / May / 2017, 22:05:21 »
Well, my thought process is that the camera should not take more than I don't know, 30 mA or so while sleeping, if everything is off. This should allow for about a day of standby time. Then things like solar panels and such are an option.
Of course, the easiest way to achieve power saving is having a MCU turn the camera on every once in a while. The thing is, the camera lenses will retract too many times, and I think they would break after a while. Especially when taking a picture every 10 minutes (that's 144 times a day).

Currently, I have an A570 controlled by a MCU, but it never turns off (it's on DC power). The MCU sends an USB signal and also turns on a high power LED. I am getting very nice results, you can see some of them here: https://vimeo.com/album/4534162 and here: https://www.youtube.com/channel/UCpBheuWzDrqMQOXxWGlXglg

Anyway, I want to take some timelapse videos of things that are not near wallsocket, so I am trying to find a way where the camera would last for at the very least a few days on an external battery pack.
« Last Edit: 19 / May / 2017, 22:07:06 by RaduP »

Re: Any recent findings on power saving methods?
« Reply #5 on: 19 / May / 2017, 22:22:32 »
The thing is, the camera lenses will retract too many times, and I think they would break after a while. Especially when taking a picture every 10 minutes (that's 144 times a day).
Agreed.  Tricking the camera into not retracting the lens in playback mode would be nice.
Ported :   A1200    SD940   G10    Powershot N    G16

*

Offline RaduP

  • *****
  • 890
Re: Any recent findings on power saving methods?
« Reply #6 on: 19 / May / 2017, 22:45:52 »
Yes, I remember that I spent a LOT of time looking at tricking the camera to not retract the lenses if it is powered off with them on, and I didn't manage to get it to work :/ This is why I am hoping to find a way to just get the camera to enter a nice stand by mode.

Btw, do you happen to know the name of the deep sleep function? I am thinking of trying to call it from Lua.

 

Related Topics