mirror of
https://github.com/mysensors/MySensors.git
synced 2026-02-19 17:11:28 +01:00
103 lines
3.3 KiB
C++
103 lines
3.3 KiB
C++
/*
|
|
* The MySensors Arduino library handles the wireless radio link and protocol
|
|
* between your home built sensors/actuators and HA controller of choice.
|
|
* The sensors forms a self healing radio network with optional repeaters. Each
|
|
* repeater and gateway builds a routing tables in EEPROM which keeps track of the
|
|
* network topology allowing messages to be routed to nodes.
|
|
*
|
|
* Created by Henrik Ekblad <henrik.ekblad@mysensors.org>
|
|
* Copyright (C) 2013-2026 Sensnology AB
|
|
* Full contributor list: https://github.com/mysensors/MySensors/graphs/contributors
|
|
*
|
|
* Documentation: http://www.mysensors.org
|
|
* Support Forum: http://forum.mysensors.org
|
|
*
|
|
* This program is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU General Public License
|
|
* version 2 as published by the Free Software Foundation.
|
|
*/
|
|
|
|
#include <iostream>
|
|
#include <cstdio>
|
|
#include <unistd.h>
|
|
|
|
// For more options run ./configure --help
|
|
|
|
// Config file
|
|
//#define MY_LINUX_CONFIG_FILE "/etc/mysensors.conf"
|
|
|
|
// How many clients should be able to connect to this gateway (default 1)
|
|
#define MY_GATEWAY_MAX_CLIENTS 10
|
|
|
|
// Serial config
|
|
// Enable this if you are using an Arduino connected to the USB
|
|
//#define MY_LINUX_SERIAL_PORT "/dev/ttyUSB0"
|
|
// Enable this if you need to connect to a controller running on the same device
|
|
// You also need to define MY_LINUX_SERIAL_PORT above with the symlink name for the PTY device
|
|
//#define MY_LINUX_SERIAL_IS_PTY
|
|
// Grant access to the specified system group for the serial device
|
|
//#define MY_LINUX_SERIAL_GROUPNAME "tty"
|
|
|
|
// MQTT options
|
|
//#define MY_CONTROLLER_IP_ADDRESS 192, 168, 178, 68
|
|
//#define MY_PORT 1883
|
|
//#define MY_MQTT_CLIENT_ID "mysensors-1"
|
|
//#define MY_MQTT_PUBLISH_TOPIC_PREFIX "mygateway1-out"
|
|
//#define MY_MQTT_SUBSCRIBE_TOPIC_PREFIX "mygateway1-in"
|
|
|
|
// Enable these if your MQTT broker requires username/password
|
|
//#define MY_MQTT_USER "username"
|
|
//#define MY_MQTT_PASSWORD "password"
|
|
|
|
// Flash leds on rx/tx/err
|
|
//#define MY_DEFAULT_ERR_LED_PIN 12 // Error LED pin
|
|
//#define MY_DEFAULT_RX_LED_PIN 16 // Receive LED pin
|
|
//#define MY_DEFAULT_TX_LED_PIN 18 // Transmit LED pin
|
|
// Inverse the blinking feature
|
|
//#define MY_WITH_LEDS_BLINKING_INVERSE
|
|
|
|
// Enable software signing
|
|
//#define MY_SIGNING_SOFT
|
|
// Enable signing related debug
|
|
//#define MY_DEBUG_VERBOSE_SIGNING
|
|
// Enable this to request signatures
|
|
//#define MY_SIGNING_REQUEST_SIGNATURES
|
|
// Enable this to to weaken security for gradual deployment purpose
|
|
// (see signing documentation for details)
|
|
//#define MY_SIGNING_WEAK_SECURITY
|
|
|
|
// Enables RF24 encryption (all nodes and gateway must have this enabled, and all must be
|
|
// personalized with the same AES key)
|
|
//#define MY_RF24_ENABLE_ENCRYPTION
|
|
|
|
// Enable inclusion mode if your HA Controller supports it (e.g. Vera Controller)
|
|
//#define MY_INCLUSION_MODE_FEATURE
|
|
// Enable Inclusion mode button on gateway
|
|
//#define MY_INCLUSION_BUTTON_FEATURE
|
|
// Set inclusion mode duration (in seconds)
|
|
//#define MY_INCLUSION_MODE_DURATION 60
|
|
// Digital pin used for inclusion mode button
|
|
//#define MY_INCLUSION_MODE_BUTTON_PIN 3
|
|
|
|
#include <MySensors.h>
|
|
|
|
#define ARDUINO 100
|
|
// This space is intended to be used to include arduino libraries
|
|
|
|
#undef ARDUINO
|
|
|
|
void setup()
|
|
{
|
|
// Setup locally attached sensors
|
|
}
|
|
|
|
void presentation()
|
|
{
|
|
// Present locally attached sensors here
|
|
}
|
|
|
|
void loop()
|
|
{
|
|
// Send locally attached sensors data here
|
|
}
|