5 screens, how many Arduino's

I am experience developer but new to Arduino, I want to make a "device" which has one large touch screen and 4 smaller touchscreen. From my first investigation it seems to me i should use 5 seperate Arduino's, each connected to a touch screen and then use one Arduino as the master and connect to the 4 slaves? Is that the correct approach?

Thanks in advance

Welcome to the forum

The approach you take depends on your application. Where is the data displayed on the screens coming from and where are the inputs to the screens going to ? How close together are the 5 screens going to be ?

Please give an overall description of the project

And why is that?

Because I don’t know how to connect 5 touch screens to one Arduino? Can it be done through i2c?

if the screens can be configured to have separate addresses then why not. If not then you can definitely have multiple SPI screens as each will have separate chip select pin

What do you mean with SPI? Is that the same as i2c? So you would suggest to use just one Arduino? Is there any touch screen you can recommend ? I found there are Many choices, I looking for small but preferable wide screens ?

SPI and I2C are 2 different protocols, there are screens that support both and there are screens that support one of the two. Why don’t you look up what’s available before deciding to use multiple arduinos which will make your project over complicated for no reason

Which arduino? Mega? Uno? Nano?
Which Connection? SPI? I2C? Serial?
But i'll recommend using I2C;
Because it only requires 4 pins rather than the Serial that is 12 pins
But i'll recommend using Arduino Mega;
Because it has More pins than the Arduino UNO.

As I said

I want to make a kind of “monopoly” board game computer.

One big touch screen in the middle (flat)

4 small touch screens on each side

I created this with one iPad and 4 iPods but that is way too expensive

That has put things more in perspective as we now know that the 5 screens are all in close proximity so communication with them is easy so the next thing for you to do is to choose your screens and the interface that they will use

It seems very probable that you could read from and write to the screens using a single Arduino board but what else is going to be running on it ? What sort of game or games do you have in mind ?

Interesting concept.

Do you need and/or are you planning to use screens with that sort of pixel resolution? If so, the video frame buffers are on the order of megabytes which probably takes the project out of microcontroller territory and into embedded computer (e.g. Raspberry Pi) space.

Another consideration is how dynamic the graphics will be which drives computational horsepower requirements.

The same device can be used for card games which is graphical intensive.

The big screen I want to be at lease 20inch, so could be one Arduino is not powerful enough?

The same device can be used for card games which is graphical intensive.

You will need a microcontroller with a large amount of memory for that. The RPi or similar is probably a minimum requirement.

It can do calculations and it can be connected to a "screen" does not mean it can do so in every size.

This is not depending on the screen-size. It depends on the screen-resolution.

You could have a neopixel "screen" with 40 x 40 = 1600 pixels in a size of 25 inches. Which would be manegable by a single arduino

Or you can have a 5 inch small screen with 1280 x 720 = 921600 Pixels which is far behind almost any microcontroller. If you want to have 921600 RGB-pixels this would mean a picture-buffer of 921600 x 3 = 2,76 Megabyte.
An Arduino "Mega" has 0,006 Megabyte RAM. ( 6 kilobyte)
An ESP32 has 0,5 Megabyte of RAM. (512 kilobyte)

Your aim seem to be low-cost.
For high-resolution small screens I think the cheapest way will be to use some used smartphones with an App created with MIT App inventor

And for the central big high-resolution 20 inch-screen to use a banana-pi (as RaspBerry Pi are sold out in many shops) price $100 2000 megabyte of RAM

If you still want to stay on the super-low-cost-level of Arduinos you have to provide even more details about your project to be able to make a serious suggestion if this can be realised with microcontrollers.

Maybe intelligent screens like Nextion might be an option. Depending on your application it might be sufficient to use overlay shapes and leds to get the same functionality.

best regards Stefan

Android devices will be fraction of the cost in this case and maybe even cheaper than going microcontroller way

It's going to be strongly dependent on how "smart" your screens are.
If they're of the sort that you can send short commands and have an object pop up (old phones running custom apps, or something like a Nextion), you can probably get away with a single Arduino driving all of them.

If they're the sort that you have to refresh continuously over a high-speed interface like SPI, then you probably need an arduino for each one.

Ditto for "smart" vs "dumb" touch screens.

(although, you may also have troubles finding Arduino display libraries that can be coerced into supporting multiple displays, regardless of performance issues.)

Very interesting concept. Does your prototype with Apple hardware "actually" function or just for "show"? Important to know how far down the conceptual development process you have traveled.

IF starting programming from scratch, you may want to investigate web-development with all devices Android tablets. The displays can just be browsers and control code is javascript: everything you need is available in Javascript: logic, graphics, screen controls. The larger screen can be any OS, but Linux with a webserver comes to mind. Clients log automatically into the LAN within the system console, so a one person to four person game can be played... but a 5th, 6th, nth person could use a smartphone, in theory.

If you are already down the Arduino rabbit hole, then good luck, sounds like a labor of love. Beware delays in touchscreen responsiveness unless you implement an interrupt driven methodology and time-tagging to ensure accurate response scoring (ex: 1st, 2nd, 3rd, last.)

It is working , I implemented a working game , developed the protocol etc.

After all different replies I tend now to have 5 devices ( raspberry pi or Arduino) which each one screen connected because I want it to be responsive.

I also would like with a switch that the device is ready to play, users should not have to start an app in order to play.

I have thought about a web interface but I prefer c++ over JavaScript