mirror of
https://github.com/openshwprojects/OpenBK7231T_App.git
synced 2026-03-13 02:37:56 +01:00
add Temperature_div100 for BMP280
This commit is contained in:
@@ -79,6 +79,6 @@ void BMP280_OnEverySecond() {
|
||||
|
||||
void BMP280_AppendInformationToHTTPIndexPage(http_request_t* request)
|
||||
{
|
||||
hprintf255(request, "<h2>BMP280 Temperature=%f C, Pressure=%f hPa</h2>", g_temperature*0.01f, g_pressure*0.01f);
|
||||
hprintf255(request, "<h2>BMP280 Temperature=%.2f C, Pressure=%.2f hPa</h2>", g_temperature*0.01f, g_pressure*0.01f);
|
||||
}
|
||||
|
||||
|
||||
@@ -41,6 +41,8 @@ bool CHANNEL_IsTemperature(int type) {
|
||||
return true;
|
||||
if (type == ChType_Temperature_div10)
|
||||
return true;
|
||||
if (type == ChType_Temperature_div100)
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
bool CHANNEL_GetGenericOfType(float *out, bool (*checker)(int type)) {
|
||||
|
||||
@@ -418,6 +418,26 @@ int http_fn_index(http_request_t* request) {
|
||||
hprintf255(request, "Temperature Channel %s value %.2f C<br>", CHANNEL_GetLabel(i), fValue);
|
||||
poststr(request, "</td></tr>");
|
||||
|
||||
}
|
||||
else if (channelType == ChType_Pressure_div100) {
|
||||
|
||||
iValue = CHANNEL_Get(i);
|
||||
fValue = iValue * 0.01f;
|
||||
|
||||
poststr(request, "<tr><td>");
|
||||
hprintf255(request, "Pressure Channel %s value %.2f hPa<br>", CHANNEL_GetLabel(i), fValue);
|
||||
poststr(request, "</td></tr>");
|
||||
|
||||
}
|
||||
else if (channelType == ChType_Temperature_div100) {
|
||||
|
||||
iValue = CHANNEL_Get(i);
|
||||
fValue = iValue * 0.01f;
|
||||
|
||||
poststr(request, "<tr><td>");
|
||||
hprintf255(request, "Temperature Channel %s value %.2f C<br>", CHANNEL_GetLabel(i), fValue);
|
||||
poststr(request, "</td></tr>");
|
||||
|
||||
}
|
||||
else if (channelType == ChType_Humidity) {
|
||||
|
||||
@@ -2038,6 +2058,15 @@ void doHomeAssistantDiscovery(const char* topic, http_request_t* request) {
|
||||
discoveryQueued = true;
|
||||
}
|
||||
break;
|
||||
case ChType_Temperature_div100:
|
||||
{
|
||||
dev_info = hass_init_sensor_device_info(TEMPERATURE_SENSOR, i, 2, 2, 1);
|
||||
MQTT_QueuePublish(topic, dev_info->channel, hass_build_discovery_json(dev_info), OBK_PUBLISH_FLAG_RETAIN);
|
||||
hass_free_device_info(dev_info);
|
||||
|
||||
discoveryQueued = true;
|
||||
}
|
||||
break;
|
||||
case ChType_Humidity:
|
||||
{
|
||||
dev_info = hass_init_sensor_device_info(HUMIDITY_SENSOR, i, -1, -1, 1);
|
||||
|
||||
@@ -1058,6 +1058,7 @@ float CHANNEL_GetFinalValue(int channel) {
|
||||
case ChType_Voltage_div100:
|
||||
case ChType_PowerFactor_div100:
|
||||
case ChType_Pressure_div100:
|
||||
case ChType_Temperature_div100:
|
||||
dVal = (float)iVal / 100;
|
||||
break;
|
||||
case ChType_PowerFactor_div1000:
|
||||
@@ -1878,7 +1879,7 @@ const char* g_channelTypeNames[] = {
|
||||
"Frequency_div10",
|
||||
"PowerFactor_div100",
|
||||
"Pressure_div100",
|
||||
"error",
|
||||
"Temperature_div100",
|
||||
"error",
|
||||
"error",
|
||||
"error",
|
||||
|
||||
@@ -894,6 +894,13 @@ typedef enum channelType_e {
|
||||
//chandetail:"file":"new_pins.h",
|
||||
//chandetail:"driver":""}
|
||||
ChType_Pressure_div100,
|
||||
//chandetail:{"name":"Temperature_div100",
|
||||
//chandetail:"title":"TODO",
|
||||
//chandetail:"descr":"Just like humidity_div100, but for temperature.",
|
||||
//chandetail:"enum":"ChType_Temperature_div100",
|
||||
//chandetail:"file":"new_pins.h",
|
||||
//chandetail:"driver":""}
|
||||
ChType_Temperature_div100,
|
||||
//chandetail:{"name":"Max",
|
||||
//chandetail:"title":"TODO",
|
||||
//chandetail:"descr":"This is the current total number of available channel types.",
|
||||
|
||||
Reference in New Issue
Block a user