Sipy+Pytrack, Deepsleep and power consumption problem
-
I have a Sipy on a pytrack (with the shield on) and a huge power consumption problem
My 2000maH battery is empty in 48 hours. Which is ridiculous.Seems to be a deepsleep problem.
I can only put the sipy to deepsleep using :import machine machine.deepsleep(600000)that works, but it is useless as the pytrack is the one consumming
I tryed
from pytrack import Pytrack py = Pytrack() py.setup_sleep(10) py.go_to_sleep()But the code get stuck after py.setup_sleep(10)
I have to unplug and replug to get things running again.Support asked me to try :
from deepsleep import DeepSleep import deepsleep ds = DeepSleep() # get the wake reason and the value of the pins during wake up wake_s = ds.get_wake_status() print(wake_s) if wake_s['wake'] == deepsleep.PIN_WAKE: print("Pin wake up") elif wake_s['wake'] == deepsleep.TIMER_WAKE: print("Timer wake up") else: # deepsleep.POWER_ON_WAKE: print("Power ON reset") ds.go_to_sleep(10) # go to sleep for 10 secondsBut i got a
IndexError: bytes index out of range
on the ds.get_wake_status()if I go straight to ds.go_to_sleep(10) it get stuck as previously
I don't know what to do.
48h of use is not what I had in mind when I've started this projectPlease, help me.
-
@devinv the second one is the right one, but you can’t just type it (or even copy-paste it) on REPL:
setup_sleepwill start changing the state of the PIC and disable USB before you can enter the next call.Put that code in a function and call the function, it’ll work.
-
@jcaron Thanks a lot. It does work. If I'm using this Deepsleep function (for pytrack), do I need the shield?
-
@devinv no, if you use a Pytrack or Pysense, you don’t need the Deep Sleep Shield, all three do the same thing in terms of controlling deep sleep.
-
@jcaron Great, thanks, because it doesn't work when it is on.
-
@devinv Actually, I thought it did but my card is not responsive and I'm now stuck.
I get a continuousrst:0x7 (TG0WDT_SYS_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff8028,len:8
load:0x3fff8030,len:1728
load:0x4009fa00,len:0
load:0x4009fa00,len:14584
entry 0x400a059c
Starting theets Jun 8 2016 00:22:57and the hard reset (pin 12 on 3V for one second) is not getting me out of it.
What should I do? -
@jcaron Actually I still have a problem.
The py.go_to_sleep() does work but on the wake up the gps is not returning anythingif I do
py = Pytrack() gps = L76GNSS(py, timeout=60) coord = gps.coordinates() machine.deepsleep(10000)It does work, I get new coordinate very 10 secondes (but the chip is using lots of power cause it is not a full Deepsleep)
but if I do
py = Pytrack() gps = L76GNSS(py, timeout=60) coord = gps.coordinates() py.setup_sleep(10) py.go_to_sleep()It works only on the first launch.
Every following 10 secondes, it does wake up but I will get an empty coordWhat is going wrong?
-
@devinv it takes a while for a GPS chip to get a fix. You definitely won’t get a position right after wake up, the chip needs to receive ephemeris data, lock onto satellites, compute a position...
This has been discussed several times in the forum, search for the relevant topics for details.
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login