Avatar for Jonaswinz


Member since Mar 2020 • Last active Jun 2020
  • 5 conversations

Most recent activity

  • in General
    Avatar for Jonaswinz

    Does anybody have an idea ?

  • in General
    Avatar for Jonaswinz

    If I include my script with

    SOURCES+= [path to .c file]

    first and call it from the wrapper, it loads the included files (like freertos/FreeRTOS.h) correctly.
    But If I try to use CCSOURCES (for cc files, because I am using c++) or SOURCES as well, I cannot include anything there. The "external C" command also not work.
    It looks like I cannot include the .c sources in .cc (c++).

  • in General
    Avatar for Jonaswinz

    I need the freeRTOS library for my custom firmware extension. The library is already included as an esp-idf component. How can I refer to it? If I simple use:

    include " ../../esp-idf/components/freertos/includ­e/freertos/FreeRTOS.h"

    the other #includes (from the FreeRTOS.h) break. Obviously it is because the includes root is in my lib folder. Moreover, #include doesn't work either.

    My second problems is: If I write my library in c++ (.cc) I also cannot import jspin.h, jsvar.h .... The script doesn't find the files (as a .c script it does).

    I would appreciate some help.

  • in General
    Avatar for Jonaswinz

    After hours of try and error:

    The "-std=c++11" needs to be added to "LDFLAGS" line in the Makefile:

    LDFLAGS?=-Winline -g -std=c++11
  • in General
    Avatar for Jonaswinz

    I am trying to include my own code in the espruino firmware. My code is partly written in c++. But if I try to build it, it failed:

    Espruino/xtensa-esp32-elf/xtensa-esp32-e­lf/include/c++/5.2.0/bits/c++0x_warning.­h:32:2: error: error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.

    I tried several ways to set the -std=c++ flag in the Makefile, but I couldn't resolve it.

    (If I mixed something up, I apologize, C is not my native language 😅)


  • in Projects
    Avatar for Jonaswinz

    I am sorry. I understand the "Share what you're working on!" a bit like "I need some help with my project".
    The existing official espruino boards dont fit my needs (ble and wifi), and therefor the only board I can use is the ESP32.
    I thought I could "easily" adapt the smartmatrix library to espruino (save some time), but mabe you are right and I have to dig deeper.

    Yes I will

  • in Projects
    Avatar for Jonaswinz

    My project: I want to use a 64x64 Led matrix on my esp32. I previously used the smartmatrix libray (https://github.com/pixelmatix/SmartMatri­x) with the arduino bootloader. This worked fine. Because of the other parts of my project I switched to Espruino. Currently there is no support for 64x64 Hub75e led matrix by the graphics library of espruino.

    I came accross the tutorial to extend the espruino firmware with own c code (https://www.espruino.com/Extending+Espru­ino+1). I had the idea to include the awesome smartmatrix library to the espruino firmware. Following this tutorial I added my own library to the build (libs/smartmatrix) and include the "SmartMatrix3.c" (inside jswrap_smartmatrix.c) from there. I also added the library to the makefile of the firmware to include it in the build:

    Line 576-580 in the Makefile:

    INCLUDE += -I$(ROOT)/libs/smartmatrix
    WRAPPERSOURCES += libs/smartmatrix/jswrap_smartmatrix.c

    I also managed to include the Arduino.h and pins_arduino.h (smartmatrix uses it)

    But If I want to build the firmware with:

    source scripts/provision.sh ESP32
    make clean && BOARD=ESP32 SMARTMATRIX=1 make

    The Build fails! (see Make_output.txt and MatrixCommon.h)

    After some research I found out that the MatrixCommon.h maybe get compiled in C not C++. But how can I tell the make command to compile it in c++ ?

    You can download the whole output text and project: https://drive.google.com/open?id=1vbG4zv­enzEVJQdQchtOwsvJmBxBOPwYP

    I dont know If someone understand my problem. Please share your thougts.