Bus communication scheme for large number of devices (255+ nodes)?

I'm trying to figure out the feasibility of setting up some type of differential bus communication for up to 400 devices outdoors. The main constraints are mainly power consumption, complexity, wire count, and whether something like this is electrically possible (with reasonable bus capacitance/speed/pullups).

The other constraint is that each node should be able to connect ad-hoc in an arbitrary position on the bus. Termination resistors are possible if needed. For example:

+----+     +----+    +----+        +----+
|    +-----+    +----+    +--------+    |
| 5  |     | 0  |    | 1  |        | 4  |
+-+--+     +-+--+    +----+        +----+
|          |
|        +-+--+    +----+
|        |    |    |    |
+--------+ 2  +----+ 3  |
+----+    +----+


The distance covered between the farthest nodes shouldn't be more than 15 meters. I'm assuming the bus capacitance will be quite large with 255+ nodes. Does it make sense to include a bus repeater in each node? Would this use unnecessarily high power or significantly slow down communications? High speed communication isn't super necessary, for instance 9600 baud would do the trick.

The microcontroller that I'm using is reasonably fast, but has a single USART and limited free IO pins. So I don't think it would make sense to use something like RS422 and pass through data. I'm thinking that RS485 half-duplex would make the most sense, paired with a custom protocol based on Modbus. For this application, it seems much simpler to implement in software than CAN, plus making >8bit addressing possible. Does this make sense, or is it unfeasible?

• You ask about a bus but then make a drawing of individual connections between devices . Before going the "custom" route (making things more difficult, more work for you) be sure that all existing protocols cannot do the job. Realize that you can make >8 bit addressing possible on any bus as long as you put the address data inside the data packet. Then use software to do the address decoding. All devices will receive the data but only the addressed device will process that data. – Bimpelrekkie Oct 29 '20 at 15:33
• A 15 m radius and 256 nodes is almost 3 nodes per square meter. Curious about what you are doing that requires that node density. – AnalogKid Oct 29 '20 at 15:34
• 400+ nodes, ad-hoc networking, it's the year 2020 -- I'd say choose a microprocessor that supports Ethernet, and use that, possibly with POE. – TimWescott Oct 29 '20 at 16:13
• Is communication bidirectional or unidirectional? Will there be a master? How large is the data that you are moving? – vini_i Oct 29 '20 at 16:22
• Do you need to support loops, like in node 5? – Aaron Oct 29 '20 at 16:26