Best Practice for five device SPI on Teensy 3.6

Status
Not open for further replies.
Good to hear.

Now back to original thing of this thread. Today I received my first ILI9163 board ordered through Amazon (actually from MDFLY). I have two more coming I think Friday direct from MDFLY.

So far I tried hookingup to T3.6 with DC=9, CS=10, MOSI=11, SCLK=13, RST=8, LED(tried 220 and 100 ohm to 3.3v), and 3.3v and GND. So far I am not seeing anything on the display, trying Benchmark. The board is black so I changed settings to include the BLACK...

Investigating...
 
Hi there!

I'm in the planning stage of a similar project, teensy 3.6 with multiple OLED's (SSD1306).
I'm totally new to arduino, but have a lot of experience in MATLAB, so I'm hoping that will help me a bit.

The thread kind of stopped abruptly, do you have any closing remarks/tips on how to get it working?
I'm not 100% on the setup yet, but I'm considering at least 3 displays. How many would be the maximum on the 3.6?
Also ordered a couple of I2C displays to test, is it possible to run both SPI and I2C simultaneously?

Don't mean to hijack the thread, I'll start my own later if (when) I run into problems:)
 
It may depend on which types of these you purchase. That is SPI or I2C and if you are going with any other external hardware.

If I remember correctly with the I2C versions of the SSD1306, they are setup to be hardware configured for one of two addresss, so you maybe can have two of these
per I2C buss, assuming library allows you to choose address per unit... And assuming library has support for different Wire objects (My version does), and the T3.6 has 4 I2C busses.. Not sure if I tried the 4th... You in theory may be able to support up to 8...

As for SPI, it again probably depends on library. My guess is you can probably support for several... Each has to have a different CS pin.... Many don't do anything special so can use almost any pin for CS and DC... Maybe can share DC pin.... I have faster version that desires hardware DC pin at minimum...

But again warning I have not personally tried multiple units yet. I have 1 I2C version, 1 Teensyview (SPI - 2 more on order) and another SPI version (x64 at PO)....
So probably could try with multiple...
 
Summary of my experience:

I was able to run five screens on Teensy 3.6 over SPI without issue.

When designing the circuit, pay attention to which pins the 3.6 can support hardware SPI and wire accordingly. That was the original mistake I made, not RTFM and just connecting to whatever pins were next in my design.

If you use the right pins you can use the "faster" drivers mentioned in this thread a few times. If not you are stuck with the software only drivers but they should still work. I was able to get my flawed PCB to work in software only but hacking some pins around made it faster.
 
i made an spi bus splitter that can plug in up to 16 spi devices on 1 spi port, if i needed to add something i'd plug it straight into one of the available 6 pin header (miso,mosi,sck,cs,-,+)

the power is dedicated and ran in parallel
 
I should also again mention it highly depends on libraries used.

For example the current code from Sparkfun for the Teensyview has one global memory buffer that it uses to display data into. So it currently would not support multiple instances of the object correctly. However it would not take a lot of work to move this buffer to be a member variable of the display instance, which would then hopefully multiple instances to work.
 
Status
Not open for further replies.
Back
Top