Skip to content

Commit e4e6bf1

Browse files
committed
fixed dash
1 parent e8e2e4d commit e4e6bf1

File tree

2 files changed

+78
-60
lines changed

2 files changed

+78
-60
lines changed

Telemetry-Main/BT817Q/layouts.cpp

Lines changed: 30 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -219,16 +219,21 @@ void Layouts::drawStandardLayout2(
219219
endFrame();
220220
}
221221

222-
#define MC_WARNING_VOLT 100
223-
//TODO!!! placeholder!! ENSURE THIS IS THE CORRECT VALUE!!!!
222+
#define ACC_WARNING_VOLT 94
224223

225-
#define ACC_WARNING_TEMP 52
226-
//TODO!!! placeholder!! ENSURE THIS IS THE CORRECT VALUE!!!!
224+
#define ACC_WARNING2 100
225+
226+
#define ACC_WARNING3 103
227+
228+
#define ACC_WARNING_TEMP 54
227229

228230
void Layouts::drawLayout3(Faults faults, float acc_volt, uint8_t acc_temp,
229231
uint8_t ctrl_temp, uint8_t mtr_temp, uint8_t soc,
230232
float glv, bool rtds, int tick) {
231233
//--------init-------------
234+
if (failure == startFrame()) {
235+
return;
236+
}
232237
clear(255, 255, 255); // white background for frame
233238
loadFonts();
234239
//-----------\init-------------
@@ -250,6 +255,7 @@ void Layouts::drawLayout3(Faults faults, float acc_volt, uint8_t acc_temp,
250255

251256
//--------indicator lights------------------
252257
bool curr_green = true;
258+
setMainColor(green);
253259
if (faults.fans && curr_green) {
254260
setMainColor(red);
255261
}
@@ -282,24 +288,29 @@ void Layouts::drawLayout3(Faults faults, float acc_volt, uint8_t acc_temp,
282288
}
283289
drawRect(Point{75, 75}, Point{147, 147}); //rtds
284290
//-----------\indicator lights--------------------
285-
286291
//---------MC warning box----------
287292
Color mc_volts_bg = Color {18, 219, 255};
288-
if (acc_volt < MC_WARNING_VOLT) { //flash the box to alarm driver if MC volts below warning point
293+
if (acc_volt < ACC_WARNING_VOLT) { // flash the box to alarm driver if MC volts below warning point
289294
if (tick % 2 == 0) {
290295
mc_volts_bg = red;
291296
}
292297
else {
293298
mc_volts_bg = Color {255, 255, 0};
294299
}
295300
}
301+
else if (acc_volt < ACC_WARNING2) {
302+
mc_volts_bg = red;
303+
}
304+
else if (acc_volt < ACC_WARNING3) {
305+
mc_volts_bg = Color{255, 155, 0};
306+
}
296307
setMainColor(mc_volts_bg);
297-
drawRect(Point{200, 0}, {375, 125});
308+
drawRect(Point{155, 0}, {390, 205});
298309
//--------------\MC warning box-------
299310

300311
//---------ACC TEMP warning box----------
301312
Color acc_temp_bg = Color {18, 219, 255};
302-
if (acc_temp < ACC_WARNING_TEMP) { //flash the box to alarm driver if MC volts below warning point
313+
if (acc_temp > ACC_WARNING_TEMP) {//flash the box to alarm driver if MC volts below warning point
303314
if (tick % 2 == 0) {
304315
acc_temp_bg = red;
305316
}
@@ -308,7 +319,7 @@ void Layouts::drawLayout3(Faults faults, float acc_volt, uint8_t acc_temp,
308319
}
309320
}
310321
setMainColor(acc_temp_bg);
311-
drawRect(Point{400, 0}, {625, 125});
322+
drawRect(Point{395, 0}, {695, 205});
312323
//--------------\ACC TEMP warning box-------
313324

314325
//--------------TEXT-----------------
@@ -321,16 +332,18 @@ void Layouts::drawLayout3(Faults faults, float acc_volt, uint8_t acc_temp,
321332
drawText(110, 110, "RTD", 23);
322333

323334
//___MC and ACC______
324-
drawFormattedText(275, 75,
325-
"ACC\n%03.1f V ", 1, OPT_CENTER, acc_volt);
326-
drawFormattedText(525, 75,
327-
"ACC\n%03d'C ", 1, OPT_CENTER, acc_temp);
335+
drawFormattedText(275, 110,
336+
"%003.1f V", 1, OPT_CENTER, acc_volt);
337+
drawFormattedText(550, 110,
338+
"%03d'C", 1, OPT_CENTER, acc_temp);
328339

329340
//___GLV, CTRL and MTR______
330-
drawFormattedText(75, 175, "GLV\n%03d V ", 31, OPT_CENTER, glv);
331-
drawFormattedText(75, 175, "CTRL\n%03d'C ", 31, OPT_CENTER, ctrl_temp);
332-
drawFormattedText(75, 175, "MTR\n%03d'C ", 31, OPT_CENTER, mtr_temp);
341+
// drawFormattedText(75, 225, "GLV\n%03d V ", 24, OPT_CENTER, glv);
342+
// drawFormattedText(225, 225, "CTRL\n%03d'C ", 24, OPT_CENTER, ctrl_temp);
343+
// drawFormattedText(375, 225, "MTR\n%03d'C ", 24, OPT_CENTER, mtr_temp);
333344

334345
//____SOC number
335-
drawFormattedText(550, 175, "SOC\n%03d ", 2, OPT_CENTER, soc);
346+
drawText(525,300, "SOC", 31);
347+
drawFormattedText(550, 250, "%03d ", 2, OPT_CENTER, soc);
348+
endFrame();
336349
}

Telemetry-Main/main.cpp

Lines changed: 48 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ void update_sd() {
9999
row_idx++;
100100
}
101101
}
102+
int n = 0;
102103
void update_dash() {
103104
const VehicleState vsm_state = vsm.getState();
104105
// int8_t total_temp = 0;
@@ -145,7 +146,7 @@ void update_dash() {
145146
vsm_state.accPower.SOC,
146147
static_cast<float>(vsm_state.pdbPowerA.GLV_VOLTAGE),
147148
static_cast<bool>(vsm_state.etcStatus.RTD),
148-
this_tick++
149+
n
149150
);
150151
}
151152

@@ -246,50 +247,54 @@ int main() {
246247
queue.call_every(DASH_UPDATE_HZ, &update_dash);
247248
}
248249
queue.call_every(1ms, [](){vsm.update();});
250+
queue.call_every(100ms, [](){n++;});
249251
queue.dispatch_forever();
250252

251-
while (true) {
252-
// t.reset();
253-
// vsm.update();
254-
// if (x % 7000 == 0) {
255-
// printf("\tVSM: %.3fms\n", t.elapsed_time().count()/1000.0);
256-
// }
257-
//
258-
// x++;
259-
260-
// if (state.radio_event) {
261-
// state.radio_event = false;
262-
// if (state.radio_on) {
263-
// update_radio();
264-
// }
265-
// }
266-
//
267-
// if (state.sd_event) {
268-
// state.sd_event = false;
269-
// if (state.sd_on) {
270-
// update_sd();
271-
// }
272-
// }
273-
274-
// if (state.dash_event) {
275-
// printf("Update Dash -- ");
276-
// update_dash();
277-
// state.dash_event = false;
278-
// }
279-
280-
// if (x>5000) {
281-
// printf("Time: %f\n", t.elapsed_time().count()/1.0);
282-
// t.reset();
283-
//
284-
// update_dash();
285-
//
286-
// // eve.drawStandardLayout2(p);
287-
// printf("\tDash: %.3fms\n", t.elapsed_time().count()/1000.0);
288-
//
289-
// x = 0;
290-
// printf("Updating Dash\n");
291-
// }
253+
// int x = 0;
254+
// while (true) {
255+
// // t.reset();
256+
// vsm.update();
257+
// // if (x % 7000 == 0) {
258+
// // printf("\tVSM: %.3fms\n", t.elapsed_time().count()/1000.0);
259+
// // }
260+
// //
261+
// x++;
262+
//
263+
// n++;
264+
//
265+
// // if (state.radio_event) {
266+
// // state.radio_event = false;
267+
// // if (state.radio_on) {
268+
// // update_radio();
269+
// // }
270+
// // }
271+
// //
272+
// // if (state.sd_event) {
273+
// // state.sd_event = false;
274+
// // if (state.sd_on) {
275+
// // update_sd();
276+
// // }
277+
// // }
278+
//
279+
// // if (state.dash_event) {
280+
// // printf("Update Dash -- ");
281+
// // update_dash();
282+
// // state.dash_event = false;
283+
// // }
284+
//
285+
// if (x>500) {
286+
// // printf("Time: %f\n", t.elapsed_time().count()/1.0);
287+
// // t.reset();
288+
// //
289+
// update_dash();
290+
// //
291+
// // // eve.drawStandardLayout2(p);
292+
// // printf("\tDash: %.3fms\n", t.elapsed_time().count()/1000.0);
293+
// //
294+
// x = 0;
295+
// // printf("Updating Dash\n");
296+
// }
292297

293298
// printf("CAN!\n");
294-
}
299+
// }
295300
}

0 commit comments

Comments
 (0)