2 * Copyright (c) 2010-2024 Contributors to the openHAB project
4 * See the NOTICE file(s) distributed with this work for additional
7 * This program and the accompanying materials are made available under the
8 * terms of the Eclipse Public License 2.0 which is available at
9 * http://www.eclipse.org/legal/epl-2.0
11 * SPDX-License-Identifier: EPL-2.0
13 package org.openhab.binding.solax.internal;
17 import org.eclipse.jdt.annotation.NonNullByDefault;
18 import org.openhab.core.thing.ThingTypeUID;
21 * The {@link SolaxBindingConstants} class defines common constants, which are
22 * used across the whole binding.
24 * @author Konstantin Polihronov - Initial contribution
27 public class SolaxBindingConstants {
29 protected static final String BINDING_ID = "solax";
30 private static final String THING_LOCAL_CONNECT_INVERTER_ID = "local-connect-inverter";
32 // List of all Thing Type UIDs
33 public static final ThingTypeUID THING_TYPE_LOCAL_CONNECT_INVERTER = new ThingTypeUID(BINDING_ID,
34 THING_LOCAL_CONNECT_INVERTER_ID);
36 public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_LOCAL_CONNECT_INVERTER);
39 public static final String PROPERTY_INVERTER_TYPE = "inverterType";
41 // List of all Channel ids
42 // Single phase specific
43 public static final String CHANNEL_INVERTER_OUTPUT_POWER = "inverter-output-power";
44 public static final String CHANNEL_INVERTER_OUTPUT_CURRENT = "inverter-current";
45 public static final String CHANNEL_INVERTER_OUTPUT_VOLTAGE = "inverter-voltage";
46 public static final String CHANNEL_INVERTER_OUTPUT_FREQUENCY = "inverter-frequency";
47 public static final Set<String> SINGLE_CHANNEL_SPECIFIC_CHANNEL_IDS = Set.of(CHANNEL_INVERTER_OUTPUT_POWER,
48 CHANNEL_INVERTER_OUTPUT_CURRENT, CHANNEL_INVERTER_OUTPUT_VOLTAGE, CHANNEL_INVERTER_OUTPUT_FREQUENCY);
50 // Three phase specific
51 public static final String CHANNEL_INVERTER_OUTPUT_POWER_PHASE1 = "inverter-output-power-phase1";
52 public static final String CHANNEL_INVERTER_OUTPUT_POWER_PHASE2 = "inverter-output-power-phase2";
53 public static final String CHANNEL_INVERTER_OUTPUT_POWER_PHASE3 = "inverter-output-power-phase3";
54 public static final String CHANNEL_INVERTER_TOTAL_OUTPUT_POWER = "inverter-total-output-power";
55 public static final String CHANNEL_INVERTER_OUTPUT_CURRENT_PHASE1 = "inverter-current-phase1";
56 public static final String CHANNEL_INVERTER_OUTPUT_CURRENT_PHASE2 = "inverter-current-phase2";
57 public static final String CHANNEL_INVERTER_OUTPUT_CURRENT_PHASE3 = "inverter-current-phase3";
58 public static final String CHANNEL_INVERTER_OUTPUT_VOLTAGE_PHASE1 = "inverter-voltage-phase1";
59 public static final String CHANNEL_INVERTER_OUTPUT_VOLTAGE_PHASE2 = "inverter-voltage-phase2";
60 public static final String CHANNEL_INVERTER_OUTPUT_VOLTAGE_PHASE3 = "inverter-voltage-phase3";
61 public static final String CHANNEL_INVERTER_OUTPUT_FREQUENCY_PHASE1 = "inverter-frequency-phase1";
62 public static final String CHANNEL_INVERTER_OUTPUT_FREQUENCY_PHASE2 = "inverter-frequency-phase2";
63 public static final String CHANNEL_INVERTER_OUTPUT_FREQUENCY_PHASE3 = "inverter-frequency-phase3";
64 public static final String CHANNEL_INVERTER_TEMPERATURE1 = "inverter-temperature1";
65 public static final String CHANNEL_INVERTER_TEMPERATURE2 = "inverter-temperature2";
66 public static final String CHANNEL_INVERTER_WORKMODE = "inverter-workmode";
69 public static final String CHANNEL_INVERTER_PV1_POWER = "pv1-power";
70 public static final String CHANNEL_INVERTER_PV1_VOLTAGE = "pv1-voltage";
71 public static final String CHANNEL_INVERTER_PV1_CURRENT = "pv1-current";
73 public static final String CHANNEL_INVERTER_PV2_POWER = "pv2-power";
74 public static final String CHANNEL_INVERTER_PV2_VOLTAGE = "pv2-voltage";
75 public static final String CHANNEL_INVERTER_PV2_CURRENT = "pv2-current";
77 public static final String CHANNEL_INVERTER_PV_TOTAL_POWER = "pv-total-power";
78 public static final String CHANNEL_INVERTER_PV_TOTAL_CURRENT = "pv-total-current";
80 public static final String CHANNEL_BATTERY_POWER = "battery-power";
81 public static final String CHANNEL_BATTERY_VOLTAGE = "battery-voltage";
82 public static final String CHANNEL_BATTERY_CURRENT = "battery-current";
83 public static final String CHANNEL_BATTERY_TEMPERATURE = "battery-temperature";
84 public static final String CHANNEL_BATTERY_STATE_OF_CHARGE = "battery-level";
86 public static final String CHANNEL_FEED_IN_POWER = "feed-in-power";
88 public static final String CHANNEL_TIMESTAMP = "last-update-time";
89 public static final String CHANNEL_RAW_DATA = "raw-data";
92 public static final String CHANNEL_POWER_USAGE = "power-usage";
93 public static final String CHANNEL_TOTAL_ENERGY = "total-energy";
94 public static final String CHANNEL_TOTAL_BATTERY_DISCHARGE_ENERGY = "total-battery-discharge-energy";
95 public static final String CHANNEL_TOTAL_BATTERY_CHARGE_ENERGY = "total-battery-charge-energy";
96 public static final String CHANNEL_TOTAL_PV_ENERGY = "total-pv-energy";
97 public static final String CHANNEL_TOTAL_FEED_IN_ENERGY = "total-feed-in-energy";
98 public static final String CHANNEL_TOTAL_CONSUMPTION = "total-consumption";
101 public static final String CHANNEL_TODAY_ENERGY = "today-energy";
102 public static final String CHANNEL_TODAY_BATTERY_DISCHARGE_ENERGY = "today-battery-discharge-energy";
103 public static final String CHANNEL_TODAY_BATTERY_CHARGE_ENERGY = "today-battery-charge-energy";
104 public static final String CHANNEL_TODAY_FEED_IN_ENERGY = "today-feed-in-energy";
105 public static final String CHANNEL_TODAY_CONSUMPTION = "today-consumption";
108 protected static final String I18N_KEY_OFFLINE_COMMUNICATION_ERROR_JSON_CANNOT_BE_RETRIEVED = "@text/offline.communication-error.json-cannot-be-retrieved";