-
Gordon, update on this removed networking most other libraries (FILESYSTEM, NFC, NEOPIXEL) and still having difficulty getting this to fit. The only way i'm able to get it to fit is if tensorflow is the only library. Error below.
python scripts/check_elf_size.py MDBT42Q espruino_2v05.22_mdbt42q.elf
Testing espruino_2v05.22_mdbt42q.elf for MDBT42Q
STORAGE: 442368 -> 483328
CODE: 126976 -> 448108 (321132 bytes)
CODE AND STORAGE OVERLAP
make: *** [espruino_2v05.22_mdbt42q.app_hex] Error 1 -
Good spot
: file arm-none-eabi-gcc
: arm-none-eabi-gcc: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/l, for GNU/Linux 2.6.24, BuildID[sha1]=9ac5427532642fef341e6e032eea16d7eb5fde4c, strippedAssuming i'll have to uninstall and reinstall with correct version? Per your link.
-
Robin no problem thanks for the response.
Hi MaBe, I followed the build process and the gcc-arm-none-eabi-8-2018-q4 for mac installs under the Epsruino directory in folder gcc-arm-none-eabi-8-2018-q4-major. The issues relates to the binary not executing,
Espruino/gcc-arm-none-eabi-8-2018-q4-major/bin/arm-none-eabi-gcc: cannot execute binary file
-
-
Looking for guidance on how to generate the binaries/zip files with certain libraries added or removed, i.e if I wanted to remove the net library from MDBT42Q . I've seen it mentioned in this forum and that it should be relatively straight forward but couldn’t find any tutorial (n.b i’ve looked at the build example) Hopefully this thread will act as a guidance for others. Outlined stops i’ve following below with current errors / queries.
- Download / Clone the Espruino Repository.
2.Navigate to the directory - Under Espruino/boards edit the relevant board *.py
- Under Espruino directory setup build dependencies. Run source scripts/provision.sh BOARD (e.g. source scripts/provision.sh MDBT42Q)
5.make clean && BOARD=MDBT42Q RELEASE=1 make
Having an issue with this step, getting following error
Espruino/gcc-arm-none-eabi-8-2018-q4-major/bin/arm-none-eabi-gcc: cannot execute binary file
Espruino/targetlibs/nrf5x_12/components/toolchain/gcc/gcc_startup_nrf52.o] Error 126Finally if build was successfulm where relevant binaries or zip file for DFU be?
- Download / Clone the Espruino Repository.
-
Thanks for the quick response Gordon. I’ll give it a try.
To check for a custom build example cli is below.
python MDBT42Q.py -k -p MySerialPort -evw espruino_for_your_device.bin.
For the original Espruino is the build file ESPRUINOBOARD.py
Finally is the entry point for the TensorFlow api var tf = require("tensorflow").create(2048, model). I had a look at the documentation on the website but couldn’t see anything for TensorFlow.
Looking forward to getting the Bangle board, tensorflow addition is exciting.
-
Thanks for the info.
> You could try to reduce that in the MDBT42's board file
With number of pages reduced to 6 from 10 I was to include the bluetooth and graphics. Not sure as yet of consequence tho as aware that importing modules such sensor drivers are stored in flash.
Using external flash likely a better solution just not sure of the workflow. Is there a way through the IDE to save js application directly to external flash (assuming storage/flash object only work with internal flash). Or will I have to save it to external flash manually, for example convert a module / function to templated string then use SPI flash(https://www.espruino.com/W25), and potentially split to store into pages sectors. I will likely need to leave some room on internal flash to manage this.
> Without external flash you can also save a bit by downgrading to SDK11 - gives you 0x1f000-0x1c000=12KB and also the bootloader can be moved by 8KB 0x78000 to 0x7a000
Looks interesting. Assuming not just straight forward as updating start address in Linker script?
> Are you definitely building with RELEASE=1 on the command-line? Without that, the assertions are left in and it really pushes the size up
this is the command i'm running.
make clean && DFU_UPDATE_BUILD=1 BOARD=MDBT42Q RELEASE=1 make