Does deepsleep work at all



  • @Camot the deepsleep shield has a battery protection mechanism (LiPo batteries get damaged if you discharge them completely), therefore when the input voltage falls close to 3.3V, the deepsleep shield will disconnect power to protect the battery. This threshold voltage can be increased with the set_min_voltage_limit() and enable_auto_poweroff() methods from the deepsleep library. In any case trying to power it with a voltage that is too low won't damage anything.

    What do you mean with so many hardware bugs? Besides the deepsleep problem that we already acknowledged, and we did our best to compensate with the deepsleep shield, what other hardware issues have you found?

    Cheers,
    Daniel



  • This post is deleted!


  • @Camot said in Does deepsleep work at all:

    If I put 5v to the 5v pin, the Lopy does nothing. If I put in 3.3v at the same 5v pin, it is starting. And yes, I am using the 5v pin ....first pin right to the heartbeat.

    Can you explain it a bit better please? Where are you supplying 5V from? Is this with the LoPy inserted into the Deep Sleep shield?



  • @jmarcelino said in Does deepsleep work at all:

    @Camot said in Does deepsleep work at all:

    no, only the Lopy, the deepsleep shield, the antenna and power with a 3.3V Step-Up/Down Regulator on the Lopy 3.3V pin.

    That's the problem then, the deep sleep shield only controls - and is powered by - the Vin (labelled 5V) pin not the 3.3V.

    Try applying your 3.3V to the Vin pin instead, the LoPy regulator should enter bypass mode and hopefully the PIC10 and extra circuitry shouldn't be affected too much.

    Oh, I have not read it anywhere yet. Thank you @jmarcelino
    It works with 3.3V on the 5V pin at the DS shield. The power consumption goes down to 0.4mA during deep sleep....but more than I have expected. Besides the high deep sleep current, I found something else that's odd. If I put 5v to the 5v pin, the Lopy does nothing. If I put in 3.3v at the same 5v pin, it is starting. And yes, I am using the 5v pin ....first pin right to the heartbeat.



  • @Camot said in Does deepsleep work at all:

    no, only the Lopy, the deepsleep shield, the antenna and power with a 3.3V Step-Up/Down Regulator on the Lopy 3.3V pin.

    That's the problem then, the deep sleep shield only controls - and is powered by - the Vin (labelled 5V) pin not the 3.3V.

    Try applying your 3.3V to the Vin pin instead, the LoPy regulator should enter bypass mode and hopefully the PIC10 and extra circuitry shouldn't be affected too much.



  • @jmarcelino said in Does deepsleep work at all:

    @Camot
    Setting aside the get_wake_status() example for now does a straight up

    from deepsleep import DeepSleep
    ds = DeepSleep()
    ds.go_to_sleep(30)
    

    put the board into deep sleep for 30 seconds?

    don't think so, the board become unresponsive for 50 seconds but heartbeat continues and then it reports

    >>> ds.go_to_sleep(30)                                                                                                  
    Traceback (most recent call last):                                                                                      
      File "<stdin>", line 1, in <module>                                                                                   
      File "/flash/lib/deepsleep.py", line 156, in go_to_sleep                                                              
      File "/flash/lib/deepsleep.py", line 105, in calibrate                                                                
    IndexError: list index out of range 
    

    Repeated it 3 times with ds.go_to_sleep(30), alway 50 seconds unresponsive :/

    @daniel
    no, only the Lopy, the deepsleep shield, the antenna and power with a 3.3V Step-Up/Down Regulator on the Lopy 3.3V pin.



  • @Camot do you have anything connected to P10? That's the pin used between the LoPy and the deepsleep shield for communication...



  • @Camot
    Setting aside the get_wake_status() example for now does a straight up

    from deepsleep import DeepSleep
    ds = DeepSleep()
    ds.go_to_sleep(30)
    

    put the board into deep sleep for 30 seconds?



  • @jmarcelino said in Does deepsleep work at all:

    @Camot said in Does deepsleep work at all:

    ImportError: cannot import name DeepSleep

    Do you happen to have another file named deepsleep.py in your LoPy root folder by any chance?

    oops, thank you! How embarrassing :/ . It was still there from my pysense experiments. Anyway, still not working

    Traceback (most recent call last):                                                                                      
      File "<stdin>", line 7, in <module>                                                                                   
      File "/flash/lib/deepsleep.py", line 145, in get_wake_status                                                          
      File "/flash/lib/deepsleep.py", line 76, in peek                                                                      
    IndexError: bytes index out of range                                                                                    
    >                                                                                                                       
    MicroPython v1.8.6-724-g2b9ed601 on 2017-07-28; LoPy with ESP32                                                         
    Type "help()" for more information. 
    


  • @Camot said in Does deepsleep work at all:

    ImportError: cannot import name DeepSleep

    Do you happen to have another file named deepsleep.py in your LoPy root folder by any chance?



  • @daniel said in Does deepsleep work at all:

    @chumelnicu deep sleep works...

    Sure? Libs and Lopy updated today. Lopy attached to the DeepSleep board. Not even the first line of the example from Github or documentation works without an error

    >>> os.chdir('lib')                                                                                                     
    >>> os.listdir()                                                                                                        
    ['LIS2HH12.py', 'LTR329ALS01.py', 'MPL3115A2.py', 'pysense.py', 'SI7006A20.py', 'dth.py', 'bme280.py', 'deepsleep.py']  
    >>>                                                                                                                     
    >>> from deepsleep import DeepSleep                                                                                     
    Traceback (most recent call last):                                                                                      
      File "<stdin>", line 1, in <module>                                                                                   
    ImportError: cannot import name DeepSleep                                                                               
    >>> os.uname()                                                                                                          
    (sysname='LoPy', nodename='LoPy', release='1.7.8.b1', version='v1.8.6-724-g2b9ed601 on 2017-07-28', machine='LoPy with E
    SP32', lorawan='1.0.0')
    


  • @daniel Thx
    Was about reading HR-04 Ultrasonic Sensor and send data over lorawan.
    First i did connect Echo to Pin11 and Trigger to Pin12

    I just move it to Pin21 and Pin22 and seems all is ok

    Solved ! Thx Daniel



  • @chumelnicu deep sleep works... Can you be more specific around the way your program stops execution? A code example and the REPL output would help us understand your issue. Thanks.



  • @daniel Do deepsleep working ? I try to put my lopy after s.send(data) in lorawan config and after wake up 2 time from deepsleep the program is stop execution.

    Any solutions for that ?

    BTW ....I did try deepsleep from machine and alsi try with deepsleep board and DeepSleep from deepsleep.py library, same result



  • @RobTuDelft
    Some sensors have an "alarm" pin when values go below/over some threshold, with the deep sleep shield you could (in theory, I don't have it yet) connect those to either P17 or P18 and enable_wake_on_fall (or rise).



  • @RobTuDelft it is, but not yet. The ULP coprocessor from the ESP32 has to be used for that, but we haven't enabled support for it yet.



  • Is it currently possible to wake from deepsleep, e.g. on sensor reading?



  • @adam_IoTK waking from deepsleep starts execution from the same point as when you power up the board. There are a few patches coming soon that will allow to:

    1. Detect the reset reason, so you can know if you come from a power-on reset or deepsleep, then act accordingly.

    2. Do not start-up WiFi by default on boot. This will speed up boot times dramatically and reduce power consumption.

    3. Keep the RTC running during deepsleep.



  • @bucknall Found it in https://forum.pycom.io/topic/929/deepsleep-stops-execution-of-main

    Sorry for the confusion, and thanks for your patience.

    adam



  • This post is deleted!

Log in to reply
 

Pycom on Twitter