Giter Club home page Giter Club logo

Comments (8)

igrr avatar igrr commented on July 28, 2024

It may make sense to let yield actually call vPortYield.

from arduino-esp32.

me-no-dev avatar me-no-dev commented on July 28, 2024

hm... I thought I already added that... could have missed it :) will add it in a few

from arduino-esp32.

ladyada avatar ladyada commented on July 28, 2024

awesome thank you for all these really fast fixes - its making it really easy to port code & test it!

from arduino-esp32.

me-no-dev avatar me-no-dev commented on July 28, 2024

sure thing! let me know if you hit any other problem :) Do not know if you use PWM yet, but you can take a look at sigmaDelta and LEDC drivers in esp32-hal-*.h Since there is a separate PWM hardware that we do not have a driver for yet (it is much like AVR PWM), I opted not to implement analogWrite yet and instead give access to the available drivers through their own functions. I watched your video from Sunday and would like to give you a hand with the LCD driver if you want :)

from arduino-esp32.

ladyada avatar ladyada commented on July 28, 2024

haven't checked out pwm or analog write/read yet. i did get all the TFT/LCD drivers working but they work about 10x faster with bitbang than native SPI due to the mutex. which is totally ok but unexpected for most people. i could deeply optimize the libs but i like the current simplicity....

from arduino-esp32.

me-no-dev avatar me-no-dev commented on July 28, 2024

If more tailor-made api is used for ESP32, then we can mutex once per call. Another option is to expose methods for manual locking and and then skip mutex if already locked externally. I will look through your lib to see what can be done, but I can tell you that I have it here running at over 60FPS (all one of the cores does) so things can be made better for sure

from arduino-esp32.

me-no-dev avatar me-no-dev commented on July 28, 2024

Just to note, if bit-bang is used, there is nothing to prevent a user to concurrently trying to update the display from another thread/core. While I realize that Arduino users are not used to using threads, many will actually love the idea and we will see a slew of problems if we do not lock the hardware properly

from arduino-esp32.

ladyada avatar ladyada commented on July 28, 2024

not surprising 60 FPS is possible with blitting the entire display. its tougher when you have to update only a few pixels at a time. ill look making drawpixel/fillrect use only one SPI transaction or maybe have special ESP32 code

from arduino-esp32.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.