OpenData API
1️⃣ 介绍
OpenData是为基于WiFi的INDEVOLT物联网设备设计的轻量级通信框架。设备通过WiFi接入本地网络,支持数据主动推送与外部查询响应。
核心功能
- 设备数据获取:实时拉取设备数据。
- 设备控制:动态调整设备参数及配置。
使用场景
-
接收外部HTTP查询请求
2️⃣ 准备
步骤一、安装工具
步骤二、开启 API
在默认状态下设备API功能未开启,需要开启后才能使用API。OpenData提供以下三种方式:
- HTTP
- HTTP Digest
- HTTPS (目前不支持,敬请期待)
您可在 INDEVOLT App 中设置本地API:
- 设备已联网:推荐使用 云端设置,操作更简单
- 设备暂未联网:可通过本地蓝牙设置,直接与设备连接即可完成配置
- 云端
- 本地蓝牙
步骤三、查看固件版本
若设备版本低于表格所列版本,请更新设备固件。
Model Applicable firmware version BK1600 / BK1600 Ultra V1.3.0A_R006.072_M4848_00000039 SolidFlex 2000 / PowerFlex 2000 CMS:V1406.07.002E 请在 INDEVOLT App 中查看设备固件版本。
- 云端
- 本地蓝牙
步骤四、获取 IP 地址
以下三种方法任选其一:
🧩方法 1:路由器管理后台查询;
🧩方法 2:App设备设置界面查看;
![]()
![]()
🧩方法 3: UDP广播获取IP
(1) 确保设备接入的WiFi网络与电脑处于同一局域网。
(2) 打开网络调试工具。
(3) 选择 UDP 协议。
(4) 选择 Local Host Addr。
(5) 设置Local Host Port为10000。
(6) 单击 Open。![]()
(7) 在Remote设置广播地址及端口:255.255.255.255:8099。
![]()
(8) 在消息框里填写AT指令:AT+IGDEVICEIP。
(9) 单击 Send。![]()
(10) 同一局域网内的INDEVOLT设备会回复其IP地址和SN号。
![]()
3️⃣ HTTP使用说明
3.1 请求结构
请求方法
| 方法 | 说明 |
|---|---|
| GET | 请求服务器返回指定资源。 |
| POST | 请求服务器执行特定操作。 |
请求地址
http://{IP_ADDRESS}:8080/rpc/{API}
其中:
{IP_ADDRESS}:设备的IP地址。{API}:调用的HTTP API。
请求示例
- 获取设备数据:
POST http://192.168.31.213:8080/rpc/Indevolt.GetData?config={"t":[1664,1665]}
cURL 命令示例
- 获取电池 SOC:
curl -g -X POST -H "Content-Type: application/json" "http://192.168.1.75:8080/rpc/Indevolt.GetData?config={\"t\":[6002]}"
3.2 请求频率限制
为保障系统稳定性,所有 HTTP API 均受以下限制:
| 类型 | 限制 |
|---|---|
| 建议请求间隔 | ≥ 5 秒 |
| 最小支持间隔 | 1 秒 |
3.3 错误码
| 状态码 | 描述 | 说明 |
|---|---|---|
| 400 | Bad Request | 服务器无法理解请求格式;客户端需修改请求后重试。 |
| 401 | Unauthorized | 请求需要身份验证;客户端需提供有效凭证。 |
| 403 | Forbidden | 服务器理解请求,但拒绝执行,通常由于权限不足。 |
| 404 | Not Found | 服务器找不到请求的资源,可能资源不存在或已被删除。 |
| 405 | Method Not Allowed | 请求的方法与资源不兼容,例如对只读资源执行写操作。 |
| 408 | Request Timeout | 服务器等待请求超时,客户端可稍后重试。 |
| 409 | Conflict | 请求与资源的当前状态冲突,例如多用户同时编辑同一资源。 |
| 410 | Gone | 请求的资源已被永久删除且无新的地址。 |
| 500 | Internal Server Error | 服务器遇到未知错误,无法完成请求。 |
| 501 | Not Implemented | 服务器不支持请求的方法,无法执行。 |
| 502 | Bad Gateway | 作为网关或代理的服务器从上游服务器收到无效响应。 |
| 503 | Service Unavailable | 服务器当前无法处理请求,可能由于过载或维护。 |
| 504 | Gateway Timeout | 作为网关或代理的服务器未能及时从上游服务器收到响应。 |
| 505 | HTTP Version Not Supported | 服务器不支持请求使用的 HTTP 版本。 |
4️⃣ HTTP Digest
Digest认证技术用于网络通信中验证用户身份,避免密码明文传输。
在HTTP+Digest模式下:
- 首次使用或恢复出厂设置的设备需要先使用
User.SetConfig接口修改默认密码。 - 修改密码成功后,可使用其他接口。
工具
- ASCII → 十六进制转换器
- 十六进制 → Base64 转换器
- AES-GCM 加密工具
修改密码示例
-
将新密码、原始密码与随机数转换为十六进制。
ASCII 字符串 十六进制 新密码 qwertyui 71 77 65 72 74 79 75 69 原始密码 qazwsxed 71 61 7a 77 73 78 65 64 00 00 00 00 00 00 00 00
(补齐至 16 字节)随机数 123456 31 32 33 34 35 36 00 00 00 00 00 00
(补齐至 12 字节) -
使用 AES-GCM 工具加密,在工具中填写对应信息进行加密。
-
将密文和 Tag 转换为 Base64。
十六进制 Base64 密文 4e b2 90 67 54 02 d4 c4 TrKQZ1QC1MQ= Tag cf 0b d0 4e 37 a0 e6 bb cb 74 1b cb ce ab 72 9a zwvQTjeg5rvLdBvLzqtymg== -
完成 Digest Authentication 字段并发送
User.SetConfig请求。POST
http://{IP_ADDRESS}:8080/rpc/User.SetConfig?config={"Password":"{PASSWORD}"}其中:
{IP_ADDRESS}:设备 IP 地址。{PASSWORD}:经过 AES128-GCM 加密后并转换为 Base64 的密文。
| 参数名 | 类型 | 描述 | 是否必填 |
|---|---|---|---|
| Username | String | 默认值 opend | 必填 |
| Password | String | 默认设备密钥。 - 使用 默认密码 只能请求 User.SetConfig 接口修改密码。- 修改密码后,使用 新密码 可以调用其他接口。 | 必填 |
| Realm | String | - 调用 User.SetConfig 修改密码时,需要提供 AES128-GCM Tag。- 调用 其他接口 时,可以使用随机值。 | 必填 |
| Nonce | Digest 默认类型 | 可使用随机值 | 必填 |
| Algorithm | Digest 默认类型 | MD5 | 必填 |
| qop | Digest 默认类型 | auth | 必填 |
| Nonce Count | Digest 默认类型 | 可使用随机值 | 必填 |
| Client Nonce | Digest 默认类型 | 可使用随机值 | 必填 |
5️⃣ API
| 组件 | 说明 |
|---|---|
Indevolt | 读取 INDEVOLT 设备数据,控制设备。 |
Sys | 获取设备 CMS (Communication Management System) 信息。 |
6️⃣ Indevolt
Indevolt 是微储设备数据交互接口,用于读取设备运行数据和配置参数,以及向设备下发控制指令。
Indevolt.GetData:读取设备运行数据或配置参数。Indevolt.SetData:修改设备配置参数或执行控制操作。
适用设备
- BK1600 / BK1600 Ultra
- SolidFlex 2000 / PowerFlex 2000
6.1 Indevolt.GetData
读取设备运行数据或配置参数。
/rpc/Indevolt.GetDatacurl -g -X POST -H "Content-Type: application/json" "http://192.168.31.213:8080/rpc/Indevolt.GetData?config={\"t\":[1664,1665]}"
{
"1664":100,
"1665":251
}
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
config | Object | 是 | 数据读取配置 |
config 对象说明
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
t | Array | 是 | 待读取的 cJSON 点位列表 |
返回参数
JSON 格式的设备数据,其中:
- Key:cJSON 点位
- Value:对应数据点的当前值
cJSON 点位
以下 cJSON 点位用于读取设备运行数据或配置参数。不同设备型号支持的 cJSON 点位存在差异,请参考对应设备型号的数据点列表。
- SolidFlex 2000 / PowerFlex 2000
- BK1600 / BK1600 Ultra
| cJSON 点位 | cJSON 值类型 | 单位 | 说明 | Enum 定义 | API | 注释 |
|---|---|---|---|---|---|---|
| SN | ||||||
| 0 | String | Device SN | Indevolt.GetData | |||
| Firmware Version Information | ||||||
| 1118 | String | PG2000Series EMS | Indevolt.GetData | |||
| 1109 | String | PG2000Series BMS-MB | Indevolt.GetData | |||
| 1119 | String | PG2000Series PCS | Indevolt.GetData | |||
| 1120 | String | PG2000Series DCDC | Indevolt.GetData | |||
| 1136 | String | SFA/PFA DCDC1 | Indevolt.GetData | |||
| 1137 | String | SFA/PFA BMS1 | Indevolt.GetData | |||
| 1138 | String | SFA/PFA DCDC2 | Indevolt.GetData | |||
| 1139 | String | SFA/PFA BMS2 | Indevolt.GetData | |||
| 1140 | String | SFA/PFA DCDC3 | Indevolt.GetData | |||
| 1141 | String | SFA/PFA BMS3 | Indevolt.GetData | |||
| 1142 | String | SFA/PFA DCDC4 | Indevolt.GetData | |||
| 1143 | String | SFA/PFA BMS4 | Indevolt.GetData | |||
| 1098 | String | SFA/PFA DCDC5 | Indevolt.GetData | |||
| 1099 | String | SFA/PFA BMS5 | Indevolt.GetData | |||
| System Operating Information | ||||||
| 7101 | Enum | Working Mode | 1: Self-consumed Prioritized 4: Real-time Control 5: Charge/Discharge Schedule | Indevolt.GetData | ||
| 142 | Num | kWh | Rated Capacity | Indevolt.GetData | ||
| 2618 | Num | Grid Charging | 1000: Disable 1001: Enable | Indevolt.GetData | ||
| 11009 | Num | W | Inverter Input Limit | Indevolt.GetData | ||
| 2101 | Num | W | Total AC Input Power | Indevolt.GetData | ||
| 2108 | Num | W | Total AC Output Power | Indevolt.GetData | ||
| 11010 | Num | W | Feed-in Power Limit | Indevolt.GetData | ||
| 11011 | Num | W | Max AC Output Power | Indevolt.GetData | ||
| 680 | Num | Bypass | 0: Disable 1: Enable | Indevolt.GetData | ||
| 11039 | Num | Bypass mode | 0: Eps 1: M-Inv | Indevolt.GetData | Automatically switch according to forward and reverse current | |
| 6105 | Num | % | Backup SOC | Indevolt.GetData | ||
| 7171 | Num | Light | 0: Disable 1: Enable | Indevolt.GetData | ||
| 8646 | Num | Day | Battery Calibration: Cycle | 0-60 0: OFF | Indevolt.GetData | Operating time without full charge |
| 8647 | Num | Time | Battery Calibration: Start Time | DEC-->HEX H: hour L: minute | Indevolt.GetData | e.g.: 256-->0100 01(HEX-H)-->01h 00(HEX-L)-->00min |
| 2802 | Num | W | Battery Calibration: Charging power (AC) | Indevolt.GetData | ||
| Cluster Information | ||||||
| 606 | Enum | Master-slave identification | 1000: Master 1001: Slave 1002: None | Indevolt.GetData | ||
| Bypass Power | ||||||
| 667 | Float | W | Bypass power | Indevolt.GetData | Real-time power flowing through the bypass path. - Grid-tied: power may come from the microinverter or be supplied directly to loads - Off-grid: power is directly supplied to loads | |
| Electrical Energy Information | ||||||
| 2107 | Num | kWh | Total AC Input Energy | Indevolt.GetData | Total energy imported from the grid. This energy can be used to charge the battery or directly supply loads through bypass. | |
| 2104 | Num | kWh | Total AC Output Energy | Indevolt.GetData | Comprehensive electrical energy, including (DC+AC+Bypass) | |
| 11035 | Num | Wh | Daily bypass M-inv input energy | Indevolt.GetData | Daily energy coming from the microinverter. This is only available in grid-tied mode, when the system is connected to a microinverter. | |
| 11034 | Num | Wh | Total bypass M-inv input energy | Indevolt.GetData | Total energy coming from the microinverter. This is only available in grid-tied mode, when the system is connected to a microinverter. | |
| 11037 | Num | KWh | Daily off-grid bypass output energy | Indevolt.GetData | Daily electrical energy of off - grid bypass discharge | |
| 2105 | Num | KWh | Total off-grid bypass output energy | Indevolt.GetData | Total electrical energy of off-grid bypass discharge | |
| 9285 | Num | Wh | Daily bypass output energy | Indevolt.GetData | Daily electrical energy of bypass discharge (grid-connected + off-grid) | |
| 9284 | Num | Wh | Total bypass output energy | Indevolt.GetData | Total electrical energy of bypass discharge (grid-connected + off-grid) | |
| 1502 | Num | kWh | Daily PV Generation | Indevolt.GetData | ||
| 1505 | Num | Wh | Cumulative Production | Indevolt.GetData | ||
| 6004 | Num | kWh | Battery Daily Charging Energy | Indevolt.GetData | ||
| 6005 | Num | kWh | Battery Daily Discharging Energy | Indevolt.GetData | ||
| 6006 | Num | kWh | Battery Total Charging Energy | Indevolt.GetData | ||
| 6007 | Num | kWh | Battery Total Discharging Energy | Indevolt.GetData | ||
| Electricity Meter Status | ||||||
| 7120 | Enum | Meter Connection Status | 1000: Enable 1001: Disable | Indevolt.GetData | ||
| 11016 | Float | W | Meter Power | Indevolt.GetData | ||
| Grid Information | ||||||
| 2600 | Num | V | Grid Voltage | Indevolt.GetData | ||
| 2612 | Num | Hz | Grid Frequency | Indevolt.GetData | ||
| Battery Pack Operating Parameters | ||||||
| 6001 | Enum | Battery Charge/Discharge State | 1000: Static 1001: Charging 1002: Discharging | Indevolt.GetData | ||
| 6000 | Num | W | Battery Power | Indevolt.GetData | ||
| 6002 | Num | % | Battery SOC Total | Indevolt.GetData | ||
| 9008 | String | Batt SN-MB | Indevolt.GetData | |||
| 9000 | Num | % | Batt SOC-MB | Indevolt.GetData | ||
| 9004 | Num | V | Batt V-MB | Indevolt.GetData | ||
| 9013 | Num | A | Batt I-MB | Indevolt.GetData | ||
| 9012 | Num | ℃ | Batt Temp-MB | Indevolt.GetData | ||
| 9009 | Num | V | Batt Cell1 V-MB | Indevolt.GetData | ||
| 9011 | Num | V | Batt Cell2 V-MB | Indevolt.GetData | ||
| 9032 | String | Batt SN-Pack1 | Indevolt.GetData | |||
| 9016 | Num | % | Batt SOC-Pack1 | Indevolt.GetData | ||
| 9020 | Num | V | Batt V-Pack1 | Indevolt.GetData | ||
| 19173 | Num | A | Batt I-Pack1 | Indevolt.GetData | ||
| 9030 | Num | ℃ | Batt Temp-Pack1 | Indevolt.GetData | ||
| 9021 | Num | V | Batt Cell1 V-Pack1 | Indevolt.GetData | ||
| 9023 | Num | V | Batt Cell2 V-Pack1 | Indevolt.GetData | ||
| 9051 | String | Batt SN-Pack2 | Indevolt.GetData | |||
| 9035 | Num | % | Batt SOC-Pack2 | Indevolt.GetData | ||
| 9039 | Num | V | Batt V-Pack2 | Indevolt.GetData | ||
| 19174 | Num | A | Batt I-Pack2 | Indevolt.GetData | ||
| 9049 | Num | ℃ | Batt Temp-Pack2 | Indevolt.GetData | ||
| 9040 | Num | V | Batt Cell1 V-Pack2 | Indevolt.GetData | ||
| 9042 | Num | V | Batt Cell2 V-Pack2 | Indevolt.GetData | ||
| 9070 | String | Batt SN-Pack3 | Indevolt.GetData | |||
| 9054 | Num | % | Batt SOC-Pack3 | Indevolt.GetData | ||
| 9058 | Num | V | Batt V-Pack3 | Indevolt.GetData | ||
| 19175 | Num | A | Batt I-Pack3 | Indevolt.GetData | ||
| 9068 | Num | ℃ | Batt Temp-Pack3 | Indevolt.GetData | ||
| 9059 | Num | V | Batt Cell1 V-Pack3 | Indevolt.GetData | ||
| 9061 | Num | V | Batt Cell2 V-Pack3 | Indevolt.GetData | ||
| 9165 | Num | Batt SN-Pack4 | Indevolt.GetData | |||
| 9149 | Num | % | Batt SOC-Pack4 | Indevolt.GetData | ||
| 9153 | Num | V | Batt V-Pack4 | Indevolt.GetData | ||
| 19176 | Num | A | Batt I-Pack4 | Indevolt.GetData | ||
| 9163 | Num | ℃ | Batt Temp-Pack4 | Indevolt.GetData | ||
| 9154 | Num | V | Batt Cell1 V-Pack4 | Indevolt.GetData | ||
| 9156 | Num | V | Batt Cell2 V-Pack4 | Indevolt.GetData | ||
| 9218 | String | Batt SN-Pack5 | Indevolt.GetData | |||
| 9202 | Num | % | Batt SOC-Pack5 | Indevolt.GetData | ||
| 9206 | Num | V | Batt V-Pack5 | Indevolt.GetData | ||
| 19177 | Num | A | Batt I-Pack5 | Indevolt.GetData | ||
| 9216 | Num | ℃ | Batt Temp-Pack5 | Indevolt.GetData | ||
| 9219 | Num | V | Batt Cell1 V-Pack5 | Indevolt.GetData | ||
| 9222 | Num | V | Batt Cell2 V-Pack5 | Indevolt.GetData | ||
| PV Operating Parameters | ||||||
| 1501 | Num | W | Total DC Output Power | Indevolt.GetData | ||
| 1632 | Num | A | DC Input Current 1 | Indevolt.GetData | ||
| 1600 | Num | V | DC Input Voltage 1 | Indevolt.GetData | ||
| 1664 | Num | W | DC Input Power 1 | Indevolt.GetData | ||
| 1633 | Num | A | DC Input Current 2 | Indevolt.GetData | ||
| 1601 | Num | V | DC Input Voltage 2 | Indevolt.GetData | ||
| 1665 | Num | W | DC Input Power 2 | Indevolt.GetData | ||
| 1634 | Num | A | DC Input Current 3 | Indevolt.GetData | ||
| 1602 | Num | V | DC Input Voltage 3 | Indevolt.GetData | ||
| 1666 | Num | W | DC Input Power 3 | Indevolt.GetData | ||
| 1635 | Num | A | DC Input Current 4 | Indevolt.GetData | ||
| 1603 | Num | V | DC Input Voltage 4 | Indevolt.GetData | ||
| 1667 | Num | W | DC Input Power 4 | Indevolt.GetData | ||
| cJSON 点位 | cJSON 值类型 | 单位 | 说明 | Enum 定义 | API | 注释 |
|---|---|---|---|---|---|---|
| SN | ||||||
| 0 | String | Device SN | Indevolt.GetData | |||
| Firmware Version Information | ||||||
| 1118 | String | BK1600Series EMS | Indevolt.GetData | |||
| 1107 | String | BK1600Series BMS | Indevolt.GetData | |||
| 1119 | String | BK1600Series PCS | H_HEX-->DEC + L_HEX-->DEC | Indevolt.GetData | ||
| 311 | String | BK1600Series MPPT | Indevolt.GetData | |||
| System Operating Information | ||||||
| 142 | Num | KWh | Rated capacity | Indevolt.GetData | ||
| 2618 | Num | Grid Charging | 1000: Disable 1001: Enable | Indevolt.GetData | ||
| 2617 | Num | W | Feed-in Power Limit | Indevolt.GetData | ||
| 4 | Num | W | Max AC Output Power | Indevolt.GetData | ||
| 2619 | Num | W | Max AC Input Power | Indevolt.GetData | ||
| 2101 | Num | W | Total AC Input Power | Indevolt.GetData | ||
| 2107 | Num | KWh | Total AC Input Energy | Indevolt.GetData | ||
| 2108 | Num | W | Total AC Output Power | Indevolt.GetData | ||
| 680 | Enum | Bypass | 0: Disable 1: Enable | Indevolt.GetData | ||
| 7170 | Enum | Bypass mode | 0: Eps 1: M-Inv | Indevolt.GetData | Automatically switch according to forward and reverse current. | |
| 7101 | Enum | Working mode | 0: Outdoor Portable 1: Self-consumed Prioritized 4: Real-Time Control 5: Charge/Discharge Schedule | Indevolt.GetData | ||
| 1502 | Num | KWh | Daily Production | Indevolt.GetData | ||
| 1505 | Num | 0.001kwh | Cumulative Production | Indevolt.GetData | ||
| 6105 | Num | % | Backup SOC | Indevolt.GetData | ||
| 6004 | Num | KWh | Battery Daily Charging Energy | Indevolt.GetData | ||
| 6005 | Num | KWh | Battery Daily Discharging Energy | Indevolt.GetData | ||
| 6006 | Num | KWh | Battery Total Charging Energy | Indevolt.GetData | ||
| 6007 | Num | KWh | Battery Total Discharging Energy | Indevolt.GetData | ||
| 7120 | Enum | Meter Connection Status | 1000:ON 1001:OFF | Indevolt.GetData | ||
| 21028 | Num | W | Meter Power | Indevolt.GetData | ||
| Bypass power (Not applicable to BK1600) | ||||||
| 667 | Num | W | Bypass power | Indevolt.GetData | ||
| Battery Pack Operating Parameters | ||||||
| 6001 | Enum | Battery Charge/Discharge State | 1000: Static 1001: Charging 1002: Discharging | Indevolt.GetData | ||
| 6000 | Num | W | Battery Power | Indevolt.GetData | ||
| 6002 | Num | % | Battery SOC Total | Indevolt.GetData | ||
| 7620 | Num | ℃ | Batt Temp | Indevolt.GetData | ||
| 10112 | Num | V | CELL1 Voltage | Indevolt.GetData | ||
| 10113 | Num | V | CELL2 Voltage | Indevolt.GetData | ||
| 10114 | Num | V | CELL3 Voltage | Indevolt.GetData | ||
| 10115 | Num | V | CELL4 Voltage | Indevolt.GetData | ||
| 10116 | Num | V | CELL5 Voltage | Indevolt.GetData | ||
| 10117 | Num | V | CELL6 Voltage | Indevolt.GetData | ||
| 10118 | Num | V | CELL7 Voltage | Indevolt.GetData | ||
| 10119 | Num | V | CELL8 Voltage | Indevolt.GetData | ||
| 10120 | Num | V | CELL9 Voltage | Indevolt.GetData | ||
| 10121 | Num | V | CELL10 Voltage | Indevolt.GetData | ||
| 10122 | Num | V | CELL11 Voltage | Indevolt.GetData | ||
| PV Operating Parameters | ||||||
| 1501 | Num | W | Total DC Output Power | Indevolt.GetData | ||
| 1632 | Num | A | DC Input Current 1 | Indevolt.GetData | ||
| 1600 | Num | V | DC Input Voltage 1 | Indevolt.GetData | ||
| 1664 | Num | W | DC Input Power 1 | Indevolt.GetData | ||
| 1633 | Num | A | DC Input Current 2 | Indevolt.GetData | ||
| 1601 | Num | V | DC Input Voltage 2 | Indevolt.GetData | ||
| 1665 | Num | W | DC Input Power 2 | Indevolt.GetData | ||
6.2 Indevolt.SetData
修改设备配置参数或向设备发送控制指令。
/rpc/Indevolt.SetDatacurl -g -X POST -H "Content-Type: application/json" "http://192.168.31.213:8080/rpc/Indevolt.SetData?config={\"f\":16,\"t\":47005,\"v\":[4]}"
{
"result": true
}
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
config | Object | 是 | 数据写入配置 |
config 对象说明
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
f | Number | 是 | 功能码,固定为 16 |
t | Number | 是 | 待写入的 cJSON 点位 |
v | Array | 是 | 写入值,请参考对应点位的 值 说明 |
返回参数
| 参数名 | 类型 | 说明 |
|---|---|---|
result | Boolean | true: success; false: failure. |
示例
-
设置实时控制模式
curl -g -X POST -H "Content-Type: application/json" "http://192.168.31.213:8080/rpc/Indevolt.SetData?config={\"f\":16,\"t\":47005,\"v\":[4]}" -
设置实时控制模式下的放电状态、功率和 SOC
curl -g -X POST -H "Content-Type: application/json" "http://192.168.31.213:8080/rpc/Indevolt.SetData?config={\"f\":16,\"t\":47015,\"v\":[2,700,5]}"
cJSON 点位
不同设备型号支持的 cJSON 点位 t 存在差异,不同点位对应的 v 格式和含义也不同,请参考对应设备型号的列表。
- SolidFlex 2000 / PowerFlex 2000
- BK1600 / BK1600 Ultra
| cJSON 点位 | cJSON 值类型 | 单位 | 说明 | 值 | API |
|---|---|---|---|---|---|
| 47005 | Enum | Mode Setting | 1: Self-consumed Prioritized 4: Real-time control 5: Charge/Discharge Schedule | Indevolt.SetData | |
| 47015 | UINT | State Setting (Only available in real-time control) | 0: Standby 1: Charging 2: Discharging | Indevolt.SetData | |
| 47016 | INT | W | Power Setting (Only available in real-time control) | MAX Charging: 50–2400 MAX Discharging: 50–2400 | Indevolt.SetData |
| 47017 | UINT | % | SOC Setting (Only available in real-time control) | 5-100 | Indevolt.SetData |
| 1147 | INT | W | Max AC Output Power Setting | 50-2400 | Indevolt.SetData |
| 1146 | INT | W | Feed-in Power Limit Setting | 50-2400 | Indevolt.SetData |
| 1143 | UINT | Grid Charging Setting | 0: Disable 1: Enable | Indevolt.SetData | |
| 1138 | INT | W | Inverter Input Limit Setting | 100-2400 | Indevolt.SetData |
| 1 | Enum | Load Setting | 1: Smart Plug 2: Meter 3: Key Load 4: Custom | Indevolt.SetData | |
| 7266 | Enum | Bypass Setting | 0: Disable 1: Enable | Indevolt.SetData | |
| 1142 | INT | % | Backup SOC Setting | Indevolt.SetData | |
| 7265 | Enum | Light Setting | 0: Disable 1: Enable | Indevolt.SetData |
| cJSON 点位 | cJSON 值类型 | 单位 | 说明 | 值 | API |
|---|---|---|---|---|---|
| 47005 | Enum | Mode Setting | 0: Outdoor Portable 1: Self-consumed Prioritized 4: Real-Time Control 5: Charge/Discharge Schedule | Indevolt.SetData | |
| 47015 | Enum | State Setting (Only available in real-time control) | 0: Standby 1: Charging 2: Discharging | Indevolt.SetData | |
| 47016 | Num | W | Power Setting (Only available in real-time control) | 50-1200 | Indevolt.SetData |
| 47017 | Num | % | SOC Setting (Only available in real-time control) | 5-100 | Indevolt.SetData |
实时控制模式下,可一次性写入状态、功率、SOC值以控制设备充放电。
7️⃣ Sys
Sys 用于获取设备基本信息和系统状态。
适用设备
- BK1600 / BK1600 Ultra
- SolidFlex 2000 / PowerFlex 2000
Sys.GetConfig
获取设备当前配置信息,包括设备型号、序列号、固件版本等。
/rpc/Sys.GetConfigcurl "http://192.168.31.213:8080/rpc/Sys.GetConfig"
{
"device": {
"hostname": "",
"timezone": 480,
"type": "CMS-SF2000",
"sn": "",
"mac": "7C3E82EF997F",
"fw": "T1.4.06_ROOD. 072_M4801_0000002C",
"f_ver": "T1406.07.002C",
"p_ver": "VOD.00.08",
"time": "2025-12-18 09:44:57",
"time_stamp": 1766051097,
"run_time": 2244
}
}
返回参数
| 参数名 | 类型 | 说明 |
|---|---|---|
device | Object | 设备信息 |
device说明
| 参数名 | 类型 | 说明 |
|---|---|---|
hostname | String | Device name |
timezone | Number | Timezone |
type | String | Device model |
sn | String | Device serial number |
mac | String | Device MAC address |
fw | String | Device firmware version |
f_ver | String | CMS version |
p_ver | String | Pfile version |
time | String | Current time |
time_stamp | Number | Current timestamp (in seconds) |
run_time | Number | Device runtime (in seconds) |
8️⃣ WIFI
WiFi 用于获取设备当前的 Wi-Fi 连接状态。
适用设备
- BK1600 / BK1600 Ultra
WiFi.GetStatus
获取设备当前 Wi-Fi ,包括 IP 地址、Wi-Fi 名称和信号强度。
/rpc/WiFi.GetStatuscurl "http://192.168.0.7:8080/rpc/WiFi.GetStatus"
{
"src": "",
"params": {
"sta_ip": "192.168.0.7",
"ssid": "IGEN_GUEST_2.4G",
"rssi": 100
}
}
返回参数
| 参数名 | 类型 | 说明 |
|---|---|---|
src | String | 设备序列号(SN) |
params | Object | Wi-Fi 状态信息 |
params 说明
| 参数名 | 类型 | 说明 |
|---|---|---|
sta_ip | String | 设备当前 IP 地址 |
ssid | String | 当前连接的 Wi-Fi 名称 |
rssi | Number | Wi-Fi 信号强度百分比,范围 0~100,数值越大表示信号越好 |
9️⃣ FAQ
Q: HTTP 访问返回 401 Unauthorized。
- 检查 Digest 认证的用户名和密码是否正确。
- 首次使用/恢复出厂设置的设备只支持访问指定接口
User.SetConfig。详情请见 Digest 认证,修改密码成功后用新密码认证即可正常使用其他接口。
Q: 发送广播指令后设备未返回 IP 地址。
OpenData API尚未开启,导致该功能不可用。详情请见开启 API。













