Avatar for Jonaswinz

Jonaswinz

Member since Mar 2020 • Last active Mar 2020
  • 3 conversations
  • 8 comments

Most recent activity

  • in Projects
    Avatar for Jonaswinz

    @Robin
    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.

    @MaBe
    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:

    DEFINES += -DSMARTMATRIX
    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.

    • 6 comments
    • 280 views
  • in ESP32
    Avatar for Jonaswinz

    Yes, you are right! I use Espruino for all other functions.
    I could use the Graphics Library and build my own driver, but first I want to try It with smartmatrix. It is an awesome libraray with all the function I need.

    At the moment I face the problem, that I need the Arduino.h file for the library to work. I fixed the conflicting types error by using the arduino-esp32 builder. But I think, I am not doing It right.
    The firmware make crashes with:

    fatal error: Arduino.h: No such file or directory

    Where do I have to include the Arduino Drivers? I used this tutorial:

    https://github.com/espruino/Espruino/tre­e/master/targets/esp32

  • in ESP32
    Avatar for Jonaswinz

    Yes you are right with the headline. I also checked out this projects bevor. You can drive this led matrixes directly by the board (each led individually). I have a 64x64 matix (4.096 leds) with a hub75e interface !

    https://market.alibaba.com/snapshotDetai­l.htm?spm=a2756.order-detail-ta-bn-b.0.0­.7f4e2fc2xwO1E6&contentId=7602263053&ord­erType=tadBuyNow

    I could write my own driver for this type of ledmatrix, but I first want to try to use an existing library like smartmatrix (https://github.com/pixelmatix/SmartMatri­x/).

  • in ESP32
    Avatar for Jonaswinz

    Hello,
    I want to drive a 64×64 Ledmatrix (hub75e) with my esp32 via Espruino. Previously I used the smartmatrix library with arduino code.

    After some research I found no included function, or library to drive my display with Espruino. The article about writing my own C extension kept me thinking about a wrapper for the smartmatrix library. Finally, I successfully added my own module into the Espruino code.

    But here is my problem: The smartmatrix library needs the Arduino.h file to work property. There is a tutorial to include the Arduino driver (https://github.com/espruino/Espruino/tre­e/master/targets/esp32), but the build failures.
    My error is: “error: conflicting types for random”. I tried to change some versions (https://github.com/espressif/arduino-esp­32/issues/3201), but this generated more errors (maybe I did it wrong).

    ESP Template:
    Toolchain version: esp-2019r2
    Compiler version 8.2.0

    I would appreciate some help.
    Jonas

  • in ESP32
    Avatar for Jonaswinz

    Ok thanks. The building worked. But after I flashed the firmware to the esp32 this message shows while booting:

    ets Jun 8 2016 00:22:57

    rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
    configsip: 0, SPIWP:0xee
    clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_d­rv:0x00,hd_drv:0x00,wp_drv:0x00
    mode:DIO, clock div:2
    load:0x3fff0018,len:4
    load:0x3fff001c,len:2668
    load:0x40078000,len:7304
    load:0x40080000,len:5312
    entry 0x40080274
    E (530) esp_image: Image length 1395696 doesn't fit in partition length 1376256
    E (530) boot: Factory app partition is not bootable
    E (530) esp_image: image at 0x160000 has invalid magic byte
    E (536) boot: OTA app partition slot 0 is not bootable
    E (541) boot: No bootable app partitions in the partition table
    Fatal exception (0): IllegalInstruction
    epc1=0x400802ba, epc2=0x00000000, epc3=0x00000000, excvaddr=0x00000000, depc=0x0

  • in ESP32
    Avatar for Jonaswinz

    After I runned this (official) code:

    # Get the Espruino source code
    git clone https://github.com/espruino/Espruino.git­
    cd Espruino
    # Download and set up the toolchain ('source' is important here)
    source scripts/provision.sh ESP32
    # Clean and rebuild
    make clean && BOARD=ESP32 make
    

    no espruino_esp32.bin was created.
    The terminal last output is:

    cc1: warning: unrecognized command line option '-Wno-expansion-to-defined'
    make: *** wait: No child processes. Stop.

    Jonas

Actions