Avatar for Robin


Member since Jan 2017 • Last active Oct 2019
  • 55 conversations

Most recent activity

  • in ESP32
    Avatar for Robin

    Mon 2019.10.14

    Thank you for the above postings @dwinfiel

    Are we still dealing with a memory leak? If so,

    would you please load your code and re-run process.memory(); posting the results of each interval after several iterations. We would be seeking the value of ':free' to observe how much space is available for Espruino to do it's thing while running, and also if there is in fact a perceived leak after several events have been confirmed. or maybe run the above snippet inside a setInterval() and using console.log() to directly output to the Left-Hand console side of the WebIDE.

    Errors indicated above #6 are unknown to me.

    'does not re-connect on it's own (if I say reboot my WIFI router)'

    What logic is being used to reboot or dis-connect/re-connect when just the router is rebooted? Has a sufficient time interval been used to allow internal WiFI workings to settle?

  • in Pico / Wifi / Original Espruino
    Avatar for Robin

    Sun 2019.10.13

    for @AkosLukacs 'You have a typo in the first line:' Good catch but;

    Should also be var d = new Date() in order for second line to be valid ;) ;)

    @user101931 See: http://www.espruino.com/Pico+Clock#line=­3,11
    or any of the examples beneath the Date constructor topic in the 'Reference' page link that follows

    This will be of help using the Date functions:


    Binary to Decimal, can't go wrong with the tutorials at W3Schools:


    'the code does not seem to recognize my SPI. write function'

    Is it possible that SPI is not being used correctly concept-wise? (for read write)



    'I think it was because some header files were missing, but I am not sure what and how to include them'

    Locate the heading 'constructor SPI' from the 'Reference' page link above and click on the right facing arrow adjacent to that heading. This will link to:


    showing that SPI is part of the firmware build and no other 'includes' are needed.

    Would you provide the link to the source code or tutorial that is being worked from please.

    *If* this is the correct data sheet:


    p.40 p.42 it appears the address and data are required to be sent simultaneously as 16 bits.

    Data byte missing?

    Chip Select 'Actually' going lo and not inadvertently inverted?

    Does the Pico MOSI actually go to the inertial device MOSI and not flipped with MISO?

    It appears the inertial module is programmed very similar to the GPS device. This link:


    might provide some insight on how I solved communication using the FX2 Logic Analyzer. Saved a ton of time rather than just guessing. . . .

  • in ESP32
    Avatar for Robin

    Wed 2019.10.09

    Hello @dwinfiel

    Would you mind posting the results of process.env and separatelyprocess.memory() before uploading, then again after the memory leak is observed, so that we may get a better understanding of the scope of this issue. Thanks

  • in Puck.js, Pixl.js and MDBT42
    Avatar for Robin

    Tue 2019.10.08

    Not sure this is directly related, but had the same stuck bar three weeks ago attempting to update a MDBT42Q. After three attempts abandoned, also didn't post.

    Then I caught the above thread. Decided to give it another go. This time however, I get a unique new msg. Didn't try more than three times, lacking time. If this is related to the above, I hope it provides some insight. If not, I'll create a new thread if necessary.

    Using the Native WebIDE on Windows10

    Strangely had to constantly un-pair and allow a new power up/pair sequence and relaunch of the WebIDE to even connect.

    Just tried with Chrome using https://www.espruino.com/ide/# and thought I had success, until . . . but get the same stuck bar.

  • Avatar for Robin

    Mon 2019.10.07

    'Do you think I could then upload the pdfs to GitHub?'

    Was the intent to include in the Espruino documentation or into a personal account? While most supporting documentation is welcome, not all might be appropriate. What specifically was to be included in the .pdf mentioned? Post a correlated page link that might clue us in to the content intended to be part of the solution. Please explain.

  • in General
    Avatar for Robin

    Mon 2019.10.07

    Not being picky, but wanted to validate what I thought I saw for d/l options, as my belief was a .bin and a .hex for all builds.

    From the link 'You can also browse by Git commit hash'
    The most current build 2v04 as of today:

    But, looking at Puck, an nRF52 for instance, actually is d/l as a .zip, containing a .bin and .dat but no .hex, so is there still a qualifier needed in your #9 sentence? I'm still way too new to have enough of an understanding to even make a feeble suggestion here.

    Thank you @AkosLukacs for hanging in there to guide me to a solution. Still tons to learn, but at least I have the basics to dig through the 'C' source and make improvement suggestions. I have now successfully created my own Espruino Build!
    With this limited knowledge however, . . . Watch Out, as I am now dangerous!!

    I'll post some install tips for Win10 later this week.

  • in General
    Avatar for Robin

    'source scripts/provision.sh BOARDNAME? Did it succeeded?'

    I did at one time but had 'PICO' instead of 'PICO_R1_3' Incidentally, I read in one of the online files, (can't find link) that 'PICO' was an acceptable argument. Maybe not?

    Running the 'Just ran' command an now get:

    LD espruino_2v04.121_pico_1r3.elf
    /home/rgc/source/repos/github/espruino/E­spruino/libs/crypto/mbedtls/include/mbed­tls/ssl_internal.h:385:35: warning: inlining failed in call to 'mbedtls_ssl_own_key': call is unlikely and code
    size would grow [-Winline]
     static inline mbedtls_pk_context *mbedtls_ssl_own_key( mbedtls_ssl_context *ssl )
    libs/crypto/mbedtls/library/ssl_srv.c:30­08:11: note: called from here
         ret = mbedtls_pk_decrypt( mbedtls_ssl_own_key( ssl ), p, len,
    GEN espruino_2v04.121_pico_1r3.lst
    GEN espruino_2v04.121_pico_1r3.bin
    bash scripts/check_size.sh espruino_2v04.121_pico_1r3.bin
    PASS - size of 313488 is under 327680 bytes

    And then on to 'RELEASE'

    rgc@DESKTOP-R7T0VUC:~/source/repos/githu­b/espruino/Espruino$ BOARD=PICO_R1_3 RELEASE=1 make
    make: Nothing to be done for 'all'.
    rgc@DESKTOP-R7T0VUC:~/source/repos/githu­b/espruino/Espruino$ dir
    benchmark           Doxyfile                           libs                    README.md
    boards              doxygen                            LICENSE                 scripts
    ChangeLog           espruino                           make                    src
    CONTRIBUTING.md     espruino_2v04.121_pico_1r3.bin     Makefile                targetlibs
    CURRENT_BOARD.make  espruino_2v04.121_pico_1r3.elf     misc                    targets
    dist_licences.txt   espruino_2v04.121_pico_1r3.lst     NRF_Bootloader.md       tests
    dist_readme.txt     gcc-arm-none-eabi-8-2018-q4-major  README_Building.md      Vagrantfile
    Dockerfile          gen                                README_BuildProcess.md

    So, we are close. I thought I understood where the output would reside, but the files within the structure on the local drive are not updating.

    Running a search for \gen locates the platform_config.h file beneath:


    and I am able to see the .bin file at that location, the parent of \gen


    But, unfortunately, the .hex file isn't being built.

  • in General
    Avatar for Robin

    Okay, getting warmer now,

    Under 'Problems' tab

    'cannot open source file "platform_config.h" (dependency of "jsi2c.h")'

    Web search turned up:


    I opened the \gen folder and only a 'README' file exists.

    Searching for instructions as to whether I need to create that file or if it is (failed) as a result of not all extensions in the correct place yet.

    EDIT: (hour later)
    From post #14 link to GitHub output shows file is auto gen'd

    // Automatically generated header file for STM32F100CB
    // Generated by scripts/build_platform_config.py

    Verified that file 'build_platform_config.py' is within the tree both inside VSCode and within the local file system.

    Re-ran make clean && make
    but get

    cc1: warning: unrecognized command line option ‘-Wno-expansion-to-defined’
    gen/jswrapper.c: In function ‘jswOnCharEvent’:
    gen/jswrapper.c:1901:34: warning: unused parameter ‘channel’ [-Wunused-parameter]
     bool jswOnCharEvent(IOEventFlags channel, char charData) {
    gen/jswrapper.c:1901:48: warning: unused parameter ‘charData’ [-Wunused-parameter]
     bool jswOnCharEvent(IOEventFlags channel, char charData) {
    gen/jswrapper.c: In function ‘jswGetBuiltInJSLibrary’:
    gen/jswrapper.c:1905:48: warning: unused parameter ‘name’ [-Wunused-parameter]
     const char *jswGetBuiltInJSLibrary(const char *name) {
    cc1plus: warning: unrecognized command line option ‘-Wno-expansion-to-defined’
    gen/jswrapper.c: At top level:
    cc1: warning: unrecognized command line option ‘-Wno-expansion-to-defined’
    LD espruino

    and still have error under 'Problems' tab:

    'cannot open source file "platform_config.h" (dependency of "jsi2c.h")'

  • in Projects
    Avatar for Robin

    Sat 2019.10.05

    Make sure to take a look at this amazing @AkosLukacs tutorial posted at hackster.io for the INA226 current and voltage measurement IC.

    Simple and well explained step-by-step instructions enabling one to monitor energy consumption over time. Great for estimating usage to select the best battery for your Espruino project.

    Even includes those *racy* 'under-the-covers' circuit layout images showing exactly how those titillating parts are joined to an Espruino MDBT42Q breakout board showing in full detail their wicked monitoring act! (tight in focus shots - not for the faint hearted)

    Instructions, images, code, output and a live demo link. A complete tutorial project.

    Well done Akos!