Welcome new user! You can search existing questions and answers without registering, but please register to post new questions and receive answers. Note that due to large amounts of spam attempts, your first three posts will be manually moderated, so please be patient.
Because of un-manageable amounts of spam despite our use of CAPTCHAs, email authorization, and other tools, we have discontinued this forum (see the 700k+ registered users with validated email addresses at right?). Please email us any questions or post bug reports and feature requests on GitHub at https://github.com/jevois -- The content below remains available for future reference.
Welcome to JeVois Tech Zone, where you can ask questions and receive answers from other members of the community.

Setting the system to sleep/hibernate

0 votes

I'm using the camera for a specific event detection and processing. All other times, I actually do not require the system to be powered up and running. Is there a way/cmd to initiate and send the system into hibernation/sleep/low-power mode to save power? This is short of disconnecting the power totally from the camera and having to go through the boot sequence over again everytime the system starts up.


asked Dec 17, 2018 in User questions by adrielkuek (210 points)

1 Answer

+1 vote

We have not tried this before but this seemed to work from the inventor console:

shell echo -n mem > /sys/power/state

The video stream stops and I am guessing the camera is suspended to RAM now.

But I have no idea how to wake it up... The device /dev/ttyACM0 still exists on my host but is unresponsive. So you would need to find a way, in linux generally speaking, to sleep for some time. Maybe setup some interrupt of sorts. But beware that we did not implement a 32kHz crystal on jevois for the real time clock (RTC) so any waking up based on RTC operation will likely not work.

You could instead reduce the CPU frequency using

setpar cpumax 120

which will set it to 120MHz and should consume minimal power if you also just stop capturing video in your code and just idle away. Finally note that the fan is always on. You would need to add a switch to its positive wire to turn it off, or maybe go fanless if you can operate at reduced frequency even when awake so you won't overheat (e.g., 600MHz should be ok with no fan under full CPU load).

answered Jan 4, 2019 by JeVois (46,580 points)
Hi, we are exploring to hack and do away with the fan module on the processing board. However we need some information on the hardware diagram/layout of the board. Possible to share the schematic/Hardware diagram with us in order to do this properly?

oh, the fan is directly connected to USB 5V, so the only way to turn it off at the moment is to disconnect it. You would need some external switch if you want to control it. The easiest would be if you have an Arduino or similar connected to JeVois, you can control a relay or mosfet from the Arduino and then just cut one of the fan wires and insert your circuit there.
Just to check, is the fan module critical in the operation of the system? For our use-case where most of the time, the module will be running on low clock speed with video suspended. Only during core processing operations, the camera module may be running full load (@1200MHz) for approximately 1-2 minutes before shutting down.

Are we able to do away completely with the fan module in this case?
that has to be determined empirically (i.e., you have to test to know). The CPU can heat up quite fast with no fan and under full load, but if you are only using 1 core or have reduced load in some other way, you might be fine with 1-2 minutes. A heatsink might also help in your scenario.
we have now posted a heatsink conversion tutorial here: http://jevois.org/doc/Fanless.html