API status
Each API can be enabled within the NRGkick App.
JSON API: | |
ModBus API: |
Each API can be enabled within the NRGkick App.
JSON API: | |
ModBus API: |
The NRGkick can be easily discovered on your local network using multicast DNS (mDNS). Upon a discovery in the same subnet, the response provides useful information, including the device's hostname or IP address, serial number, model type, and the status of the available APIs.
To discover your NRGkick, search using the service type _nrgkick._tcp
.
The metadata returned from an mDNS discovery typically looks like this:
serial_number=T2332500000000000S1D2 model_type=NRGkick Gen2 SIM device_name=NRGkick 🔌⚡️ json_api_enabled=1 json_api_version=v1 modbus_api_enabled=1 modbus_api_version=v1
This document provides the basic usage documentation of our local REST JSON API which allows you to interact with device configurations and status informations.
If an authentication is desired, BasicAuth can be enabled within the NRGkick App.
This document provides the basic usage of our local ModBus TCP API which allows you to interact with device configurations and status informations.
All registers are using the little endian format and are request-able with the Unit ID 1.
Addresses must always be read with their corresponding register length. If alignment is maintained, multiple addresses can be read simultaneously.
Endpoint: GET /info
Following response includes identifiers such as the serial number and MAC address, which help uniquely identify the device. It also contains network details like the IP address, SSID, as well as hardware and software versions for various components of the NRGkick. This information is crucial for device management, monitoring, and troubleshooting within a networked environment.
json key | data type (*raw mode) | description |
---|---|---|
general | ||
serial_number | string | Unique Identifier of the NRGkick |
model_type | string | Model type of the NRGkick |
device_name | string | User-defined NRGkick name |
rated_current | uint8 | Max rated current of the NRGkick in Ampere |
connector | ||
phase_count | uint8 | Phase count of the attachment |
max_current | float | Max current of the attachment in Ampere |
type | string / *uint8 | Attachment type 0 - "UNKNOWN", |
serial | string | Attachment serial number |
grid | ||
voltage | uint8 | Detected grid voltage type in Volt |
frequency | uint8 | Detected grid frequency type in Hertz |
phases | string / *uint8 | Connected phases on grid side (Bit 0: L1, Bit 1: L2, Bit 2: L3) |
network | ||
ip_address | string | IP-Address of the NRGkick |
mac_address | string | MAC-Address of the NRGkick |
ssid | string | WiFi name of the currently connected network |
rssi | int8 | Signal strength of the currently connected network in dBm |
cellular (only shown if cellular is available) | ||
imei | string | IMEI of cellular module |
imsi | string | IMSI of cellular SIM |
operator | string | Cellular Operator of current connection |
rssi | int8 | Cellular signal strength of current connection in dBm |
mode | string / *uint8 | Cellular mode of current connection 0 - "UNKNOWN", |
gps (only shown if GPS is available) | ||
latitude | float | Current Latitude |
longitude | float | Current Longitude |
altitude | float | Current Altitude in Meter (only valid if cellular-module version >= B15) |
accuracy | float | Accuracy of GPS position in Meter (only valid if cellular-module version >= B15) |
versions | ||
sw_sm | string | Software version of SmartModule controller |
hw_sm | string | Hardware version of the SmartModule controller |
sw_ma | string | Software version of the Main controller |
hw_ma | string | Hardware Version of the Main controller |
sw_to | string | Software version of the Touch controller |
hw_to | string | Hardware version of the Touch controller |
sw_st | string | Software version of the Star controller |
hw_st | string | Hardware version of the Star controller |
sw_cm | string | Software version of the cellular module (only shown if cellular module is available) |
/info
Loading data...
Endpoint: GET /control
This endpoint is used to both retrieve and set parameters related to the charging behaviour of the NRGkick. The charging power and phase count can be adjusted, and the charge can be limited by energy or paused. This endpoint is crucial for managing the operation of the NRGkick, allowing users to monitor and adjust how the device charges.
json key | data type | description |
---|---|---|
current_set | float | User-set charging current in Ampere Range: 6.0 - rated_current (16.0A / 32.0A) |
charge_pause | bool | Charge pause disabled / enabled 0 - no pause, 1 - pause |
energy_limit | uint32 | User-set energy-limit in Watt-hours 0 - no limit, >0 limit |
phase_count | uint8 | User-set maximum charge phases count Note: Only set-able if phase-switch got enabled within the NRGkick-App. |
Loading data...
A | |
Wh | |
/control?
-
-
Wait for request...
Endpoint: GET /values
This JSON provides detailed energy usage and status data, including total and current energy charged, voltage levels, power metrics across different phases, error codes, and various temperatures for specific components.
json key | data type (*raw mode) | description |
---|---|---|
energy | ||
total_charged_energy | uint64 | Total charged energy overall in Watt-hours |
charged_energy | uint32 | Charged energy during most recent charge in Watt-hours |
powerflow | ||
charging_voltage | float | Average of all phase-voltages in Volt |
charging_current | float | Max current signaled to EV in Ampere |
grid_frequency | float | Current frequency in Hertz |
peak_power | float | Highest power during most recent charge in Watt |
total_active_power | float | Active power of all phases combined in Watt |
total_reactive_power | float | Reactive power of all phases combined in Volt-Ampere-reactive |
total_apparent_power | float | Apparent power of all phases combined in Volt-Ampere |
total_power_factor | float | Power factor of all phases |
voltage (l1, l2, l3) | float | Voltage per phase in Volt |
current (l1, l2, l3, n) | float | Current per phase and neutral conductor in Ampere |
active_power (l1, l2, l3) | float | Active power per phase in Watt |
reactive_power (l1, l2, l3) | float | Reactive power per phase in Volt-Ampere-reactive |
apparent_power (l1, l2, l3) | float | Apparent power per phase in Volt-Ampere |
power_factor (l1, l2, l3) | float | Power factor per phase |
general | ||
charging_rate | float | Charging rate with considered user defined average consumption of the EV in Kilometer per Hour |
vehicle_connect_time | uint32 | Connect time of the most recent charge in Seconds |
vehicle_charging_time | uint32 | Charge time of the most recent charge in Seconds |
status | string / *uint8 | Charging status of the NRGkick / EV 0 - "UNKNOWN", |
charge_permitted | bool | Tells whether if the EV is allowed to charge (1) or not (0) |
relay_state | string / *uint8 | Current switched relais (Bit 0: N, Bit 1: L1, Bit 2: L2, Bit 3: L3) |
charge_count | uint16 | Vehicle plug-in cycle count |
rcd_trigger | string / *uint8 | Signalizes if the RCD got triggered 0 - "NO_FAULT", |
warning_code | string / *uint8 | Shows currently reported warning 0 - "NO_WARNING", |
error_code | string / *uint8 | Shows currently reported error 0 - "NO_ERROR", |
temperatures | ||
housing | float | NRGkick housing temperature in Degree Celsius |
connector_l1 | float | Attachment phase1 temperature in Degree Celsius |
connector_l2 | float | Attachment phase2 temperature in Degree Celsius |
connector_l3 | float | Attachment phase3 temperature in Degree Celsius |
domestic_plug_1 | float | Domestic attachment pin1 temperature in Degree Celsius |
domestic_plug_2 | float | Domestic attachment pin2 temperature in Degree Celsius |
/values
Loading data...
The following table provides required parameters for requesting identifiers such as the serial number and MAC address, which are essential for uniquely identifying the device. It also includes network details like the IP address and SSID, as well as hardware and software versions for various components of the NRGkick. This information is vital for device management, monitoring and troubleshooting within a networked environment.
Please note that all registers listed in this table are read-only.
address | register count | factor | data type | type | function code | description |
---|---|---|---|---|---|---|
general | ||||||
0 | 11 | - | string16 | R | 0x03 | Unique Identifier of the NRGkick |
11 | 16 | - | string16 | R | 0x03 | Model type of the NRGkick |
27 | 8 | - | string16 | R | 0x03 | User-defined NRGkick name |
35 | 1 | 1 | uint16 | R | 0x03 | Max rated current of the NRGkick in Ampere |
connector | ||||||
36 | 1 | 1 | uint16 | R | 0x03 | Phase count of the attachment |
37 | 1 | 10 | uint16 | R | 0x03 | Max current of the attachment in Ampere |
38 | 1 | 1 | uint16 | R | 0x03 | Attachment type 0 - "UNKNOWN", |
39 | 4 | - | string16 | R | 0x03 | Attachment serial number |
grid | ||||||
43 | 1 | 1 | uint16 | R | 0x03 | Detected grid voltage type in Volt |
44 | 1 | 1 | uint16 | R | 0x03 | Detected grid frequency type in Hertz |
45 | 1 | 1 | uint16 | R | 0x03 | Connected phases on grid side (Bit 0: L1, Bit 1: L2, Bit 2: L3) |
network | ||||||
46 | 8 | - | string16 | R | 0x03 | IP-Address of the NRGkick |
54 | 9 | - | string16 | R | 0x03 | MAC-Address of the NRGkick |
63 | 16 | - | string16 | R | 0x03 | WiFi name of the currently connected network |
79 | 1 | 1 | int16 | R | 0x03 | Signal strength of the currently connected network in dBm |
cellular (only request able if cellular is available) | ||||||
80 | 8 | - | string16 | R | 0x03 | IMEI of cellular module |
88 | 8 | - | string16 | R | 0x03 | IMSI of cellular SIM |
96 | 16 | - | string16 | R | 0x03 | Cellular Operator of current connection |
112 | 1 | 1 | int16 | R | 0x03 | Cellular signal strength of current connection in dBm |
113 | 1 | 1 | uint16 | R | 0x03 | Cellular mode of current connection 0 - "UNKNOWN", |
gps (only request able if GPS is available) | ||||||
114 | 2 | 1 | float | R | 0x03 | Current Latitude |
116 | 2 | 1 | float | R | 0x03 | Current Longitude |
118 | 2 | 1 | float | R | 0x03 | Current Altitude in Meter (only valid if cellular-module version >= B15) |
120 | 2 | 1 | float | R | 0x03 | Accuracy of GPS position in Meter (only valid if cellular-module version >= B15) |
versions | ||||||
122 | 8 | - | string16 | R | 0x03 | Software version of SmartModule controller |
130 | 8 | - | string16 | R | 0x03 | Hardware version of the SmartModule controller |
138 | 8 | - | string16 | R | 0x03 | Software version of the Main controller |
146 | 8 | - | string16 | R | 0x03 | Hardware Version of the Main controller |
154 | 8 | - | string16 | R | 0x03 | Software version of the Touch controller |
162 | 8 | - | string16 | R | 0x03 | Hardware version of the Touch controller |
170 | 8 | - | string16 | R | 0x03 | Software version of the Star controller |
178 | 8 | - | string16 | R | 0x03 | Hardware version of the Star controller |
186 | 8 | - | string16 | R | 0x03 | Software version of the cellular module (only shown if cellular module is available) |
The following table provides required parameters for requesting identifiers related to the charging behavior of the NRGkick. Users can adjust the charging power and phase count, limit the charge by energy, or pause the charging process. This endpoint is essential for managing the NRGkick's operation, allowing users to monitor and control the device's charging parameters.
Please note that all registers listed in this table are both readable (using function code 0x03) and writable (for single writes, use function code 0x06; for multiple writes, use function code 0x16).
address | register count | factor | data type | type | function code | description |
---|---|---|---|---|---|---|
194 | 1 | 10 | uint16 | R / W | 0x03 / 0x06 (0x16) | User-set charging current in Ampere Range: 6.0 - rated_current (16.0A / 32.0A) |
195 | 1 | 1 | uint16 | R / W | 0x03 / 0x06 (0x16) | Charge pause disabled / enabled 0 - no pause, 1 - pause |
196 | 2 | 1 | uint32 | R / W | 0x03 / 0x16 | User-set energy-limit in Watt-hours 0 - no limit, >0 limit |
198 | 1 | 1 | uint16 | R / W | 0x03 / 0x06 (0x16) | User-set maximum charge phases count Note: Only set-able if phase-switch got enabled within the NRGkick-App. |
This table provides required parameters for requesting detailed energy usage and status data, including total and current energy charged, voltage levels, power metrics across different phases, error codes, and various temperatures for specific components.
Please note that all registers listed in this table are read-only.
address | register count | factor | data type | type | function code | description |
---|---|---|---|---|---|---|
general | ||||||
199 | 4 | 1 | uint64 | R | 0x03 | Total charged energy overall in Watt-hours |
203 | 2 | 1 | uint32 | R | 0x03 | Charged energy during most recent charge in Watt-hours |
powerflow | ||||||
205 | 1 | 100 | uint16 | R | 0x03 | Average of all phase-voltages in Volt |
206 | 1 | 10 | uint16 | R | 0x03 | Max current signaled to EV in Ampere |
207 | 1 | 100 | uint16 | R | 0x03 | Current frequency in Hertz |
208 | 2 | 1000 | int32 | R | 0x03 | Highest power during most recent charge in Watt |
210 | 2 | 1000 | int32 | R | 0x03 | Active power of all phases combined in Watt |
212 | 2 | 1000 | int32 | R | 0x03 | Reactive power of all phases combined in Volt-Ampere-reactive |
214 | 2 | 1000 | uint32 | R | 0x03 | Apparent power of all phases combined in Volt-Ampere |
216 | 1 | 1000 | int16 | R | 0x03 | Power factor of all phases combined |
217 | 1 | 100 | uint16 | R | 0x03 | Voltage of phase L1 in Volt |
218 | 1 | 100 | uint16 | R | 0x03 | Voltage of phase L2 in Volt |
219 | 1 | 100 | uint16 | R | 0x03 | Voltage of phase L3 in Volt |
220 | 1 | 1000 | uint16 | R | 0x03 | Current of phase L1 in Ampere |
221 | 1 | 1000 | uint16 | R | 0x03 | Current of phase L2 in Ampere |
222 | 1 | 1000 | uint16 | R | 0x03 | Current of phase L3 in Ampere |
223 | 1 | 1000 | uint16 | R | 0x03 | Current of neutral conductor in Ampere |
224 | 2 | 1000 | int32 | R | 0x03 | Active Power of phase L1 in Watt |
226 | 2 | 1000 | int32 | R | 0x03 | Active Power of phase L2 in Watt |
228 | 2 | 1000 | int32 | R | 0x03 | Active Power of phase L3 in Watt |
230 | 2 | 1000 | int32 | R | 0x03 | Reactive power of phase L1 in Volt-Ampere-reactive |
232 | 2 | 1000 | int32 | R | 0x03 | Reactive power of phase L2 in Volt-Ampere-reactive |
234 | 2 | 1000 | int32 | R | 0x03 | Reactive power of phase L3 in Volt-Ampere-reactive |
236 | 2 | 1000 | uint32 | R | 0x03 | Apparent power of phase L1 in Volt-Ampere |
238 | 2 | 1000 | uint32 | R | 0x03 | Apparent power of phase L2 in Volt-Ampere |
240 | 2 | 1000 | uint32 | R | 0x03 | Apparent power of phase L3 in Volt-Ampere |
242 | 1 | 1000 | int16 | R | 0x03 | Power factor of phase L1 |
243 | 1 | 1000 | int16 | R | 0x03 | Power factor of phase L2 |
244 | 1 | 1000 | int16 | R | 0x03 | Power factor of phase L3 |
general | ||||||
245 | 2 | 1 | float | R | 0x03 | Charging rate with considered user defined average consumption of the EV in Kilometer per Hour |
247 | 2 | 1 | uint32 | R | 0x03 | Connect time of the most recent charge in Seconds |
249 | 2 | 1 | uint32 | R | 0x03 | Charge time of the most recent charge in Seconds |
251 | 1 | 1 | uint16 | R | 0x03 | Charging status of the NRGkick / EV 0 - "UNKNOWN", |
252 | 1 | 1 | uint16 | R | 0x03 | Tells whether if the EV is allowed to charge (1) or not (0) |
253 | 1 | 1 | uint16 | R | 0x03 | Current switched relais (Bit 0: N, Bit 1: L1, Bit 2: L2, Bit 3: L3) |
254 | 1 | 1 | uint16 | R | 0x03 | Vehicle plug-in cycle count |
255 | 1 | 1 | uint16 | R | 0x03 | Signalizes if the RCD got triggered 0 - "NO_FAULT", |
256 | 1 | 1 | uint16 | R | 0x03 | Shows currently reported warning 0 - "NO_WARNING", |
257 | 1 | 1 | uint16 | R | 0x03 | Shows currently reported error 0 - "NO_ERROR", |
temperatures | ||||||
258 | 1 | 100 | int16 | R | 0x03 | NRGkick housing temperature in Degree Celsius |
259 | 1 | 100 | int16 | R | 0x03 | Attachment phase1 temperature in Degree Celsius |
260 | 1 | 100 | int16 | R | 0x03 | Attachment phase2 temperature in Degree Celsius |
261 | 1 | 100 | int16 | R | 0x03 | Attachment phase3 temperature in Degree Celsius |
262 | 1 | 100 | int16 | R | 0x03 | Domestic attachment pin1 temperature in Degree Celsius |
263 | 1 | 100 | int16 | R | 0x03 | Domestic attachment pin2 temperature in Degree Celsius |
The mDNS discovery feature and local API access are available starting with SmartModule version 4.0.0.0. Ensure your NRGkick is running the correct firmware version to utilize these features.