I’ve made that change in 99-calibration.conf
and rebuilt the buster image.
Here are the results:
- The LCD touchscreen did not work (see below for more details)
- The LCD did have the splash screen telling me to connect my phone to the AP
- The LCD also did have the countdown screen telling me the pi’s IPv4 address
- The web interface worked fine to turn on the air conditioning
- Performance
a. Load average is about 1.8
b. 49.3% of memory is used by OpenHAB
c. 27M of memory free ; 96M of memory available ; 430M total (per top
and free
)
d. 75M/100M of swap space is available
When I say the touch screen didn’t work, I mean not even the information button, which worked fine for me before this last iteration. I did notice mashing on the screen can cause text to get selected, which is probably a clue. It seems that clicks are registering… somewhere.
Next I compared these values to what are in the 1.2-dev release and I found the calibration file wasn’t even there on that HestiaPi. So I thought it might be a good idea to remove that file from the buster image all together. Nope. That caused clicks on the extreme right of the screen to register on the far left. So by clicking on the right half of the info button, I could get the heating menu to appear.
The other question I had was whether using these new numbers for buster is going to mess up the old builds for jessie and stretch? If they need separate values, I can do that without any trouble, I just need to know which values to use on which Debian versions.
I tried running ts_configure
based on this tutorial and the crosses didn’t show up on the screen and the console only output the screen resolution. But after 4 or 5 taps, it spit out configuration values (which I’m sure are wrong). I also tried ts_test
and that didn’t print anything on the LCD, but it did print out some data. Unfortunately it didn’t have headers nor did the man page explain what the columns were. It looks like the first value is a unix timestamp and the last value might be the pressure being applied, but the middle two weren’t comprehensible. I’ll paste the raw data below in case anyone else can make sense of it.
1653000379.971880: -25101 82 144
1653000379.990920: -25197 96 145
1653000380.009165: -25285 109 146
1653000380.029155: -25352 118 146
1653000380.057829: -25441 131 147
1653000380.077236: -25479 136 147
1653000380.097009: -25390 124 145
1653000380.128814: -25198 96 0
1653000387.338400: 25002 -7124 121
1653000387.348802: 25002 -7124 0
1653000397.049019: -2076 -3256 148
1653000397.077452: -1988 -3269 148
1653000397.096696: -1935 -3276 149
1653000397.115649: -1905 -3280 149
1653000397.128787: -1816 -3293 0
1653000403.540141: 13438 3938 145
1653000403.559136: 13581 3918 145
1653000403.598795: 13653 3907 0
That’s from me clicking in the top left, top right, bottom right, bottom left (in that order). For completeness, I also put the calibration file back and then ran ts_calibration, which still didn’t put any squares on the screen, but it was more productive in that it showed me some output.
root@raspberrypi:~# ts_calibrate
xres = 480, yres = 320
Took 2 samples...
Top left : X = 276 Y = 3727
Took 6 samples...
Top right : X = 388 Y = 343
Took 5 samples...
Bot right : X = 3710 Y = 407
Took 6 samples...
Bot left : X = 3731 Y = 3820
Took 4 samples...
Center : X = 1971 Y = 2067
466.451416 0.002600 -0.111777
27.493958 0.064867 0.000862
Calibration constants: 30569360 170 -7325 1801844 4251 56 65536
These numbers do not look much like the calibration numbers form 99-calibration.conf
though, so I’m not really sure where to go from here. I’m not sure what might read /etc/pointercal
so I deleted that to clean up after myself.
Just for kicks, I blindly jammed “30569360 170 -7325 1801844 4251 56 65536” in for the Calibration Option in the xorg conf file. I knew it was probably wrong, but it didn’t seem any more nonsensical than the other magic values, so what the heck, right? Clicks didn’t register anywhere. Mashing on the screen could get seemingly arbitrary text to be selected, but generally unhelpful.
So overall, the build seems to be going pretty smoothly. It just seems to be this touchscreen issue that I need to sort out. If anyone can shed any light on what these calibration numbers mean or how I can obtain the correct ones (and, ideally, also verify that they are the correct ones), let me know and I’ll see if I can get numbers that will work work everyone on every version of Debian. Thanks.