Feasibility: Arduino I2C 7" TFT with Multiple OLEDs?

Hello,

I'm very new to Arduino and attempting to learn a new skill to be utilized on another project. While I've heard of each of the approaches outlined below being done individually, I have not heard of them being pursued together.

I'm planning to use an Arduino Mega to read in 10 Analog inputs from various 5V sensors via pull-up resistors, and communicate the results via I2C to multiple displays (think of a main automotive gauge cluster, with multiple small screens). Understandably the sampling/upload rate will be low with 10 sensors and 5 I2C devices, however this may be useful to limit display glitchiness. The main display was planned to be a Nextion 7" TFT and the subsequent displays were 4 OLEDs. I've recently discovered the Nextion communicates solely via serial - so, either use the Nextion, or the 4 OLEDs (via MUX) but not both.

In doing some research it appears there are many other TFTs available, some of which communicate via I2C, however I'm concerned the other displays do not have as much support for graphics displays and setup as the Nextion. Also, I'm concerned how the "other" TFTs would interface to the I2C - guessing I would need a driver chip to interface with the Arduino. An example of what I've found is listed below:

Finally, I'm concerned about power usage. I'm fairly confident the Mega cannot support the power demands of 10 sensors, plus a 7" TFT and 4 OLEDs. I've heard of using a converter to step down to 5VDC (like the link below), but I'm curious how that would work with the 5V/GND pins....I've heard of some people powering the Arduino through the 5V Power supply pin (one 5V distribution block feeding the displays, arduino, and sensors - all at the same voltage potential), however it is not recommended as this would bypass the internal voltage regulator.

So.....is any of this feasible? If my project is not feasible with the Arduino, please let me know. Alternatively, if it is possible but I am not taking the correct approach, I welcome any guidance I can get....

Thanks for your guidance and patience!

I’ve recently discovered the Nextion communicates solely via serial - so, either use the Nextion, or the 4 OLEDs (via MUX) but not both.

Please explain that? The Nextion is attached to the serial (UART) interface while the OLEDs connect to the I2C (I don’t see why a MUX is necessary, maybe you should post links to the products you like to use).

Also, I’m concerned how the “other” TFTs would interface to the I2C - guessing I would need a driver chip to interface with the Arduino. An example of what I’ve found is listed below:

7"inch TFT LCD Module w/Multi-Capacitive Touch Screen Panel,I2C,SPI,Tutorial | eBay

Never buy such stuff just because it’s cheap. If you’re not extremely experienced in Arduino programming and know exactly what you’re buying, you should only buy products that has Arduino libraries available from the supplier.

I’m fairly confident the Mega cannot support the power demands of 10 sensors, plus a 7" TFT and 4 OLEDs

That depends on the products used. As you didn’t specify what sensors you use we have no clue about the current needs of them. The OLEDs I use need about 12mA, so 4 of them are at 50mA which the Mega will supply without any problems.

however it is not recommended as this would bypass the internal voltage regulator.

It’s not recommended for beginners as they might damage the Arduino. But if you have a stable 5V power supply there’s no problem to power the Arduino with it too.

Thanks for the response, I've attempted to clarify below:

pylon:
Please explain that? The Nextion is attached to the serial (UART) interface while the OLEDs connect to the I2C (I don't see why a MUX is necessary, maybe you should post links to the products you like to use).

From what I understand, both the Nextion and the OLEDs would need to communicate via the SDA and SCL port. The OLEDs are I2C compatible, whereas the Nextion is not. A MUX is necessary because the OLEDs have the same address. IN order to use more than one on the same communication line, a MUX is required to split up the commands to each OLED. After doing some more digging, it appears the Mega has up to 3 serial communication lines - so I should be able to use one for the Nextion via traditional serial communication, and the other for the OLEDs. Here is the link to the OLEDs I was considering:

pylon:
Never buy such stuff just because it's cheap. If you're not extremely experienced in Arduino programming and know exactly what you're buying, you should only buy products that has Arduino libraries available from the supplier.

I wasn't considering that display because it was cheap, I was considering it because it could support I2C communication, so I could use one SDA/SCL pair to communicate with all 5 displays. Since the Mega has 3 SDA/SCL port pairs, the concern is moot. However, I was more interested with how somebody would go about uploading graphics to the display without the nice software, interface, and support offered by the Nextion.

pylon:
That depends on the products used. As you didn't specify what sensors you use we have no clue about the current needs of them. The OLEDs I use need about 12mA, so 4 of them are at 50mA which the Mega will supply without any problems.

The products are all 5V automotive sensors, primarily coolant temperature sensors, intake air temperature, manifold absolute pressure sensors, oil pressure, and EGT. In reviewing their expected resistance values for 5V supply during their operating range, many range from 100-6kOhm. So, very low. The Nextion pulls 510mA, so along with the 4 OLEDs, I should be around 750mA max - which may push above the Mega's capabilities.

From what I understand, both the Nextion and the OLEDs would need to communicate via the SDA and SCL port.

No. The Nextion communicates over any of the 4 hardware serial interfaces (UART) with the Arduino (D14-D19).

A MUX is necessary because the OLEDs have the same address.

The ones with SSD1306 usually have a configurable address. You might need to make some solder bridges but the can have about 4 different address. Otherwise a MUX might be a solution but that makes the library usage much harder.

After doing some more digging, it appears the Mega has up to 3 serial communication lines - so I should be able to use one for the Nextion via traditional serial communication, and the other for the OLEDs.

Don't mix the serial interfaces. Usually a serial interface is meant to be UART style. The Mega has 4 of them, one is used for to communicate to the controlling PC. I2C and SPI are synchronous serial interfaces and are explicitly called I2C or SPI but almost never "serial interface".

The Mega has one I2C interface.

I wasn't considering that display because it was cheap, I was considering it because it could support I2C communication, so I could use one SDA/SCL pair to communicate with all 5 displays.

But the Mega has not enough memory to drive that display. That's no display for an Arduino.

Since the Mega has 3 SDA/SCL port pairs, the concern is moot.

No, it hasn't, see above.

The Nextion pulls 510mA, so along with the 4 OLEDs, I should be around 750mA max - which may push above the Mega's capabilities.

In this case I would get a stable 5V power supply (or DC/DC converter as this sounds like a car project) and drive both the Arduino and the displays from there.