You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: TODO.txt
+29-17Lines changed: 29 additions & 17 deletions
Original file line number
Diff line number
Diff line change
@@ -19,8 +19,8 @@ TODO items
19
19
4.1 Add MQTT server username and password authentication and configuration
20
20
=> DONE v3.1.23
21
21
4.2 Add MQTT control of display brightness, display on/off,
22
-
4.3 publish some weather info,
23
-
4.4 pub statistical data,
22
+
4.3 publish some weather info,
23
+
4.4 pub statistical data,
24
24
4.5 pub debug help, like free heap, max allocatable block; to monitor memory fragmentation and memory leaks
25
25
5. Compile under PlatformIO / PIOarduino in VScode, perhaps saying goodbye to Arduino IDE (PIO provides control over used library versions, which is near impossible with Arduino IDE for different projects)
26
26
=> Done, Arduino IDE still supported
@@ -39,39 +39,51 @@ TODO items
39
39
may be provide PR's to Original repo, though the changes might be too large to be acceptable/merge-able
40
40
=> ongoing
41
41
11. make it compile and run on ESP32 variants
42
-
=> future (though it shouldnt be that hard, been there done that...
42
+
=> future (though it shouldnt be that hard, been there done that...) For me this is 'easy' reuse of some older HW.
43
43
12. Adaptive brightness option; add LDR on ADC input and heavily filter for slow changes
44
44
13. make it possible to show alternate display (temperature) statically (without scrolling), alternating with time, like 10s temperature, 50s time
45
45
=> DONE v1.3.19 (disable all display options will leave temperature, which is statically shown for 10s, which is quite long)
46
46
13.1 make display functions showing time, scrolling message, static temperature display re-entrant from loop,
47
47
e.g. call scroll message for every pixel shift, call show time for every 1/2 second to blink center colon when enabled, etc
48
48
This allows the webserver and OTA to be serviced within the loop, iso at 3-4 places, and should increase web service responsiveness.
49
-
14. Change from OWM city-ID to city/[state/]country or lat/lon coordinates or allow them all for maximum flexibility.
49
+
14. Change from OWM city-ID to city/[state/]country or lat/lon coordinates or allow them all for maximum flexibility.
50
50
The OWM geocoding-api will translate to lat/lon coordinates for weather requests.
51
51
15. Check which font type/file is used.
52
-
16. Add slider checkbox (see w3schools) (instead of oldfashioned checkboxes) to mainpage header for autorefresh and darkmode
52
+
16. Add slider checkbox (see w3schools) (instead of oldfashioned checkboxes) to mainpage header for autorefresh and darkmode
53
53
16.1 How to preserve these settings in browser? cookie?
54
54
17. Enhance display off quiet period with options like {display off, dimmed, dimmed time + temp, dimmed only time}. Should we configure dimmed level as well?
55
55
18. Add local temperature sensor and show inside temperature. Support only a few I2C sensors. Caveat: here we might get requests like can you support this or that sensor....
56
-
19. add Config option: "Flash System LED on Service Calls"; the blue onboard LED is quite bright, shining through the case and can be annoying.
56
+
19. Add Config option: "Flash System LED on Service Calls"; the blue onboard LED is quite bright, shining through the case and can be annoying.
57
57
20. config page rework; In general, create more logical order, it is a mess now.
58
-
group 'Display' items name 'LED display',
59
-
move 'use metric' to bottom (point 9!),
60
-
rename 'Minutes Between Refresh Data' to 'Clock Sync / Weather Refresh (minutes)'
61
-
and change NTP sync accordingly,
62
-
=> NTP sync fixed in v3.1.22
63
-
move 'Minutes Between Scrolling Data' to display items and rename to 'Display interval',
64
-
rename 'Flash : in the time' to 'Blink time colon',
65
-
move 'marquee message' setting to 3rd line and name 'Scroll message',
66
-
'Start time'/'End time' group in 'Quiet period' with start and end reversed + point 17,
67
-
58
+
20.1 group 'Display' items name 'LED display',
59
+
==> Done v3.1.25 All config page items are now re-grouped
60
+
20.2 move 'use metric' to bottom (point 9!),
61
+
-> relocated to Data Display Settings group
62
+
20.3 rename 'Minutes Between Refresh Data' to 'Clock Sync / Weather Refresh (minutes)'
63
+
and change NTP sync accordingly,
64
+
=> NTP sync fixed in v3.1.22
65
+
==> DONE v3.1.25; now called 'Data refresh interval'
66
+
20.4 move 'Minutes Between Scrolling Data' to display items and rename to 'Display interval',
67
+
==> DONE v3.1.25; now called 'Display Scrolling Data interval'
68
+
20.5 rename 'Flash : in the time' to 'Blink time colon',
69
+
==> Done v3.1.25
70
+
20.6 move 'marquee message' setting to 3rd line and name 'Scroll message',
71
+
==> Done v3.1.25
72
+
20.7 'Start time'/'End time' group in 'Quiet period' with start and end reversed + point 17,
73
+
- later
74
+
20.8 Add config of display width (# of tiles, default 4, max 32?); rename numberOfHorizontalDisplays, add to R/W configuration,
75
+
==> Done v3.1.25
76
+
20.9 Add wide clock style config, different screen formats for 8+ tiles: HH:MM, HH:MM:SS, HH:MM *CF, HH:MM %RH, mm dd HH:MM, HH:MM Www DD (12 chars! 8 tiles fit 10 chars! ,
77
+
(There are smaller fonts, but everything in this code is assuming fixed size chars.)
78
+
==> Done v3.1.25; now there are 8 variants. No font change.
79
+
21. News headlines: Do not use newsapi.org, it is NOT free but costs 450 USD per __MONTH__ (5400 USD per annum)! rediculous pricing for this Indian company!
68
80
69
81
Future
70
82
- Change to use latest Arduino json V7 library. this makes the JsonStreamingParser and json buffer size calculation unnecessary.
71
83
- Add REST API for various controls
72
84
- Update webpage with json data; requires JS code
73
85
- Investigate if we can run without adafruit library
74
-
https://github.com/markruys/arduino-Max72xxPanel/pull/7 BitBang and no Adafruit_GFX #7
86
+
https://github.com/markruys/arduino-Max72xxPanel/pull/7 BitBang and no Adafruit_GFX #7
75
87
who defines the character map?
76
88
Major overhaul
77
89
+ html main page: store whole page as one big array and process it as a stream, search for $marker$. Have a table with markers matching a callable function that returns the replacement text. callback could be anon inline function. This should reduce the number of string operations and memory allocations considerably.
0 commit comments