Best way to go 25m with 64 Arduino's?

So I'm currently working on a project of my own, I don't want to share too much info, so I hope I can make myself clear.

I'm working on a locker system, for each locker I'll use an Arduino with some sensors and a lock... The first system will consist of 64 lockers (so Arduino's will be in an 8×8 grid), but I have to take in account that I might go higher numbers in the future... The closet in which the lockers are mounted will be 2 meters wide and 2 meters high, so if I run wires through it, I will at least need 25 meters (in the future it might even be more)...

So what protocol/interface would be the best to connect all these nodes in parallel?

-I2C: it feels like the best way to go, speed should be sufficient, 1024 nodes is plenty even for the future, but the signal doesn't travel too far, even with proper wiring. -SPI: Well, there would be too much wires -RS422/RS485: signal travels far enough, but requires additional electronics

Does anybody have some advise? I'd like to handle it without any extra electronics, or if there is extra electronics required, they shouldn't be too expensive (in China XD )

About the only thing you have left, then, is hand waving or smoke signals.


I don't want to share too much info

This is an open source community, and most members aren't interested in helping someone with a secret, presumably for-profit project.

The fact that you even consider I2C and SPI for communications over a distance of 25 m calls into question your technical expertise.

If someone has concerns to spent 2 or 4 USD per node but wants to use an Arduino for each node, this project is much ahead of his capabilities.

There is literally NOTHING to span a wired communication over a distance of 25m without additional electronics for a commercial product.

As you ask for a hint:
delete I2c and SPI from your shortlist.
You can consider to use RS485 or CAN Bus.

Well, that’s a clear answer, thank you. SPI wasn’t a solution anyway, and I2C: I wasn’t too sure about it, but now I know it’s not suited my goal.

I also considered CAN since I have worked with that bus before, but I think I’ll look into RS485 first, I got that tip from somebody else as well.