This will set up a Raspberry Pi to connect to a Tesla Powerwall Gateway (TEG) and bridge that connection to the ethernet connected LAN.
___________________ __________________________ _______________
[ Powerwall Gateway ] [ Raspberry Pi ] [ Host ]
[ TEG ] WiFi [__________________________] LAN [ Linux/Mac/Win ]
[ WiFi: TEG-xxx ] <---- [ 192.168.91.x | 10.0.1.55 ] <-----> [ 10.0.1.65 ]
[ 192.168.91.1 ] [ WiFi (dhcp) | Ethernet ] [ LAN ]
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾ ‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾ ‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
- Create or edit
/etc/wpa_supplicant/wpa_supplicant.conf
:
network={
ssid="TEG-xxx"
psk="password"
}
- Restart Networking and Test
sudo systemctl restart networking
# Test
ifconfig wlan0
ping -c 1 192.168.91.1
- Set up IPv4 Routing and Reboot
# Add IP Forwarding - Uncomment net.ipv4.ip_forward=1
sudo sed -i -e '/^#net\.ipv4\.ip_forward=1/s/^#//' /etc/sysctl.conf
sudo sysctl -w net.ipv4.ip_forward=1
# Restart
sudo reboot
On the host, you need to add a route to use the Raspberry Pi as a gateway to get to the Powerwall Gateway.
# Linux
sudo ip r add 192.168.91.0/24 via 10.0.1.55
# MacOS
sudo route add -host 192.168.91.1 10.0.1.55
# Test
ping -c 1 192.168.91.1
curl -ik https://192.168.91.1
Yes, but the traffic can't make it back to the Gateway unless you add the route back to the Powerwall via the RPi.
Alternative: If you are using your RPi to poll the Powerwall and just present the data (via Dashboard, API, etc) to your LAN, you don't need to add the IP forwarding, just Steps 1 and 2. The Powerwall would only have access to your RPi in that case.
That would work as well. Would you be willing to share your setup?