New firmware release 1.5.0.b2

  • Hello everyone,

    This release brings the same features as 1.5.0.b1 and fixes the I2C bug that was introduced when the pin class was optimized to use bit-fields. Thanks to @jmarcelino for investigating the root cause so quickly :-)


  • @jmarcelino @livius I'm working on this as we speak. Will update you shortly.

  • @jmarcelino
    i suppose you found second issue
    but i think the real problem is deeper inside and is not releated to ftp
    especially if we execute_from_lexer in main.c
    we got error also for valid buffer :(

    e.g. if i try download file throught ftp i have eaten bytes inside
    but when i open file by

    f = open('', 'r+')
    d = f.readall()

    file looks ok
    but when i try


    i got error on exact line which is eaten when readed by ftp
    the same is when i try to:

    import myfile

    i have not much time today - but maybe my observation can point you or someone to find real issue

  • Good observations @livius . I also replicated the FTP problem here, it seems to happen when transmitting the file from the *Py to your machine. Reading the file on the Py itself appears correct.

    So far I'm suspicious of this ftp_send_from_fifo() code in ftp.c (line 569)

                if (E_FTP_RESULT_OK == ftp_send_non_blocking (_sd,, fifoelement.datasize)) {
                    SOCKETFIFO_Pop (&fifoelement);

    As the send() call is non-blocking can't a race condition happen where the FIFO (data) element is popped before it had a chance to be transmitted?

    It's not conclusive but once I added a small delay before SOCKETFIFO_Pop() I managed to repeatedly GET the full file without any data missing.

    I'll investigate more if I have some time today, but thought it was worth sharing.

  • @daniel Can we expect any bug fix release today ?

  • @daniel
    This is really critical - we can not make work progress :(
    to test try to save file e.g. sample about onewire
    copy file and look how it is stored

    next open it and delete all text and put back by ftp
    next once again copy it by ftp and look how it look - it is broken inside

    i investigate this and it happen after exactly 2920 bytes
    and there are 152 bytes eaten and then next bytes looks ok
    i still can not find reason in git source code pycom and esp :(
    i test with bigger file 16KB
    and there is:
    2920 bytes then 152 bytes eaten then
    and after 4968 once again 152 bytes eaten

    between 2920 nad 4968 are also some bytes missed:
    after 2484 bytes 588 bytes eaten

  • When I scan my network (I use Fing on iPad), I see a lot of IP's (Mac, smartphones, tablets, NAS, printer,...) with .47 and .49, two devices I know as fixed IP's, but no .48
    Perhaps in the past because I don't remember why I set 47 and 49, skipping 48 😅

    @livius , @jmarcelino I've tried with .46, same problem.
    When, in REPL, I type the same line wlan.ifconfig..., and I print wlan.ifconfig(), it has taken the .46 as IP but shows a dns and the IP is not visible in the network

  • @cvp
    are you sure that you have not any other device with .48 IP in network?

  • wlan.ifconfig(config=('', '', '', ''))


    wlan.ifconfig(config=('', '', '', ''))

  • @cvp
    Could you post your ifconfig line please showing the tulple, like:

    wlan.ifconfig(config=('', '', '', ''))

  • Hi, just new here
    Bought Wipy2.0 yesterday, installed and firmware upgraded today, but ifconfig does not work really.
    If I put wlan.ifconfig in my, I can' connect to device on my own network (and DNS is replaced by
    If I remove this line, no problem of connection but no fixed IP...

  • @leelive yes framebuf will be added when we merge the code with the official MicroPython repository.


  • @daniel Thanks for the increased RAM. Is framebuf going to be added soon?

  • @daniel Hi, should we expect WPA2-enterprise support anytime soon?


  • @daniel
    Yes, previously was ok (i did not see it)

  • Pybytes Beta

    @daniel Many Thanks

  • @Jiemde thanks, I'll investigate this ASAP.

  • Pybytes Beta

    @daniel Yes, with the 1.0.4.b1 ftp is working without problem and Pymakr only the first time after that the message is "syncing failed"
    with the new release 1.5.0.b2 ftp seem to working but the transfered file have missing lines.
    And in Pymakr the message is always "synced sucessfuly" but the same missing line or characters are present

  • @livius @Jiemde is this something that only occurs with the latest 2 releases?

  • Pybytes Beta

    @jmarcelino Exactly!

Log in to reply

Pycom on Twitter