Skip to main content
The Kinematrix WiFi module provides comprehensive wireless connectivity and cloud integration capabilities for ESP32 and ESP8266 microcontrollers. With 21 specialized modules, you can connect to WiFi networks, integrate with cloud services, and build IoT applications.

Module Architecture

The WiFi module is organized into several functional categories:

Connection Management

WiFiModule, WiFiHandler V1/V2, and WiFiManager provide flexible WiFi connectivity with auto-reconnection

Firebase Integration

Three generations (V1, V2, V3) supporting Realtime Database, Firestore, Storage, and Messaging

MQTT Communication

Full-featured MQTT client with auto-reconnection, QoS support, and JSON publishing

Cloud Services

Google Sheets, Telegram, and WhatsApp bot integrations for data logging and notifications

Available Modules

WiFi Connection (4 modules)

ModuleDescriptionUse Case
WiFiModuleBasic WiFi connectivitySimple connection management
WiFiHandlerLegacy WiFi handler with callbacksV1 projects
WiFiHandlerV2Modern WiFi handler with AP modeAdvanced WiFi features
WiFiManagerWeb-based WiFi configurationUser-friendly setup

Firebase Services (15 modules)

Complete featured wrapper using Firebase ESP Client library:
  • firebase-handler.h - Main Firebase handler with comprehensive callbacks
  • Full CRUD operations with sync/async support
  • FCM messaging and Firestore document operations
  • Note: Contains hardcoded credentials - security risk for production
Simplified modular approach using FirebaseClient library:
  • firebase-rtdbv2.h - Realtime Database operations
  • firebase-firestorev2.h - Firestore document management
  • firebase-storagev2.h - Cloud Storage file operations
  • firebase-messagingv2.h - Firebase Cloud Messaging
  • Type-safe API with real-time streaming support
Modern enterprise-ready implementation:
  • firebase-applicationv3.h - Centralized authentication
  • firebase-rtdbv3.h - Enhanced Realtime Database
  • firebase-firestorev3.h - Advanced Firestore with batch operations
  • firebase-storagev3.h - Storage with OTA support
  • firebase-messagingv3.h - FCM with platform-specific config
  • Service account authentication and database administration

Cloud Integrations (4 modules)

ModuleDescriptionAuthentication
mqtt-manager.hMQTT client with auto-reconnectionUsername/password
google-sheets.hGoogle Sheets API integrationService account
telegram-bot.hTelegram bot for notificationsBot token
whatsapp-bot.hWhatsApp messaging via APIAPI key

Time Synchronization (2 modules)

ModuleDescriptionFeatures
datetime-ntp.hBasic NTP clientTime synchronization
datetime-ntpv2.hEnhanced NTP with timezonesTimezone support, formatting

Platform Support

All WiFi modules require ESP32 or ESP8266. They use conditional compilation and will not build on AVR platforms.
#if defined(ESP32) || defined(ESP8266)
// WiFi module implementation
#endif

Quick Start

Enable WiFi Modules

Add module definitions to your project before including Kinematrix:
#define ENABLE_MODULE_WIFI_HANDLER_V2
#define ENABLE_MODULE_MQTT_MANAGER
#include "Kinematrix.h"

Basic WiFi Connection

WiFiHandlerV2 wifi;

void setup() {
  Serial.begin(115200);
  
  // Connect to WiFi with 30-second timeout
  if (wifi.connect("YourSSID", "YourPassword", 30000)) {
    Serial.println("Connected!");
    Serial.println(wifi.getIP());
  }
}

void loop() {
  wifi.loop(); // Maintain connection
}

Module Selection Guide

WiFi Connection

WiFiModule

Use for: Simple projects needing basic connectivityBasic connection with auto-reconnect

WiFiHandlerV2

Use for: Advanced WiFi featuresAP mode, dual mode, scanning, callbacks

WiFiManager

Use for: End-user productsWeb-based configuration portal

Firebase Version

1

Firebase V1

Legacy projects requiring extensive callback systems
Contains hardcoded credentials - avoid for new projects
2

Firebase V2

Applications needing real-time streaming and simplified APIRecommended for most projects
3

Firebase V3

Production applications requiring advanced Firestore featuresEnterprise-ready with centralized authentication

Dependencies

WiFi modules require additional libraries in your platformio.ini:
lib_deps = 
  # Firebase V1
  https://github.com/mobizt/Firebase-ESP-Client.git
  
  # Firebase V2/V3
  https://github.com/mobizt/FirebaseClient.git
  
  # MQTT
  knolleary/PubSubClient@^2.8
  
  # Google Sheets
  mobizt/ESP-Google-Sheet-Client@^1.4.4
  
  # Telegram
  witnessmenow/UniversalTelegramBot@^1.3.0
  bblanchon/ArduinoJson@^6.21.3
  
  # WhatsApp
  ayushsharma82/UrlEncode@^1.0.1

Best Practices

Security Considerations:
  • Never hardcode WiFi credentials in production code
  • Use environment variables or WiFiManager for configuration
  • Avoid Firebase V1 which contains hardcoded service account keys
  • Store sensitive keys in secure locations
Connection Reliability:
  • Always implement auto-reconnection logic
  • Use watchdog timers for connection monitoring
  • Handle connection failures gracefully
  • Test with unstable network conditions

Common Use Cases

IoT Data Logging

  1. Connect using WiFiHandlerV2
  2. Store data in Firebase Realtime Database (V2/V3)
  3. Send alerts via Telegram bot
  4. Log to Google Sheets for analysis

Remote Monitoring

  1. Use MQTT for real-time communication
  2. Subscribe to control topics
  3. Publish sensor data periodically
  4. Implement last-will-and-testament for status

Smart Home Control

  1. WiFiManager for easy setup
  2. MQTT for device communication
  3. Telegram bot for notifications
  4. Firebase for configuration storage

Memory Considerations

ESP8266 has limited RAM (80KB). Consider:
  • Using only required modules
  • Reducing buffer sizes
  • Implementing memory-efficient patterns
  • Monitoring heap usage during development
ESP32 provides more headroom:
  • 520KB RAM allows multiple cloud services
  • Can run Firebase + MQTT simultaneously
  • Supports larger JSON documents

Next Steps

WiFi Manager

Learn about advanced WiFi connection management

Firebase Integration

Explore Firebase V2 and V3 implementations

MQTT Communication

Set up MQTT for real-time messaging

Cloud Integrations

Connect to Google Sheets, Telegram, and WhatsApp

Build docs developers (and LLMs) love