TL;DR: This question is about saving unnecessary CAN transceivers by sharing one among 3-4 equal MCUs on a small, single board.
Imaginary situation: A board with multiple, equal, CAN-capable STM32-MCUs needs to chat with other equally-made boards via CAN bus. There's one transceiver on each board (most probably an MCP2562FD), meant to be connected to all MCUs in parallel, sharing bus access. Please see the following pseudo-schematic for clarification:
The "secondary MCUs" on the left half will "just passively listen" and use individual ID filters to only get relevant data for their task.
The respective "main MCU" will be the only active communicator on each board, officially talk / respond / ACK on the bus.
The point is to reduce transceiver IC count per board. Normally, I would put a dedicated transceiver for each MCU. To me, however, a CAN transceiver (not: controller) looks like an "active access point" / "medium translator" that's not necessarily bound to be connected to a single client MCU only. I further assume, that if the main MCU was able to understand a message (and "ACKed" it), the secondary µCs should have received it correctly, too - since all lines are kept short and away from noise, and interference should be most likely to happen on the other side of the transmitter. The tx lines of the secondaries will be omitted, most probably, to enforce passivity.
To me, this concept looks feasible, electronically and logically. Yet, I'm unable to find any resource describing that it could work or wouldn't at all. If any CAN / STM32 pro could shed some light on this, point me to the right direction (*), name pitfalls, confirm or refute my thoughts, I'd highly appreciate that!
Thank you for your time and attention!
(*) without discussing the multi-MCU-approach as a whole or switching to / introducing other means of multi processor communication - I love and want the high abstraction level by ID filtering and mailboxes all-in-hardware goodness ;)