Device setup

After installing the firmware, you have two primary ways to configure and control your HomeGenie Mini device:

  1. HomeGenie Panel App: The recommended method for most users, providing a user-friendly graphical interface.
  2. Terminal Interface: An advanced option for power users who prefer a command-line setup.

This guide will walk you through both methods.

Getting connected: first-time setup

Upon first power-up, your device is not connected to any network. The status LED will blink continuously to indicate this. Use one of the following methods to establish a Wi-Fi connection.

Method 1: using WPS (quickest method)

  1. Activate WPS pairing mode on your Wi-Fi router (please refer to your router's manual for instructions).
  2. Press and hold the WPS button on your HomeGenie Mini device for at least 5 seconds. (Note: This button may be labeled "BOOT" or "B" on some ESP32 models).
  3. The device's status LED will turn solid, indicating it is actively searching for a WPS connection.
  4. Once a connection is established, the LED will perform a quick series of blinks and then switch to a slow, steady pulse.

While the video demonstrates this process on an ESP32-CAM, these steps apply to any ESP device running the HomeGenie Mini firmware.

Method 2: using Bluetooth and the HomeGenie Panel

If WPS is not available or you prefer a manual setup, you can use the HomeGenie Panel app.

  1. Ensure Bluetooth is enabled on your smartphone.
  2. Open the HomeGenie Panel app and navigate to the connection discovery page.
  3. The app will detect the new HomeGenie Mini device via Bluetooth.
  4. Select the device from the list. You will be guided through a setup wizard to name your device and enter your Wi-Fi network credentials (SSID and password).
  5. After confirming the settings, the device will save the configuration, automatically reset, and connect to your specified Wi-Fi network.

Understanding the status LED

The status LED provides key information about the device's state:

LED PatternMeaning
Continuous BlinkNot connected to a Wi-Fi network.
Solid OnActively attempting to connect (WPS/Wi-Fi).
Slow, Steady PulseSuccessfully connected to Wi-Fi.

Controlling your device with HomeGenie Panel

Once connected to your network, the device will appear in the discovery list within the HomeGenie Panel app. Simply select it and tap "Done" to add it to your dashboard.

HomeGenie Panel - Discovery: select device

The modules and controls available on your dashboard will depend on the specific firmware version installed. For example, the smart-sensor-d1-mini firmware provides access to temperature and light sensors, along with 2 configurable GPIO switches.

HomeGenie Panel - Dashboard

Connecting to HomeGenie Server

HomeGenie Mini devices can be easily integrated into a HomeGenie Server instance, following a few simple steps as demonstrated in the video below. The video shows the process for connecting a HomeGenie Mini Smart Camera to HomeGenie Server to leverage its advanced capabilities, but the procedure is identical for all HG-Mini device types and firmwares.

Connecting your HG-Mini to a HomeGenie Server unlocks powerful features. The server acts as a central hub, providing long-term data logging and advanced visualization capabilities far beyond the device's local storage or the Panel app's immediate view. You can create complex automation routines involving the HG-Mini and other devices managed by the server, utilize its more powerful data processing for analysis or complex event triggering, and access your HG-Mini's data and controls as part of a unified system dashboard. This integration elevates the HG-Mini from a standalone device to a fully integrated component of a larger smart ecosystem managed by HomeGenie Server.

HomeGenie Server - Dashboard

Advanced configuration via terminal interface

For advanced users, HomeGenie Mini can be configured directly through a serial terminal (e.g., via a USB connection). The command-line interface accepts two types of commands:

Connect to your device's serial port using a terminal emulator (e.g., PuTTY, Serial Monitor) with a baud rate of 115200.

System commands (#)

The following system commands are available:

Basic operations

CommandDescription
#RESETRestarts the device. Necessary to apply some settings.
#WPSManually triggers the WPS pairing mode.
#UPTIMEShows how long the device has been running.
#VERSIONDisplays the current firmware version.

Core configuration (#CONFIG)

These commands are used to configure the most fundamental settings of your device. These are typically set once during the initial setup and control the device's identity on the network, its Wi-Fi credentials, and its time synchronization settings.

Device identity

#CONFIG:device-name <name>

Sets the friendly name for the device. This name will be used to identify the device in the HomeGenie Panel and on the network (as its hostname).

Example:

#CONFIG:device-name Living Room Sensor

Network configuration

#CONFIG:wifi-ssid <ssid>

Sets the SSID (name) of the Wi-Fi network the device should connect to.

Example:

#CONFIG:wifi-ssid MyHomeNetwork
#CONFIG:wifi-password <passwd>

Sets the password for the specified Wi-Fi network.

Example:

#CONFIG:wifi-password my S3cur3 P@ssw0rd!
#CONFIG:system-ntp-server <server_address>

Configures a custom NTP (Network Time Protocol) server for time synchronization. This is optional; the device uses a default server if this is not specified.

Example:

#CONFIG:system-ntp-server pool.ntp.org

Time and zone configuration

These settings allow you to manually set the time or configure how the device synchronizes its clock automatically.

#CONFIG:system-time <hh>:<mm>:<ss>.<ms>

Manually sets the system's internal clock. This is useful in environments where an NTP server is not accessible. The time is specified in 24-hour format.

Example:

#CONFIG:system-time 14:30:00.000
#CONFIG:system-zone-id <zone_id>

Sets the timezone using a standard TZ Database name. This is the recommended method for time configuration as it allows the device to automatically handle daylight saving time changes.

Example:

#CONFIG:system-zone-id Europe/Rome
#CONFIG:system-zone-offset <tz_offset>

Manually sets the time offset from UTC in hours. This is a simpler alternative to zone-id but it does not automatically handle daylight saving time.

Example:

#CONFIG:system-zone-offset +1

Parameter management (#GET / #SET)

These commands are used to read and write specific configuration parameters from the device's memory.

Parameters list

KeyDescriptionDefault
sys-rb-nGPIO pin number for the factory reset button.-1 (disabled)
sys-sl-nGPIO pin number for the system status LED.-1 (disabled)
io-typ01Channel 1 Type. Can be: Switch, Light, or Dimmer.(empty)
io-pin01Channel 1 GPIO pin number.-1 (disabled)
io-typ02Channel 2 Type.(empty)
io-pin02Channel 2 GPIO pin number.-1 (disabled)
...(channels 3 through 8 follow the same pattern)...

Examples

menu_open Content index
forum Q & A discussion forum
HomeGenie
MINI 1.2 — Documentation