retry wifi connection, show canbus FW version, adjust measurement formular
This commit is contained in:
@@ -177,6 +177,8 @@ export interface GetTime {
|
||||
export interface Moistures {
|
||||
moisture_a: [string],
|
||||
moisture_b: [string],
|
||||
sensor_a_build_minutes: Array<number | null>,
|
||||
sensor_b_build_minutes: Array<number | null>,
|
||||
}
|
||||
|
||||
export interface VersionInfo {
|
||||
|
||||
@@ -556,8 +556,8 @@ export class Controller {
|
||||
return fetch(PUBLIC_URL + "/moisture")
|
||||
.then(response => response.json())
|
||||
.then(json => json as Moistures)
|
||||
.then(time => {
|
||||
controller.plantViews.update(time.moisture_a, time.moisture_b)
|
||||
.then(data => {
|
||||
controller.plantViews.update(data.moisture_a, data.moisture_b, data.sensor_a_build_minutes, data.sensor_b_build_minutes)
|
||||
clearTimeout(timerId);
|
||||
if (!silent) {
|
||||
controller.progressview.removeProgress("measure_moisture");
|
||||
@@ -731,6 +731,7 @@ const tasks = [
|
||||
{task: controller.updateRTCData, displayString: "Updating RTC Data"},
|
||||
{task: controller.updateBatteryData, displayString: "Updating Battery Data"},
|
||||
{task: controller.updateSolarData, displayString: "Updating Solar Data"},
|
||||
{task: () => controller.measure_moisture(true), displayString: "Measuring Moisture"},
|
||||
{task: controller.downloadConfig, displayString: "Downloading Configuration"},
|
||||
{task: controller.version, displayString: "Fetching Version Information"},
|
||||
{task: controller.updateSaveList, displayString: "Updating Save Slots"},
|
||||
|
||||
@@ -36,11 +36,19 @@ export class PlantViews {
|
||||
return rv
|
||||
}
|
||||
|
||||
update(moisture_a: [string], moisture_b: [string]) {
|
||||
update(moisture_a: [string], moisture_b: [string], sensor_a_build_minutes?: Array<number | null>, sensor_b_build_minutes?: Array<number | null>) {
|
||||
for (let plantId = 0; plantId < PLANT_COUNT; plantId++) {
|
||||
const a = moisture_a[plantId]
|
||||
const b = moisture_b[plantId]
|
||||
this.plants[plantId].setMeasurementResult(a, b)
|
||||
|
||||
// Update firmware build timestamps if provided
|
||||
if (sensor_a_build_minutes && sensor_a_build_minutes[plantId] !== undefined) {
|
||||
this.plants[plantId].setFirmwareBuild("sensor_a", sensor_a_build_minutes[plantId])
|
||||
}
|
||||
if (sensor_b_build_minutes && sensor_b_build_minutes[plantId] !== undefined) {
|
||||
this.plants[plantId].setFirmwareBuild("sensor_b", sensor_b_build_minutes[plantId])
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -406,4 +414,12 @@ export class PlantView {
|
||||
this.sensorAFwBuild.innerText = formatBuildMinutes(plantResult.sensor_a);
|
||||
this.sensorBFwBuild.innerText = formatBuildMinutes(plantResult.sensor_b);
|
||||
}
|
||||
|
||||
setFirmwareBuild(sensor: "sensor_a" | "sensor_b", buildMinutes: number | null) {
|
||||
if (sensor === "sensor_a") {
|
||||
this.sensorAFwBuild.innerText = formatBuildMinutes(buildMinutes);
|
||||
} else {
|
||||
this.sensorBFwBuild.innerText = formatBuildMinutes(buildMinutes);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -27,13 +27,7 @@ export class SubmitView {
|
||||
this.submit_status = document.getElementById("submit_status") as HTMLElement
|
||||
this.submitFormBtn.onclick = () => {
|
||||
controller.uploadConfig(this.json.textContent as string, (status: string) => {
|
||||
if (status != "OK") {
|
||||
// Show error toast (click to dismiss only)
|
||||
toast.error(status);
|
||||
} else {
|
||||
// Show info toast (auto hides after 5s, or click to dismiss sooner)
|
||||
toast.info('Config uploaded successfully');
|
||||
}
|
||||
toast.info(status);
|
||||
this.submit_status.innerHTML = status;
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user