Getting started with PyGos and Pylife


  • Global Moderator

    Welcome to the PyLife section of the forum. This is a space for discussion and help about using PyGos with the Pylife app.
    The first place to go to get started with PyGos is our documentation:
    https://docs.pycom.io/pylife/

    This should cover everything to get you up and running, and please say if there are things that aren't clear.

    For those of you who like to plug things in and try them out before reading and documentation: it is important to do a firmware upgrade as soon as you turn the PyGo on.

    If you are on Android, please make sure you are using the most recent version of the app.



  • @Daniel-Almeida PyGo products are not support by the new Pycom BV company, and in fact they never worked. The community is waiting, if there is some activity by Pycom BV for PyGo, like publishing the hardware design and the firmware sources. But even if, it will take time.



  • @Aisham-Zaha Hi, I bought some pygo1, but I need some examples to work with this devices, like lorawan, Gps, Bluetooth, is it possible that I can find some documentation about it?



  • So the PyGo won't be maintain and unless some company thinks it has any value to them, which is unlikely the PyGo never was and never will be.

    https://forum.pycom.io/topic/7748/the-future-of-pycom/11



  • Hi all!

    Pleased to announce that Pycom Ltd has been acquired by Season Group!

    Season Group is an international electronics design and manufacturing services provider headquartered in Hong Kong with sites in China, Malaysia, Mexico, and the U.K.

    All assets will be purchased by Pycom BV, a newly established company in the Netherlands, and will run as an autonomous subsidiary to maintain its start-up culture. Pycom BV will continue to help developers productize their unique concepts into reality with Season Group’s customized end-to-end services.

    Feel free to find out more in the press release here



  • @exa See below, 5 days ago. Maybe the Administrators find a way to continue operation. It would not be the first company which went successfully through that phase. But the chances are odd.



  • Screenshot_20220926-195628.png

    We're screwed



  • @Mr-Admin It should be possible to use OTA to load a generic firmware. A script has to be written to make use of OTA update, I have made two different ones in the past, when testing the OTA implementatton. One using a sd card access, one accessing a ftp server. That one should as well work with the PyGo devices. Code below as example.

    #
    # OTA update using ftplib and the pycom.ota_* methods
    #
    from ftplib import FTP
    from pycom import ota_start, ota_write, ota_finish
    import gc
    
    class OTA:
        def __init__(self, verbose = True):
            self.size = 0
            self.verbose = verbose
    
        def ota(self, server_ip, user, password, filename, blocksize):
            try:
                ftp = FTP(server_ip, 21, user, password)
                ota_start()
                res = ftp.retrbinary("RETR " + filename, self._do_write, blocksize)
                ota_finish()
                if self.verbose:
                    print("")
            except Exception as res:
                pass
            return res
    
        def _do_write(self, data):
            ota_write(data)
            if self.verbose:
                self.size += len(data)
                print("\r%7d " % self.size, end="")
            gc.collect()
    
    def run():
            ota = OTA()
            res = ota.ota("10.0.0.171", "linaro", "linaro", "appimg.bin", 4096)
            print(res)
    
    run()
    


  • @Mr-Admin
    A BOM in the datasheet could really help us, but guess what...there is no BOM :-D
    The W01 is 43mm long, just like the casing of the pygos. So that can not fit in physically.

    There is this command which makes me wonder now:
    curl -v --request GET http://192.168.4.1/status -H "FW-Header-1: ota-verify"
    Question is what does this verify. For sure this device would need a ton of reverse engineering by the community before we could do anything useful with them.



  • @Mr-Admin GPIO0 is not accessible. So you cannot put the device into the usual bootloader mode. There may be a way to start that by software.



  • @Gritty-moonshaw It started scanning relevant sites a while ago, because that's what I assumed. So: bye bye Pycom.



  • Here's our answer Screenshot 2022-09-21 at 16.28.46.png



  • @Peter-Bankuti
    Given with the cradle we have the REPL, it should be possible to flash any ESP32 image if we have P8 and P2 to boot into the expressive firmware updater?
    Without a schema its tricky... but we know which pins are on the back assuming the datasheet is correct.

    • LTE module is probably on the other UART (pygo2)
    • Lora as per LO1 modules I would suspect
    • accelero (Bosch), battery charger ocntroller, GPS on I2C bus - an i2c scan might show them
    • screen - SPI?
      The GPS and LTE might be held in reset using gpios (maybe via io expander) which would make it more tricky to detect them!


  • @Brian-Wyld That reads like interesting, hard core folks can try do at least some exploration with the board. As for the tapping pattern i am beginning to consider trying different variations with a hammer ;-)



  • @robert-hh Nice, it works! I did not know about that.



  • @Bernard-D-Havé
    Yes, if you are a tidy person, you can check the sticker on sheath in which they delivered the pygos :-D
    If you mixed things up, then try to put your devices on the wireless charging pad. In most cases the pygo1 devices do not start charging, while pygo2 do. However i am not sure if that is true for all the devices.
    I guess there should be some curl commands that would return relevant info about which FW is currently installed on the devices. That way one could find out, though pycom has not disclosed such a command yet.

    Maybe someone else has an idea in this regard, but anyway i do not think you could do anything useful with the devices until pycom comes up with a firmware that does what we expect. I mean theoretically we could flash any firmware on the device with the cradle. Problem is: there is not even an LED we could blink. We do not know what parts make up the system so we can not begin to play around with those at least. And on the cradle i also do not find any broken out pins for external sensors (that was the idea at the beginning), so we even can not display humidity data if we have such a sensor lying around in our drawer.

    As @robert-hh wrote even a 3€ ESP32 is more fun.



  • @Bernard-D-Havé Just connect via Cradle to a terminal app. You will have a REPL prompt. There, push ctrl-b.



  • @Peter-Bankuti Hi Peter,
    I received also my cradle. But I don't know which PyGo is the one or two.
    Do you know how to make the difference as the firmware is not the same for the 2 units?

    Many thanks,
    Bernard



  • Today i got my cradle. I am trying to be fair:

    • it was easy to update the firmware on both my pygo1 and pygo2 device just as described in the documentation.
    • After doing so reinstalled the Android app on my phone
    • As i still did not remember my password i made the app send me a pw renewal link just as some weeks ago. The new password still populates both fields as you are typing, but this time the webform does update the password and a could finally login into my account
    • Logging into my pylife portal via desktop is quite useless: i can only find my "groups" and that's it as nothing else has been implemented yet
    • After the FW update i finally can connect my pygo to my phone using the app. This was not possible on the stock firmware.
    • Inside the mobile app i can create groups, add persons to them, provision devices and add them to groups. Also the battery level of each pygo is reported back to the phone. But the goodness stops here. The map does not show the location of any of my devices, and it is also not possible to select the lora band. That returns an error. Have setup distance and alerts but can not attach those to any of the devices. And it is also not possible to wake up the devices by double tapping the display.

    So all in all there is some advancement: now i have bluetooth connectable bricks.



  • @Peter-Bankuti I got a cradle with my second batch shipment and can confirm, that it does not get the device to any reasonable operation. The only thing I could do was updating the firmware. Then it could be detected by the PyLife app. And I can use it like a severely handicapped Wipy. Less fun than with a 3€ ESP32 device.
    What I could see as well that PyGo firmware and PyLife app do not match.
    Finally, I could use the cradle and REPL commands to bring a device into a deadlock state, where it just reboots over and over.
    And yes, the device fails at least partially by design (e.g. wireless charging) and at the moment there is no feedback from Pycom about further plans with that device.


Log in to reply
 

Pycom on Twitter