implemented multiple fans

This commit is contained in:
2026-02-26 14:06:49 +01:00
parent 7e2bef58d2
commit cab39a6478
10 changed files with 101 additions and 44 deletions

View File

@@ -18,7 +18,7 @@ pub struct DashboardState {
impl DashboardState {
pub fn new() -> Self {
Self {
logs: vec!["FerroTherm Initialized.".to_string()],
logs: vec!["ember-tune Initialized.".to_string()],
}
}
@@ -92,7 +92,7 @@ fn draw_header(f: &mut Frame, area: Rect, state: &TelemetryState) {
let hostname = std::env::var("HOSTNAME").unwrap_or_else(|_| "localhost".into());
let left = Span::styled(format!(" 󰈐 {} ", hostname), Style::default().fg(C_MAUVE).add_modifier(Modifier::BOLD));
let center = Span::styled(" FERROTHERM THERMAL BENCH ", Style::default().fg(C_LAVENDER).add_modifier(Modifier::BOLD));
let center = Span::styled(" EMBER-TUNE THERMAL BENCH ", Style::default().fg(C_LAVENDER).add_modifier(Modifier::BOLD));
let right = Span::styled(format!(" UPTIME: {} ", uptime), Style::default().fg(C_SUBTEXT));
let total_width = area.width;
@@ -182,11 +182,20 @@ fn draw_cooling(f: &mut Frame, area: Rect, state: &TelemetryState) {
let inner = block.inner(area);
f.render_widget(block, area);
let fan_info = if state.fans.is_empty() {
"N/A".to_string()
} else {
state.fans.iter()
.map(|rpm| format!("{} RPM", rpm))
.collect::<Vec<String>>()
.join(" | ")
};
let info = Line::from(vec![
Span::styled(" Tier: ", Style::default().fg(C_LAVENDER)),
Span::styled(&state.fan_tier, Style::default().fg(C_TEAL)),
Span::styled(" | RPM: ", Style::default().fg(C_LAVENDER)),
Span::styled(format!("{}", state.fan_rpm), Style::default().fg(C_TEXT)),
Span::styled(" | ", Style::default().fg(C_LAVENDER)),
Span::styled(fan_info, Style::default().fg(C_TEXT)),
]);
f.render_widget(Paragraph::new(info), inner);
}