Comments (5)
The statement is still accurate. I attempted to clear up the 3/4-wire confusion in the docs at https://ssd1306.readthedocs.io/en/latest/hardware.html#i2c-vs-spi
The use of the terms 4-wire and 3-wire SPI are a bit confusing because, in most SPI documentation, the terms are used to describe the regular 4-wire configuration of SPI and a 3-wire mode where the input and ouput lines, MOSI and MISO, have been combined into a single line called SISO. However, in the context of these OLED controllers, 4-wire means MOSI + Data/Command and 3-wire means Data/Command sent as an extra bit over MOSI.
@rm-hull Btw, the new docs look awesome! Sorry I didn't have time to help this time around. I'll see if I can get my display working over the weekend.
from luma.oled.
Assume you read this in the hardware section in https://ssd1306.readthedocs.io:
3-wire SPI eliminates the separate Data/Command line by sending an extra bit with each byte, which causes a small amount of overhead. Supporting 3-wire SPI would be trivial but has not been implemented yet (no devices to test with).
@rogerdahl - I copied this text from your original PR... Is that paragraph accurate? I thought 3-wire was where the MOSI and MISO lines were combined into a bi-directional data-line, or have I misunderstood? Here's what wikipedia has to say on it:
Three-wire serial buses
As mentioned, one variant of SPI uses single bidirectional data line (slave out/slave in, called SISO) instead of two unidirectional ones (MOSI and MISO). This variant is restricted to a half duplex mode. It tends to be used for lower performance parts, such as small EEPROMs used only during system startup and certain sensors, and Microwire. Few SPI master controllers support this mode; although it can often be easily bit-banged in software.
I think it is unlikely that we'll ever support 3-wire SPI on the basis of the above statements (slow and rare), & the fact that data transfer is not bi-directional for these displays.
It might be worth editing that statement out of the docs though.
from luma.oled.
It might be worth editing that statement out of the docs though.
Will do.
from luma.oled.
Done.
from luma.oled.
This ticket needs to be migrated to https://github.com/rm-hull/luma.core - don't know if that's technically possible? or just close and re-create?
from luma.oled.
Related Issues (20)
- how do i change in code sh1106 driver , need location for code change ? HOT 2
- [question] access screens on remote Pi?
- Support for non-Raspberry Pi Linux boards HOT 1
- New Haven 2.7 oled with ssd1322 HOT 4
- ImportError: The _imagingft C module is not installed HOT 1
- White display SPI issue with 6.x kernels HOT 2
- Array is incorrectly shifted for 96x16 OLEDs. HOT 5
- Scrolling text within bounding box
- Input/output error for luma.oled HOT 5
- sys_info.py: error: I2C device not found on address: 0x3C.But i2c can detected on pi 4b arm64
- Low FPS on SSD1322 and Raspberry Pi 3B HOT 1
- Orange Pi zero2 error Timer expired HOT 2
- Wrong column offset 1.54" SH1106 I2C HOT 5
- Hardware Accelerated 3D on the SSD1306
- from oled.device import ssd1306, sh1106 ModuleNotFoundError: No module named 'oled' HOT 7
- ImportError: cannot import name 'sh1107' from 'luma.oled.device' HOT 1
- Incremental screen updates with Luma and SH1106? HOT 1
- Semi-random pixels on SSD1322 - how to fix? HOT 4
- RPi3B multiple SPI SSD1306 displays HOT 5
- Support to display latin characters HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from luma.oled.