Offline Chat System Using ESP8266 + WebSockets
π Perfect for emergencies, disasters, or just cool offline tinkering!
node_comms is a peer-to-peer-style offline chat system that runs entirely on an ESP8266 microcontroller. It's designed for situations where cell towers are down, Wi-Fi is unavailable, or you're just off-grid ποΈ. Your ESP8266 becomes a Wi-Fi hotspot that allows nearby devices to connect and chat via a sleek web interface using WebSockets.
π‘ No internet needed. No server required. Just power up and chat!
- π‘ Creates its own Wi-Fi network (AP mode)
- π¬ Real-time chat using WebSockets
- π₯ Random usernames with user join/leave notifications
- π User list display
- π² Mobile-friendly responsive UI
- π Audio beep when you get a new message
- π Captive portal redirection (just open browser after connecting)
- π οΈ No external server or internet needed
- π¨ Disaster scenarios (earthquakes, hurricanes, power outages)
- ποΈ Off-grid camping or hiking trips
- π΅ Zero-bar zones or remote work areas
- π§ͺ Hobby projects or local mesh chat experiments
- π ESP8266 NodeMCU
- β‘ Arduino IDE or PlatformIO
- π Libraries:
ESP8266WiFiESP8266WebServerDNSServerWebSocketsServer(Install via Library Manager or PlatformIO: "WebSockets" by Markus Sattler)
git clone https://github.com/mr6874000/node_comms.git
cd node_comms
pio run -t upload- Open the
.inoor.cppfile. - Install the required libraries.
- Select your board (e.g., NodeMCU 1.0).
- Click β Upload.
- π Power up the ESP8266.
- πΆ Connect your phone/laptop to the
ANONWi-Fi network. - π Open any browser β you'll be redirected to the chat interface.
- π¬ Start chatting with others connected to the same ESP!
(Coming soon β you can help by adding some!)
MIT β Free to use, hack, and improve!
Just don't use it for evil β οΈ.
- π Add optional password protection
- π Mesh communication between multiple ESPs
- π§ GPS integration for rescue coordination
- π Low-power sleep mode
git clone https://github.com/mr6874000/node_comms.git
π°οΈ Stay connected β even when the world isnβt.