# Internet Monitor ## Hardware ### Primary target - [Waveshare ESP32-S3](https://www.waveshare.com/esp32-s3-lcd-1.3.htm?sku=30558) ([docs](https://www.waveshare.com/wiki/ESP32-S3-LCD-1.3)) - [W5500 Ethernet Module](https://www.az-delivery.de/en/products/w5500-ethernet-netzwerk-internet-modul-fuer-arduino) ## Test procedure 1. Check physical link - Ethernet unplugged? 2. Run DHCP / IPv4 config - IP assigned? - Subnet? - Gateway? - DNS server? 3. Run SLAAC / IPv6 config - IP assigned? - Subnet? - Gateway? - DNS server? 3. Test local Gateway - Router reachable? IPv4, IPv6 4. Routing/Uplink - Ping 1.1.1.1, 8.8.8.8, 9.9.9.9 - Ping 2606:4700:4700::1111, 2001:4860:4860::8888, 2620:fe::fe 5. DNS - Resolve google.com, cloudflare.com, example.com - Timeout? - NXDOMAIN? 6. S2S VPN - Ping other side 7. Packet throughput 8. Measure latency 9. Measure temperature inside rack ## Display ``` 🟢 ONLINE Latency: 23ms Packet loss: 4.2% IPv4: 192.168.0.123/24 IPv6: 2001:d8::1234:5678:90ab:cdef/64 Temperature: 42°C ``` ## Future ideas - Prometheus endpoint - Test Wifi # Build 1. Setup ESP IDF - Using Nix ``` nix develop ``` - Manually - Check correct version in flake - Setup IDF per docs: https://docs.espressif.com/projects/esp-idf/en/stable/esp32/get-started/index.html#installation 2. Configure? 3. Compile 4. Flash