Previous change (simplyfy DMR status display) did not consider
DMR duplex mode.
Now DMR simplex mode uses 2-lines style, duplex mode 4-lines like this.
Listening
TS1
N Callsign
TS2 TGxx
For this change, statusLine() no longer have meaning.
It will be removed in the future.
Old DMR status display takes 4 lines i.e.:
1 Listening
(unused line here)
2 N Callsign
TGxx
To make room for display area for future development, DMR status display
are changed to 2-lines style like this:
N Callsign
TS2 TGxx
And, added three small changes:
- use statusLine() macro to change layout easily
- use two -> three colors
yellow: radio mode (DMR, YSF, etc)
cyan: main status (callsign, TG/Timeslot)
dark green: additional information (D* reflector etc) *NEW*
- rename statusLine_offset() -> statusLineOffset()
Sometimes BOXF (box fill) command at refreshDisplay() fails.
Normally this is not occured, but running MMDVMHost for long time
(about one day) we see this problem.
The reason is unknown. But if LCD panel receives garbage character between
calling refreshDisplay(), first command (BOXF) at latter-called
refresDdisplay() will fail.
For workaround, send CR+LF command terminator first at this function.
Display space character with DCV command to clear screen, but this command is
very slow. I tested filling whole 160x128 area with 8x16 character by DCV16
command, it took 540msec.
This is the worst case, but display refresh period has extended to 600ms
for safety.
To clear screen, use BOXF command instead. And, reduced issuing DCV command.
HobbyTronics TFT Shield has discontinued, here is a replacement TFT module
that can be controlled from UART.
Different from TFT Shield, it cannot display figures that stored in
micro SD card. So appearance is simplified like OLED.
Surenoo module sometimes ignores display commands (in busy stuation?),
this driver buffers display status and refresh at clockInt().