The W5100-based Ethernet shield stacks on the Uno and consumes SPI pins plus a chip select line. Mechanical stacking is simple; electrically you must reserve those pins and route DHT22 and LCD wires around the tall assembly.
Stack order and headers
- Seat the Ethernet shield fully on Uno headers, no bent pins behind the RJ45 jack.
- Route jumper wires from the top of the stack or use a protoboard wing for LCD pins.
- Keep Ethernet cable strain relief so RJ45 flex does not lift the shield off headers.
SPI sharing
Only one SPI device should drive the bus at a time; the W5100 owns SPI during network I/O. GPIO for DHT22 and parallel LCD are separate: details in SPI pins and reserved lines.
Network path
DHCP on a garage router assigns the board an IP; JSON is served over HTTP on the LAN. For HTTPS at the edge, terminate TLS on FastAPI relay instead of the MCU. For push ingest from the same shield, use ethernet_dht22_ingest plus the LAN HTTP→HTTPS forwarder in sketches/relay/: see Arduino sketches.