4d2da56baf
USB PID auf 0x5740 (STM32 Virtual COM Port) gesetzt — Wechselrichter akzeptiert nur diesen PID und pollt den IN-Endpoint sonst nicht. Product-String ebenfalls auf Originalwert gesetzt. MODBUS_BAUD auf 9600 (Growatt-Standard, baud-rate ist bei USB CDC virtuell aber beeinflusst CDC Line Coding). usbReady-Check von == 127 auf >= 8 gelockert — verhindert dass ein voller TX-Buffer alle Sensoren sofort mit 0xFE abwürgt. Debug-String zeigt jetzt avS (Zyklusstart) und avE (Zyklusende) zur Diagnose des TX-Buffer-Verlaufs. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
63 lines
2.1 KiB
C
63 lines
2.1 KiB
C
#pragma once
|
|
|
|
// ============================================================
|
|
// Pin-Belegung — STM32F103RBT6, LQFP-64
|
|
// Quelle: https://github.com/mwalle/shinelanx-modbus
|
|
// ============================================================
|
|
|
|
// ENC28J60 — SPI2 (Hardware-SPI)
|
|
#define ETH_CS_PIN PB12
|
|
#define ETH_SCK_PIN PB13
|
|
#define ETH_MISO_PIN PB14
|
|
#define ETH_MOSI_PIN PB15
|
|
#define ETH_RST_PIN PC8
|
|
|
|
// LEDs (aktiv LOW)
|
|
#define LED_DEBUG PC7
|
|
#define LED_RED PB1
|
|
#define LED_GREEN PB0
|
|
#define LED_BLUE PC5
|
|
|
|
// User-Taster
|
|
#define BTN_USER PA3
|
|
|
|
// MAC-Adresse
|
|
#define MAC_ADDRESS 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED
|
|
|
|
// ============================================================
|
|
// MODBUS
|
|
// ============================================================
|
|
#define MODBUS_BAUD 9600
|
|
#define MODBUS_ADDR 1
|
|
|
|
// ============================================================
|
|
// GERÄT
|
|
// ============================================================
|
|
#define MQTT_CLIENT "growatt-shinelan"
|
|
#define DEVICE_ID "growatt_shinelan"
|
|
#define DEVICE_NAME "Growatt ShineLAN-X"
|
|
#define DEVICE_MODEL "ShineLAN-X"
|
|
#define DEVICE_MFR "Growatt"
|
|
|
|
// ============================================================
|
|
// STANDARD-WERTE (erster Boot / Werkseinstellungen)
|
|
// Werden über die Web-UI überschrieben und in EEPROM gespeichert.
|
|
// ============================================================
|
|
#define DEFAULT_DHCP true
|
|
#define DEFAULT_STATIC_IP 192,168,1,99
|
|
#define DEFAULT_GW 192,168,1,1
|
|
#define DEFAULT_SUBNET 255,255,255,0
|
|
#define DEFAULT_DNS 192,168,1,1
|
|
#define DEFAULT_MQTT_BROKER "192.168.1.1"
|
|
#define DEFAULT_MQTT_PORT 1883
|
|
#define DEFAULT_MQTT_USER ""
|
|
#define DEFAULT_MQTT_PASS ""
|
|
#define DEFAULT_UPDATE_MS 10000UL
|
|
|
|
// ============================================================
|
|
// WECHSELRICHTER-MODELL
|
|
// Genau einen einkommentieren:
|
|
// ============================================================
|
|
#define INVERTER_MIC1500 // Growatt MIC 1500/2000 TL-X (einphasig)
|
|
// #define INVERTER_SPH5000 // Growatt SPH 5000 TL3 (dreiphasig, Hybrid)
|