toggle quoted messageShow quoted text
Hey Hans, I had this issue in the 1.03 and 1.04 firmware, often when the radio is idle it will just loose the least significant digits until you rock the vfo.
I feel for you buddy as a professional programmer aome of which is using 1602 displays I know how hard it is to work with that stupid memory limit!
73 for now
On 26 Apr 2020, at 20:33, Hans Summers <hans.summers@...> wrote:
Nothing is related to the scan rate of the encoder being too low.
The problem is different processed in the firmware are all trying to access the LCD at the same time. Not ACTUALLY at the same time, since this IS a simple microcontroller without multiple cores in parallel. But multiple processes doing their LCD writes are interweaving with each other, and it leads to the noted corruption of the display. The display should be viewed as a resource and only one process should be allowed to access it at a time. When it completes its multiple-character write to the display, it should release the reservation and allow another process to do its writes.
It works correctly for most of the processors updating the display but there is clearly something still in there which ignores the resource lock (reservation). So I just need to track that down...
Maybe it sounds simple but in reality it is not so. Remember there are only 32KBytes of Flash (program memory). It doesn't exactly run Windows 10 in there. There are a lot of shortcuts. A fine line can easily be crossed, into one-short-cut-too-many territory.
Don't worry I will find it.
73 Hans G0UPL
I made this oberservation too, but only when turning the encoder knob (too) fast.
I guess the scan rate for the encoder might be too low.