Welcome to the Pycom forum Forum
    • \[\[global:header.categories\]\]
    • \[\[global:header.recent\]\]
    • \[\[global:header.tags\]\]
    • \[\[global:header.popular\]\]
    • Login

    Explore Pybytes | Official Documentation | Report a Firmware Bug/Issue | GitHub

    Firmware release 1.7.1.b1

    Scheduled Pinned Locked Moved Announcements & News
    firmware
    73 Posts 12 Posters 39.3k Views 12 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • M Offline
      mcook @daniel
      last edited by

      Thanks, it went a lot further this time. I was able to build the bootloader. But it is failing while trying to build the app. Seems like a lot of it was completed.

      I am getting a number of errors. Do you have any suggestions?

      Mike

      First error: In file included from /Users/michaelcook/pycom-esp-idf/components/soc/esp32/include/soc/soc.h:20:0,
      from /Users/michaelcook/pycom-esp-idf/components/driver/include/driver/timer.h:19,
      from mods/machtimer_alarm.c:6:
      /Users/michaelcook/pycom-esp-idf/components/soc/esp32/include/soc/io_mux_reg.h: In function 'PIN_PULLUP_DIS':
      /Users/michaelcook/pycom-esp-idf/components/esp32/include/esp_assert.h:23:28: error: first argument to '__builtin_choose_expr' not a constant
      _Static_assert(__builtin_choose_expr(__builtin_constant_p(CONDITION), (CONDITION), 1), #MSG);
      ^
      /Users/michaelcook/pycom-esp-idf/components/soc/esp32/include/soc/soc.h:138:38: note: in expansion of macro 'TRY_STATIC_ASSERT'
      #define ASSERT_IF_DPORT_REG(_r, OP) TRY_STATIC_ASSERT(!IS_DPORT_REG(r), (Cannot use OP for DPORT registers use DPORT##OP));

      robert-hhR 1 Reply Last reply Reply Quote 0
      • robert-hhR Offline
        robert-hh @mcook
        last edited by

        @mcook did you include the board name in the make, like
        make BOARD=WIPY TARGET=app

        M 1 Reply Last reply Reply Quote 0
        • M Offline
          mcook @robert-hh
          last edited by

          @robert-hh

          Yes. I did. I use the flash target to get it to write directly to the board.

          make BOARD=LOPY LORA_BAND=USE_BAND_915 flash

          Mike

          1 Reply Last reply Reply Quote 0
          • L Offline
            livius @daniel
            last edited by livius

            @daniel
            I have few new problems after upgrade from 1.6.13 to 1.7.1
            Now many times i got

            AttributeError: 'module' object has no attribute
            

            but code was not changed and worked before upgrade - can something e.g. GC root pointers change affect some code?
            I do not use custom threads. Only "simple" code.

            UPDATE
            After downgrade to 1.6.13 all work ok without any change in the code..

            think about people first, then computers

            1 Reply Last reply Reply Quote 0
            • D Offline
              daniel
              last edited by

              @livius: can you share a small piece of code that reproduces the issue that you are having? Thanks...

              1 Reply Last reply Reply Quote 0
              • D Offline
                daniel
                last edited by

                @mcook please try clonning the new IDF from scratch.

                M 1 Reply Last reply Reply Quote 0
                • D Offline
                  daniel
                  last edited by

                  @livius can you share the complete exception log? Is it happening inside an interrupt callback?

                  L 1 Reply Last reply Reply Quote 0
                  • M Offline
                    mcook @daniel
                    last edited by

                    @daniel

                    Hi. I did that.

                    These are my steps. They worked with the previous source. But now I am receiving the error. Do I need to change something?

                    #for my mac - get the ESP32 xtensa compiler
                    wget https://dl.espressif.com/dl/xtensa-esp32-elf-osx-1.22.0-59.tar.gz

                    #edit ~/.bash_profile to add in the xtensa compiler
                    #Add in esp bin to the PATH:
                    export PATH=$PATH:$HOME/xtensa-esp32-elf/bin

                    cd ~/

                    #clone the esp idf libs
                    git clone https://github.com/pycom/pycom-esp-idf.git

                    cd pycom-esp-idf

                    #checkout the submodules
                    git submodule update --init

                    #set up the IDF_PATH
                    vi ~/.bash_profile
                    export IDF_PATH=~/pycom-esp-idf

                    cd ~/
                    #clone the code for micropyton
                    git clone https://github.com/pycom/pycom-micropython-sigfox.git

                    cd pycom-micropython-sigfox/mpy-cross
                    make all

                    cd ../esp32

                    #make the bootloader
                    make BOARD=LOPY -j5 LORA_BAND=USE_BAND_915 V=1 TARGET=boot

                    #vi application.mk
                    #update the reference to /dev/ttyUSB0 to the serial port the LoPy is using
                    #now I power off LoPy, attach GND to PIN 23 on the LoPy , and power back on

                    make BOARD=LOPY LORA_BAND=USE_BAND_915 flash

                    #the board is now flashed. power it off, remove the jumpers, power it on

                    J 1 Reply Last reply Reply Quote 0
                    • L Offline
                      livius @daniel
                      last edited by livius

                      @daniel

                      Is it happening inside an interrupt callback?

                      I do not use in this project callbacks and threads

                      i have tried to create minimal code to reproduce but still without success.
                      Maybe this help somehow - but probably not:
                      In normal case with 1.6.13 when it start this is the log

                      rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
                      configsip: 0, SPIWP:0x00
                      clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
                      mode:QIO, clock div:2
                      load:0x3fff9010,len:8
                      load:0x3fff9018,len:248
                      load:0x40078000,len:4056
                      load:0x4009fc00,len:920
                      entry 0x4009fde4
                      I (1557) wifi: wifi firmware version: 90b1b8b
                      I (1558) wifi: config NVS flash: disabled
                      I (1558) wifi: config nano formating: disabled
                      I (1573) wifi: Init dynamic tx buffer num: 32
                      I (1574) wifi: wifi driver task: 3ffd55f8, prio:23, stack:3584
                      I (1574) wifi: Init static rx buffer num: 10
                      I (1576) wifi: Init dynamic rx buffer num: 0
                      I (1580) wifi: Init rx ampdu len mblock:7
                      I (1584) wifi: Init lldesc rx ampdu entry mblock:4
                      I (1588) wifi: wifi power manager task: 0x3ffda9b4 prio: 21 stack: 2560
                      I (1595) wifi: sleep disable
                      I (2584) wifi: wifi timer task: 3ffdba30, prio:22, stack:3584
                      I (2606) wifi: Init ampdu: 0
                      I (2607) wifi: mode : softAP (24:0a:c4:00:6e:c3)
                      boot
                      29.31876 100463.6 262.9624
                      main
                      free 47904
                      konfig.config_wifi=1
                      wifi_sta
                      I (3439) wifi: Init ampdu: 0
                      I (3439) wifi: mode : sta (24:0a:c4:00:6e:c2) + softAP (24:0a:c4:00:6e:c3)
                      I (3440) wifi: sleep disable
                      <WLAN>
                      [(ssid='vnet-509F64', bssid=b'pT\xd2b\xc4\xda', sec=4, channel=1, rssi=-38), (ssid='livius', bssid=b'\x000O\x8b\x0c\x08', sec=4, channel=9, rssi=-40), (ssid='UPC0838976', bssid=b'\x8c\x04\xff\xf5\xae\x8a', sec=4, channel=11, rssi=-60), (ssid='UPC Wi-Free', bssid=b'\x8e\x04\xff\xf5\xae\x8c', sec=5, channel=11, rssi=-60), (ssid='UPC77A39D9', bssid=b'\x90\\Dt\x81\x7f', sec=4, channel=6, rssi=-69), (ssid='UPC Wi-Free', bssid=b'\x92\\\x14t\x81\x7f', sec=5, channel=6, rssi=-70), (ssid='TP-LINK_9A6D1E', bssid=b'\xb0Hz\x9am\x1e', sec=3, channel=6, rssi=-73), (ssid='keke', bssid=b'\xb0Hz\xbe\xf6\xa4', sec=3, channel=4, rssi=-75), (ssid='2.4G-Vectra-WiFi-B7C11C', bssid=b'\x84\x00-  <', sec=4, channel=1, rssi=-76), (ssid='2.4G-vnet-1C0A58', bssid=b't\x85*3 \xd7', sec=4, channel=1, rssi=-76), (ssid='DIRECT-y6-BRAVIA', bssid=b':\xb1\xdb\x83\xd7\x89', sec=3, channel=6, rssi=-85), (ssid='2.4G-vnet-08CC4C', bssid=b'\x00q\xc2C|\x94', sec=4, channel=1, rssi=-86), (ssid='UPC1334070', bssid=b'D2\xc8\x9c6\x0c', sec=4, channel=1, rssi=-87), (ssid='UPC Wi-Free', bssid=b'\x92\\\x14\xceh\x95', sec=5, channel=6, rssi=-88), (ssid='UPC Wi-Free', bssid=b'F2\xc8\x9c6\x0e', sec=5, channel=1, rssi=-89), (ssid='UPC5F267D4', bssid=b'\x90\\D\xceh\x95', sec=4, channel=6, rssi=-89), (ssid='UPC248781946', bssid=b'\xfco\xb7=fT', sec=3, channel=11, rssi=-91), (ssid='vnet-EC0D8E', bssid=b'T\xbe\xf7\nEN', sec=4, channel=11, rssi=-91), (ssid='UPC0040392', bssid=b'\x00&$>\xaa\x99', sec=4, channel=1, rssi=-94), (ssid='UPC Wi-Free', bssid=b'\x02&$>\xaa\x9b', sec=5, channel=1, rssi=-94)]
                      vnet-509F64
                      livius
                      UPC0838976
                      UPC Wi-Free
                      UPC77A39D9
                      UPC Wi-Free
                      TP-LINK_9A6D1E
                      keke
                      2.4G-Vectra-WiFi-B7C11C
                      2.4G-vnet-1C0A58
                      DIRECT-y6-BRAVIA
                      2.4G-vnet-08CC4C
                      UPC1334070
                      UPC Wi-Free
                      UPC Wi-Free
                      UPC5F267D4
                      UPC248781946
                      vnet-EC0D8E
                      UPC0040392
                      UPC Wi-Free
                      I (7133) wifi: ap channel adjust o:1,1 n:9,2
                      I (7133) wifi: n:9 2, o:1 0, ap:9 2, sta:9 2, prof:1
                      I (8130) wifi: state: init -> auth (b0)
                      I (8135) wifi: state: auth -> assoc (0)
                      I (8139) wifi: state: assoc -> run (10)
                      I (8155) wifi: connected with livius, channel 9
                      WLAN connection to the router succeeded!
                      connected to socket
                      wifi_imported
                      konfig.config_czas=1
                      ---RTC---
                      (1970, 1, 1, 0, 0, 8, 383520, None)
                      (2017, 6, 2, 21, 31, 15, 563, None)
                      konfig.config_LCD=1
                      konfig.config_termometr=1
                      ---DS18X20---
                      ---termometr---
                      ---termometr: bytearray(b'(\xff;\x17\x83\x16\x04\xa3')
                      

                      but with 1.7.1

                      rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
                      configsip: 0, SPIWP:0x00
                      clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
                      mode:QIO, clock div:2
                      load:0x3fff9010,len:12
                      ho 0 tail 12 room 4
                      load:0x3fff9020,len:388
                      load:0x40078000,len:11412
                      load:0x4009fc00,len:848
                      entry 0x4009fd9c
                      boot
                      28.58889 100493.7 260.5683
                      main
                      free 41424
                      konfig.config_wifi=1
                      wifi_imported
                      konfig.config_czas=1
                      ---RTC---
                      Traceback (most recent call last):
                        File "main.py", line 13, in <module>
                        File "/flash/lib/calosc.py", line 23, in <module>
                        File "/flash/lib/czas.py", line 49, in <module>
                      AttributeError: 'module' object has no attribute 'wlan'
                      MicroPython v1.8.6-640-g585ac892 on 2017-06-02; WiPy with ESP32
                      Type "help()" for more information.
                      >>> 
                      

                      czas.py have

                      import wifi
                      

                      and inside wifi.py is

                      import machine
                      import time
                      from machine import Timer
                      from network import WLAN
                      import socket
                      import binascii
                      import struct
                      import funkcje
                      from machine import Pin
                      import os
                      
                      print('wifi_sta')
                      funkcje.Led(0x00ff00, 100)
                      
                      wlan = WLAN(mode=WLAN.STA_AP)
                      adr = socket.getaddrinfo('192.168.1.102', 9456)
                      sok = None
                      print(wlan)
                      ..........other lines of code
                      

                      and i use in czas.py e.g.
                      wifi.wlan.isconnected()

                      and i got then error that wlan not exists

                      think about people first, then computers

                      1 Reply Last reply Reply Quote 0
                      • J Offline
                        jmarcelino @mcook
                        last edited by

                        @mcook
                        not sure if it helps but the latest toolchain is actually https://dl.espressif.com/dl/xtensa-esp32-elf-osx-1.22.0-61-gab8375a-5.2.0.tar.gz

                        M 1 Reply Last reply Reply Quote 0
                        • L Offline
                          livius @daniel
                          last edited by livius

                          @daniel
                          i have found problem :) And now have question.

                          Is name wifi registered as reserved unit name?
                          i have in my lib folder wifi.py

                          but i see that when i call dir it list me some system objects?

                          >>> dir(wifi)
                          ['Wifi', 'WLAN', '__name__', 'hexlify', 'sleep', 'Timer', 'exc_info', 'start_new_thread']
                          

                          after changing wifi.py to different name and all its references
                          all work ok

                          think about people first, then computers

                          J 1 Reply Last reply Reply Quote 0
                          • J Offline
                            jmarcelino @livius
                            last edited by jmarcelino

                            @livius
                            Weird I didn't get any wifi.py on my lib and also nothing after os.mkfs("/flash") Wondering how you got it...

                            L 1 Reply Last reply Reply Quote 0
                            • J Offline
                              jmarcelino
                              last edited by jmarcelino

                              @daniel
                              I was just reading this post about the 4MB pSRAM support https://www.esp32.com/viewtopic.php?f=13&t=2031

                              As Jeroen explains do we need to build the toolchain from the xtensa-1.22.x-ext_ram_patch branch to compile the Pycom source correctly for the W01/L01 modules?

                              All seems a bit cutting edge :-) but to get 4MB RAM wow...

                              1 Reply Last reply Reply Quote 0
                              • L Offline
                                livius @jmarcelino
                                last edited by

                                @jmarcelino
                                This is my custom file.
                                And it worked ok in previous firmware.
                                but now this name is registered by system for something. I see nothing about in docs and i do not see it in pycom sources, but maybe i miss something in pycom sources

                                think about people first, then computers

                                J 1 Reply Last reply Reply Quote 0
                                • J Offline
                                  jmarcelino @livius
                                  last edited by jmarcelino

                                  @livius
                                  ha sorry misunderstood your comment. But if I do dir(wifi) as you showed I get nothing.

                                  L 2 Replies Last reply Reply Quote 0
                                  • L Offline
                                    livius @jmarcelino
                                    last edited by livius

                                    @jmarcelino
                                    what you got when you do?

                                    import wifi
                                    dir(wifi)
                                    

                                    if above raise error
                                    try to create empty wifi.py file in lib and back with result - i am really interested :)

                                    think about people first, then computers

                                    1 Reply Last reply Reply Quote 0
                                    • L Offline
                                      livius @jmarcelino
                                      last edited by livius

                                      @jmarcelino
                                      i tested this self
                                      and whithout file wifi.py anywhere
                                      i have interesting result

                                      >>> import wifi
                                      >>> dir(wifi)
                                      ['Wifi', 'WLAN', '__name__', 'hexlify', 'sleep', 'Timer', 'exc_info', 'start_new_thread']
                                      >>>
                                      

                                      can someone confirm this?
                                      And maybe @daniel can bring light about purpose of that module

                                      think about people first, then computers

                                      robert-hhR 1 Reply Last reply Reply Quote 0
                                      • M Offline
                                        mcook @jmarcelino
                                        last edited by

                                        @jmarcelino

                                        Thank you. I downloaded the latest compiler, removed all of my old stuff and re-installed it all, and now it builds fine.

                                        Mike

                                        1 Reply Last reply Reply Quote 0
                                        • robert-hhR Offline
                                          robert-hh @livius
                                          last edited by

                                          @livius I created a brand new firmware, and loaded that: no module wifi.
                                          BUT: If I update via the pycom updater, there is a module wifi included.
                                          So it's sneaking in via the "official" image.

                                          1 Reply Last reply Reply Quote 2
                                          • D Offline
                                            daniel
                                            last edited by

                                            @livius and @robert-hh thanks for the help. We found the offending file and a release without the problem will be out within 1 hour.

                                            1 Reply Last reply Reply Quote 0

                                            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
                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 4 / 4
                                            • First post
                                              Last post

                                            Pycom on Twitter

                                            Pycom