added support for LDR and models

This commit is contained in:
2025-02-23 21:31:08 -05:00
parent 988765e2c2
commit f067bc26f9
13 changed files with 147 additions and 264 deletions

View File

@@ -1,18 +1,14 @@
#ifndef COMMONS_H
#define COMMONS_H
// Pins
#define LED_PIN 19
#define RS485_RX_TX_SELECT 22
// Config
#define MASTER_ID 0xF0
#define MY_ID 0x00
// #define DEBUG
#ifndef MASTER_ID
#define IS_MASTER
#endif
#define HAS_LED 1 // Set to 0 if unsupported
#define HAS_MOISTURE 1 // Set to 0 if unsupported
#define HAS_LDR 1 // Set to 0 if unsupported
#define MASTER_ID 0xF0
#define MODEL ((HAS_LED << 2) | (HAS_MOISTURE << 1) | HAS_LDR)
#define DELAY_TO_REPLY 5
// Proto
@@ -24,17 +20,23 @@
#define CMD_INDEX (ID_INDEX + 1)
#define PAYLOAD_INDEX (CMD_INDEX + CMD_NAME_LEN)
// MODEL
#define GET_MODEL_CMD_ID 0
#define MODEL_CMD_ID 1
#define MODEL_INDEX 3
// GET
#define GET_CMD_ID 0
#define GET_CMD_ID 2
// SET
#define SET_CMD_ID 1
#define SET_CMD_ID 3
#define LED1_INDEX 3
#define LED2_INDEX 5
// DATA
#define DATA_CMD_ID 2
#define SENSOR_INDEX 3
#define DATA_CMD_ID 4
#define MOISTURE_INDEX 3
#define LIGHT_INDEX 5
// ERROR
#define ERROR_CMD_ID 3
#define ERROR_CMD_ID 5
#define ERR_INDEX 3
#define RET_SUCCESS(ret) (ret <= 1)