• The constant BOARD seems to be picked up from

    'name' : "nRF52840 Dongle",

    after removing the whitespace.

    I think it is taken directly from 'make BOARD=XYZ' and matches the boards/XYZ.py filename. You can override it by adding 'boardname' to the file. This is used in PUCKJS_MINIMAL.py to keep PUCKJS board name.

  • Mon 2021.11.01

    'binaryname' : 'espruino%v_puckjs_minimal.hex',

    I see that attribute in file PUCKJS_MINIMAL.py @fanoush , but I'm not sure that will solve my issue. Board name not used as build filename. The above will have a different .hex file output from the original, wouldn't it?
    ex: espruino_2v10.123_puckjs_minimal.hex   vs.  espruino_2v10.123_puckjs.hex

    Will have more time to test and try that suggestion this weekend.


    If I wasn't clear, I have a new file nRF52840DONGLE2.py

    with specific desired .hex name definition:

     'binary_name' : 'espruino_%v_nrf52840_dongle2.hex'
    

    and using these lines to build:

    make clean
    source scripts/provision.sh nRF52840DONGLE2
    make clean make
    make clean && BOARD=nRF52840DONGLE2 RELEASE=1 make
    



    so I expect the output build would produce a .hex file with this new '2' suffix,

    et the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
    python scripts/check_elf_size.py nRF52840DONGLE2 espruino_2v08.220_nrf52840_dongle.elf
    Testing espruino_2v08.220_nrf52840_dongle.elf for nRF52840DONGLE2
    STORAGE: 872448 -> 913408
    FS DATA: 456396 -> 456416 (20 bytes)
    CODE: 155648 -> 456416 (299872 bytes)
    Code area Fits before Storage Area
    arm-none-eabi-objcopy -O ihex espruino_2v08.220_nrf52840_dongle.elf espruino_2v08.220_nrf52840_dongle.hex
    Merging SoftDevice
    python scripts/hexmerge.py /mnt/c/Users/robin/Espruino/targetlibs/n­rf5x_15/components/softdevice/s140/hex/s­140_nrf52_6.0.0_softdevice.hex 
    espruino_2v08.220_nrf52840_dongle.app_he­x -o espruino_2v08.220_nrf52840_dongle.hex
    



    However, as can be seen by the build output, the .py filename nRF52840DONGLE2 is picked up as you suspect it should, but the internal .hex file definition that I supply within that file, still outputs a filename that isn't desired. (no '2' suffix)

    From:

     'binary_name' : 'espruino_%v_nrf52840_dongle2.hex'
    

    Shouldn't it be as I define with the %v substitution:

    espruino_2v08.220_nrf52840_dongle2.elf
    espruino_2v08.220_nrf52840_dongle2.hex
    

    and not, which is being built? (missing 2 suffix)

    espruino_2v08.220_nrf52840_dongle.elf
    espruino_2v08.220_nrf52840_dongle.hex
    

    Maybe there is a pre-defined cache list of acceptable board names somewhere, even though this one isn't an original Espruino?

About

Avatar for Robin @Robin started