Werner Almesberger
2015-08-21 06:22:56 UTC
The capacitative slider did not like the great outdoors beyond
Berlin and proved to be a major nuisance. Much of the time, it
flat out refused to work, or it would move only part of the
range.
I tried a few quick fixes, but they only made things worse.
Specifically, they are:
- for "on" mode, set a fixed calibration (via DEVCFG) and disable
auto-calibration:
https://gitlab.com/anelok/anelok/commit/b140c2f9a5c57051fafa782ae9b0b58970fb9298
Theory: if auto-calibration goes astray, it can make Anelok
unresponsive or difficult to use for a while. Using a "known
to be good" value would avoid this problem. But then, I don't
know whether a single such value actually exists.
- prevent entering the lower power-saving modes (DEVCFG option):
https://gitlab.com/anelok/anelok/commit/17511100b3c7d0a704fa1116a234a267cd6dda56
Theory: when switching off the boost converter, slider values
change and Anelok needs to re-calibrate to be able to still
read the slider while the boost converter is off. If such
re-calibration goes wrong, e.g., because there is still a
finger on the slider when turning off, it may prevent Anelok
from responding for a long time (eventually, periodic
calibration should resolve the issue, but this may take some
time.)
I'm getting fed up with the messy slider. It would seem to me that
one ought to be able to make this work, but I'm clearly too stupid
to figure out how.
Possible sources of avoidable trouble may include:
- fragile connection between main PCB and the slider PCB. I'm
using short cables that may break or detach from the solder
joint.
A broken connection would be a catastrophic failure that should
clearly stick out, but if contact is intermittent, that may be
harder to find.
The AAA design will use a proper board-to-board connector, but
also there, if I can make a prototype, it will have to do with
the non-ideal components I have at home.
- issues on the slider PCB. One of the battery contacts is very
close to a trace of the sensor, and there may be shorts,
possibly intermittently.
In the AAA design, this area is much less crowded.
- voltage variations. We already know that switching from boost
(3.3 V) to battery (2-3 V) significantly changes the sensor's
performance. There may also be smaller variations during
boosted operations, e.g., if the battery can't quite keep up
with the converter's current demand.
Since battery performance depends on temperature, this could
explain why I had trouble with the settings from Argentine
winter in late-summery Berlin.
The AAA design will run its boost converter all the time and
its battery will be able to keep up with any likely current
demand, so if a wobbly battery is indeed the main issue, that
will solve itself.
However, I suspect that also the processing of sensor data could
be considerably improved.
One of my devices responded well when on USB power, so once I
noticed that, I could at least show tethered Aneloks. This also
allowed me to demonstrate the HID keyboard feature, which people
generally liked.
A plan B for the slider would be to go back to mechanical
switches.
- Werner
Berlin and proved to be a major nuisance. Much of the time, it
flat out refused to work, or it would move only part of the
range.
I tried a few quick fixes, but they only made things worse.
Specifically, they are:
- for "on" mode, set a fixed calibration (via DEVCFG) and disable
auto-calibration:
https://gitlab.com/anelok/anelok/commit/b140c2f9a5c57051fafa782ae9b0b58970fb9298
Theory: if auto-calibration goes astray, it can make Anelok
unresponsive or difficult to use for a while. Using a "known
to be good" value would avoid this problem. But then, I don't
know whether a single such value actually exists.
- prevent entering the lower power-saving modes (DEVCFG option):
https://gitlab.com/anelok/anelok/commit/17511100b3c7d0a704fa1116a234a267cd6dda56
Theory: when switching off the boost converter, slider values
change and Anelok needs to re-calibrate to be able to still
read the slider while the boost converter is off. If such
re-calibration goes wrong, e.g., because there is still a
finger on the slider when turning off, it may prevent Anelok
from responding for a long time (eventually, periodic
calibration should resolve the issue, but this may take some
time.)
I'm getting fed up with the messy slider. It would seem to me that
one ought to be able to make this work, but I'm clearly too stupid
to figure out how.
Possible sources of avoidable trouble may include:
- fragile connection between main PCB and the slider PCB. I'm
using short cables that may break or detach from the solder
joint.
A broken connection would be a catastrophic failure that should
clearly stick out, but if contact is intermittent, that may be
harder to find.
The AAA design will use a proper board-to-board connector, but
also there, if I can make a prototype, it will have to do with
the non-ideal components I have at home.
- issues on the slider PCB. One of the battery contacts is very
close to a trace of the sensor, and there may be shorts,
possibly intermittently.
In the AAA design, this area is much less crowded.
- voltage variations. We already know that switching from boost
(3.3 V) to battery (2-3 V) significantly changes the sensor's
performance. There may also be smaller variations during
boosted operations, e.g., if the battery can't quite keep up
with the converter's current demand.
Since battery performance depends on temperature, this could
explain why I had trouble with the settings from Argentine
winter in late-summery Berlin.
The AAA design will run its boost converter all the time and
its battery will be able to keep up with any likely current
demand, so if a wobbly battery is indeed the main issue, that
will solve itself.
However, I suspect that also the processing of sensor data could
be considerably improved.
One of my devices responded well when on USB power, so once I
noticed that, I could at least show tethered Aneloks. This also
allowed me to demonstrate the HID keyboard feature, which people
generally liked.
A plan B for the slider would be to go back to mechanical
switches.
- Werner