Repository navigation
Releases: Willi005/DeskSense
Release list
DeskSense 1.3.0 — Rediseño Nothing (R)
DeskSense 1.3.0 transforma por completo la identidad visual y táctil de la aplicación, sustituyendo el estilo glassmorphism previo por una estética industrial y utilitaria de alta precisión inspirada en Nothing (R) y Teenage Engineering.
Novedades y Filosofía de Diseño
-
Paleta e Iluminación Funcional Nothing: Base en negro chasis (
#000000) y vidrio ahumado técnico (#0C0D10) con bordes de baja luminancia (#22252A), tipografías monospace y dot-matrix, y un acento único en Nothing Red (#E52E2E) reservado para estados críticos y presencia activa. - Sensor de Luz (Batería LED Vertical): Visualizador columnar de 8 LEDs lineales apilados verticalmente que se iluminan progresivamente en blanco frío según el nivel de iluminación ambiental.
-
Sensor de Ruido (Osciloscopio DAW Continuo): Forma de onda continua en tiempo real con regla temporal calibrada en milisegundos (
0ms,500ms,1000ms), cabezal dinámico Nothing Red y respuesta reactiva a la intensidad acústica ambiental. -
Sensor de Confort e Higrometría (Psicrómetro de Doble Columna): Doble barra simétrica de LEDs para Temperatura y Humedad, cálculo termodinámico en tiempo real del Punto de Rocío (
$T_d$ ) mediante la ecuación de Magnus-Tetens y consola de diagnóstico centrada (CONFORT, margen de rocío y estado de condensación). - Espectro PM2.5: Gráfica de telemetría de alta resolución con retícula técnica y ejes calibrados.
-
Consola de Navegación y Cabecera: Barra lateral minimalista estilo rack industrial con numeración técnica (
01,02,03...), botón táctil para la consola interactiva de IA y logotipo renovado en alto contraste blanco y negro. - Gestión de Tareas: Checkboxes táctiles circulares sobrios, tipografía unificada y modal técnico Nothing sin elementos superfluos.
-
Simulador Dinámico: Modo de oscilación periódica (
jornada) para transiciones continuas entre niveles óptimos, moderados y críticos.
Instalación (Linux)
chmod +x DeskSense-1.3.0.AppImage
./DeskSense-1.3.0.AppImageDeskSense 1.2.1
Correcciones surgidas de una revisión independiente de la 1.2.0. Quien tenga la 1.2.0 instalada debería actualizar: dos de estos fallos producían datos falsos en el reporte.
Correcciones
Apagar la detección de concentración dejaba el estado congelado. Si se desactivaba con una ventana activa, el aviso del panel quedaba pegado indefinidamente —incluso con la función apagada y el dispositivo desconectado— y, al reactivar, se registraba una ventana falsa que abarcaba todo el tiempo apagado. Esa ventana inventada inflaba tanto el conteo como el aprovechamiento del enfoque.
El aprovechamiento contaba ventanas, no tareas distintas. Como el sistema sugiere la misma tarea profunda en cada ventana hasta que se completa, tres ventanas sobre una sola tarea afirmaban que se habían completado tres. Ahora cuenta tareas distintas.
Las ventanas anteriores a la 1.2.0 hacían afirmar un motivo falso. Al no traer el campo de la tarea sugerida, el reporte decía que no había ninguna tarea profunda pendiente, algo que el dato no sostiene. Ahora distingue "sin registro" de "no había tarea".
El resumen del asistente ignoraba el cierre del ciclo. La tarjeta afirmaba que el ciclo se cierra y las conclusiones de la IA, justo debajo, eran incapaces de comentarlo.
Concordancia de número en la frase del reporte, y validación de la ruta que recibe la navegación por notificación.
Instalación
chmod +x DeskSense-1.2.1.AppImage
./DeskSense-1.2.1.AppImageLimitaciones conocidas
- El estado de una ventana en curso vive en memoria: cerrar la aplicación a mitad de una ventana hace que no se registre. A diferencia de los fallos corregidos aquí, esto produce un dato ausente, no uno falso.
- La entrada por voz requiere al menos 0,50 USD de saldo en OpenRouter.
- Las credenciales de ThingsBoard se guardan en texto plano en el almacenamiento local.
DeskSense 1.2.0
Cierra el ciclo que el diseño prometía: el entorno detecta el momento, la tarea dice qué hacer con él, y ahora el reporte mide si sirvió.
Novedades
Aprovechamiento del enfoque. Cada ventana de concentración registra la tarea profunda que sugirió, y el reporte responde cuántas de esas tareas acabaron completándose. Antes las ventanas y las tareas se contaban por separado, sin relacionarse nunca.
Aviso permanente de ventana activa. El panel muestra un distintivo mientras el entorno acompaña, nombrando la tarea sugerida. La notificación es efímera: quien no estuviera mirando la pantalla no llegaba a enterarse.
La notificación lleva a las tareas. Al hacer clic, la aplicación abre la página de Tareas en vez de limitarse a traer la ventana al frente.
Correcciones
- El cruce entre ventanas y tareas usa la lista completa de tareas, no solo las del período: que una tarea venza otro día no cambia si se completó.
- El texto de la notificación deriva del umbral real en lugar de estar escrito a mano.
Instalación
chmod +x DeskSense-1.2.0.AppImage
./DeskSense-1.2.0.AppImageEl instalador de Windows se genera con npm run dist:win desde Windows.
Limitaciones conocidas
- El estado de una ventana de concentración en curso vive en memoria: si la aplicación se cierra a mitad de una ventana, esa ventana no se registra.
- La entrada por voz requiere al menos 0,50 USD de saldo en OpenRouter.
- Las credenciales de ThingsBoard se guardan en texto plano en el almacenamiento local.
DeskSense 1.1.0
Novedades
Tareas. Se agregan escribiendo en lenguaje natural (la IA interpreta prioridad, complejidad, fecha y duración), dictándolas por voz, o con un formulario. Se guardan en disco y sobreviven al reinicio.
Reportes de rendimiento. Períodos Hoy y Esta semana con porcentaje de cumplimiento, Índice de Entorno (0–100) y el patrón observado que cruza las tareas completadas con la calidad del ambiente de ese momento.
Ventanas de concentración profunda. Notificación nativa cuando el entorno lleva 10 minutos en condiciones óptimas con presencia, sugiriendo la tarea profunda pendiente de mayor prioridad.
Renovación automática de sesión. El JWT de ThingsBoard dura 150 minutos; ahora se renueva solo y ya no hace falta volver a conectar.
Firmware. El ESP32 sincroniza por NTP y sella su telemetría con marca de tiempo propia, corrigiendo el desfase horario del historial.
Infraestructura. Simulador de telemetría con escenarios y 83 pruebas unitarias.
Instalación
Descarga el AppImage, dale permisos de ejecución y ábrelo:
chmod +x DeskSense-1.1.0.AppImage
./DeskSense-1.1.0.AppImageEl instalador de Windows (NSIS) se genera con npm run dist:win desde Windows.
Limitaciones conocidas
- La entrada por voz requiere al menos 0,50 USD de saldo en OpenRouter (los modelos cobran el audio aparte).
- Las credenciales de ThingsBoard se guardan en texto plano en el almacenamiento local.
DeskSense v1.0.1
Versión 1.0.1 de DeskSense.
Cambios
- Nuevo icono de la app (olas / capas ambientales) con variantes para tema claro y oscuro.
- El icono aparece ahora en el header de la aplicación, adaptándose al tema activo.
- Icono de escritorio actualizado (variante clara).
Instalación (Windows)
- Descarga DeskSense-Setup-1.0.1.exe más abajo.
- Ejecútalo y sigue el asistente. Se crea un acceso directo en el escritorio y en el menú Inicio.
El instalador no está firmado, así que Windows SmartScreen puede mostrar un aviso: Más información → Ejecutar de todas formas.
DeskSense v1.0.0
Primera versión estable de DeskSense, monitoreo ambiental inteligente del escritorio (ESP32 + ThingsBoard).
Instalación (Windows)
- Descarga DeskSense-Setup-1.0.0.exe más abajo.
- Ejecútalo y sigue el asistente (puedes elegir la carpeta de instalación).
- Se crea un acceso directo en el escritorio y en el menú Inicio.
Funcionalidades
- Dashboard en tiempo real (bento glassmorphism) con presencia, temperatura, humedad, calidad del aire (PM), luz y ruido.
- Historial con rangos y agregación del lado del servidor.
- Asistente de IA acotado al ambiente de trabajo (multi-proveedor).
- Alertas automáticas con consejo de la IA y notificación push del sistema.
- Tema claro/oscuro y panel de Apariencia para habilitar/deshabilitar sensores.
Requiere conexión a una instancia de ThingsBoard y una API key de IA (se configuran dentro de la app).