Installation Guide

Step-by-step instructions to install Gridova on your platform

Flutter SDK Installation

1. Download Flutter SDK

# Download from official website
https://flutter.dev/docs/get-started/install/windows

# Or use Git
git clone https://github.com/flutter/flutter.git -b stable
cd flutter

2. Add to PATH

# Add to System Environment Variables
C:\path\to\flutter\bin

# Verify installation
flutter doctor

3. Install Android Studio

Download and install Android Studio from the official website, then install Android SDK.

# Accept Android licenses
flutter doctor --android-licenses

Install Gridova

1. Clone Repository

git clone https://github.com/brillianjs/gridova.git
cd gridova

2. Install Dependencies

flutter pub get

This installs all packages defined in pubspec.yaml:

  • google_fonts - Custom fonts
  • device_preview - Test responsive design
  • intl - Internationalization
  • cupertino_icons - iOS icons

3. Configure API Endpoints

Create a configuration file for your API endpoints:

lib/config/api_config.dartdart
// lib/config/api_config.dart
class ApiConfig {
  // Backend API
  static const String baseUrl = 'http://localhost:8000';
  
  // ESP32 Device IP (will be configured per device)
  static String deviceIp = '192.168.1.100';
  
  // WebSocket for real-time data
  static const String wsUrl = 'ws://localhost:8000/ws';
  
  // Endpoints
  static const String loginEndpoint = '/api/auth/login';
  static const String roomsEndpoint = '/api/rooms';
  static const String tenantsEndpoint = '/api/tenants';
  static const String transactionsEndpoint = '/api/transactions';
  
  // ESP32 Endpoints
  static String get sensorData => 'http://$deviceIp/api/sensor';
  static String get relayControl => 'http://$deviceIp/api/relay';
}

4. Run the Application

# Run in debug mode with hot reload
flutter run

# Run on specific device
flutter run -d <device-id>

# Run with device preview
flutter run --dart-define=DEVICE_PREVIEW=true

Arduino IDE Setup (ESP32)

To program the ESP32 hardware component:

1. Install Arduino IDE

Download from arduino.cc

2. Add ESP32 Board Manager

// In Arduino IDE:
// File -> Preferences -> Additional Board Manager URLs
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json

// Then: Tools -> Board -> Board Manager
// Search and install "esp32" by Espressif Systems

3. Install Required Libraries

Install via Library Manager (Sketch → Include Library → Manage Libraries):

  • PZEM004Tv30 - For PZEM sensor communication
  • WiFi - Built-in ESP32 WiFi
  • HTTPClient - For REST API calls
  • ArduinoJson - JSON parsing and serialization
  • PubSubClient - MQTT client (optional)

4. Select Board and Port

// Tools -> Board -> ESP32 Arduino -> ESP32 Dev Module
// Tools -> Port -> Select your COM port (Windows) or /dev/tty.* (Mac/Linux)
// Tools -> Upload Speed -> 115200

Troubleshooting

Installation Complete!

You're now ready to start developing with Gridova. Check out the Hardware Integration guide next.