110 Commits

Author SHA1 Message Date
6128e585b8 fix: Improve error handling in web server request processing 2025-11-14 20:47:42 -05:00
81174b78e4 fix: Enhance live synchronization logic for heater and AC inputs with last changed tracking 2025-11-14 20:38:48 -05:00
70cc2cad81 fix: Refactor live synchronization logic for heater and AC inputs in schedule form 2025-11-14 20:37:06 -05:00
6bc7b1da93 fix: Implement live synchronization for heater and AC inputs in schedule form 2025-11-14 20:29:12 -05:00
eceee9c88d syncs while typing and guarantees posted values follow the rule 2025-11-14 20:19:13 -05:00
72eb3c2acf fix: Enhance schedule synchronization logic for heater and AC targets 2025-11-14 19:42:21 -05:00
eff69cfe52 fix: Implement auto-sync for heater and AC targets in scheduling and settings
Fixes #17
2025-11-14 18:17:17 -05:00
df08692726 fix: Add type ignore comments for import errors 2025-11-14 17:19:44 -05:00
0030e0a932 fix: Add type ignore comments for imports in multiple scripts to improve compatibility 2025-11-14 17:19:43 -05:00
d95f212d2e Add example configuration file, moved everything from secrets.py to here.
Feat: Also refactored some of the logic in discord_webhook.py and networking.py to be more friendly towards the pico with ram usage.

Fixes #26
2025-11-14 17:18:17 -05:00
2c39ebd985 feat: Update TemperatureMonitor to send alerts via Discord with improved messaging function 2025-11-11 17:13:34 -05:00
1016e96b58 feat: Add static IP configuration options to config and main files. Also remove creation of config from web_server.py because I was already doing it in main.py like it should be done, somewhere first.
Fixes #25
2025-11-11 16:55:27 -05:00
b3c56864ac update: clean up code formatting 2025-11-10 18:59:18 -05:00
5da44e1397 feat: Enhance schedule application by saving updated config to file and ensuring target persistence 2025-11-09 12:43:32 -05:00
b346be9431 feat: Implement immediate application of active schedule on startup and enhance schedule resume handling
Fixes #24
2025-11-09 12:25:16 -05:00
229bde85e9 feat: Add temperature validation in TemperatureMonitor and implement aggressive garbage collection in main loop 2025-11-09 11:54:12 -05:00
dae6971112 feat: Implement NTP sync function with garbage collection and improve schedule handling in web server
reduce ram usage bascically.
Fixes #22 (more garbage collection all it needed, but went further to try and cut more memory usage)
Fixes #21 (Just forgot to already marke this one as completed. Possibly in this commit too)
2025-11-09 11:29:18 -05:00
3c2e936d56 feat: Add advanced settings page and update handling for temperature hold configurations
Fixes #20

didn't rename it that way but have done quite a bit already want to save working point
2025-11-09 10:48:49 -05:00
9da21f7c89 feat: Implement temporary hold management with config integration and improved notifications
fixes #19
2025-11-09 10:11:00 -05:00
b6aae121bb feat: Add dynamic config reload and timezone offset handling in web server
Fixes #18
Already Fixed #13
after long hours of tedious back and forth coding to figure out wtf was happening jesus
2025-11-09 09:24:21 -05:00
749eb956a5 feat: Enhance request handling with improved header parsing and error management
Fixes #16
Fixes #15
Fixes #14
Fixes #6
2025-11-09 00:54:07 -05:00
5ce7cd43a4 feat: Improve HTTP response handling in web server with proper headers 2025-11-08 19:28:11 -05:00
bb46a69eba feat: Update Discord message function with improved comments and error handling 2025-11-08 19:28:06 -05:00
99d92a6e90 feat: Add type ignore comments for imports in multiple scripts 2025-11-08 18:38:11 -05:00
b712c19740 feat: Refactor request handling to include config parameter and improve error logging 2025-11-08 18:38:01 -05:00
9c7ca86d86 feat: Improve schedule parsing and validation in web server
Fixes #12
2025-11-08 17:51:19 -05:00
68b0351e9d feat: Update button labels for temporary and permanent hold actions in the web interface
Fixes #11
2025-11-08 17:24:26 -05:00
74b0d80717 feat: Enhance status page with temporary hold countdown timer and update method signatures 2025-11-08 17:11:46 -05:00
baa6382fba feat: Implement temporary hold expiration logic with notifications 2025-11-08 17:11:38 -05:00
3e926f997b feat: Update scheduling logic to disable only on manual temperature changes and send notifications accordingly 2025-11-08 16:36:05 -05:00
b93809946a feat: Add caching for last temperature reading in TemperatureMonitor 2025-11-08 15:48:00 -05:00
9fda192f0b Bug: Enhance schedule handling with improved request processing and validation
Sometimes page loads, sometimes doesn't trying to implement something to figure out why the page isn't loading. In python everything loads in certain order so if something hangs, it could prevent something else from running. (Like web page from loading :()
2025-11-08 15:47:39 -05:00
b8336f82c8 fix: Update response handling to redirect to homepage after mode actions 2025-11-06 18:29:57 -05:00
a0fe76abc4 fix: Correct order of temperature display and adjust HTML structure for schedule form 2025-11-06 18:26:15 -05:00
050841dd78 refactor: Remove MemoryMonitor class and related methods from memory_check.py 2025-11-06 18:12:44 -05:00
81137a4c5e feat: Add validation for heater and AC target temperatures in schedule configuration 2025-11-06 18:01:52 -05:00
954cd144b9 feat: Add MemoryMonitor class for Pico W memory usage tracking and reporting 2025-11-06 18:01:46 -05:00
52562bd8e6 feat: Implement HOLD mode functionality with temporary and permanent options 2025-11-06 17:26:53 -05:00
f8269f8f9d feat: Add debug logging and fix schedule display encoding
- Log monitor values after settings update for debugging
- Decode URL-encoded time values in schedule display (%3A → :)
- Add detailed comments explaining settings flow
2025-11-06 16:34:35 -05:00
9e2674187c Add HOLD mode banner to status page when schedules are disabled 2025-11-05 23:36:42 -05:00
20910d5fda Refactor schedule resume button in TempWebServer to simplify form structure 2025-11-05 22:54:25 -05:00
2c10fdff62 Refactor TemperatureMonitor logging to remove sensor ID and simplify log format; update ScheduleMonitor to indicate HOLD mode when scheduling is disabled. 2025-11-05 22:31:49 -05:00
33e2944fd8 Add functionality to resume schedule in TempWebServer with Discord notification 2025-11-05 22:31:27 -05:00
2c375eef72 Implement HOLD mode functionality in TempWebServer to disable scheduling and update status display 2025-11-05 22:22:38 -05:00
101e577035 Refactor TemperatureMonitor to improve alert handling and logging functionality 2025-11-05 22:00:33 -05:00
2817273ba4 Enhance web server to handle schedule updates and configuration loading 2025-11-05 21:42:27 -05:00
f4be1a7f7d Add schedule management to web server and configuration loading 2025-11-05 21:33:19 -05:00
94fb7d3081 Implement should_run method to check monitor execution timing 2025-11-05 21:33:00 -05:00
f50f4baff0 Add ScheduleMonitor class to manage temperature schedules and apply settings 2025-11-05 21:32:15 -05:00
5f8223fbe1 Implement configuration saving for AC and heater settings to config.json 2025-11-05 21:10:58 -05:00