Giter VIP home page Giter VIP logo

Comments (6)

afiskon avatar afiskon commented on September 15, 2024

No, the library was never tested with 0.49" 64x32 displays. Please make sure you are using proper SSD1306_WIDTH and SSD1306_HEIGHT values https://github.com/afiskon/stm32-ssd1306/blob/master/ssd1306/ssd1306_conf_template.h If you are certain there is a bug please feel free submitting a pull request.

from stm32-ssd1306.

lamaatje avatar lamaatje commented on September 15, 2024

I got the code working now after completely re-doing the ssd1306_Init. I looked into the how u8g2 library does the init for SSD1306 it closely matches the sequence in the datasheet so I used that as a basis. I also had to set SSD1306_X_OFFSET to 32 but I consider that configuration and not a bug. So the delta for the pull request will be considerable and possibly with regressions for other display geometries.

from stm32-ssd1306.

lamaatje avatar lamaatje commented on September 15, 2024

Also got DMA working:
4pageDMATfer
@400kHz iic 4 pages (1 frame) takes around 7 ms. Potential frame rate 140 Hz with zero CPU usage for frame transfer.

from stm32-ssd1306.

lamaatje avatar lamaatje commented on September 15, 2024

as indicated ssd1306_Init() is:

  1. not maintainable
  2. definitely not working with 64x32 and very likely also not working with other odd formats

In case of issues with the proposed change finding an issue is relatively easy. With the current implementation it is like finding a needle in a haystack as I experienced myself. I took me more then 6 hours to get the 64x32 display working. ssd1306_Init() is a mess and completely diverging from the init in the datasheet.

I2C DMA is nicely implemented with an optional compile switch and there is no dependency with a SPI implementation.

If the pull request is not acceptable for you I will maintain a separate fork or alternative implementation. Without DMA support the applicability of the library for "real" application is limited unless you want to burn CPU cycles with your 32-bit microcontroller.

from stm32-ssd1306.

afiskon avatar afiskon commented on September 15, 2024

I took me more then 6 hours to get the 64x32 display working.

Glad that you managed to fix this issue. Please consider submitting a pull request.

If the pull request is not acceptable for you I will maintain a separate fork or alternative implementation. Without DMA support the applicability of the library for "real" application is limited unless you want to burn CPU cycles with your 32-bit microcontroller.

I don't see how DMA is related to this discussion.

from stm32-ssd1306.

lamaatje avatar lamaatje commented on September 15, 2024

Will maintain a fork.

from stm32-ssd1306.

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.