From: Aditya Dash <mradityadash@gmail.com>
To: "Derek J . Clark" <derekjohn.clark@gmail.com>
Cc: Benjamin Tissoires <bentiss@kernel.org>,
Jiri Kosina <jikos@kernel.org>,
Mark Pearson <mpearson-lenovo@squebb.ca>,
linux-input@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3 5/7] HID: hid-lenovo-go: normalize calibration failure status
Date: Sat, 5 Sep 2026 11:40:54 +0530 [thread overview]
Message-ID: <20260905061054.50663-1-mradityadash@gmail.com> (raw)
In-Reply-To: <205C547F-BF6B-43D3-A8F0-829B657167EC@gmail.com>
Hi Derek,
The Stop reply changes based on calibration state. Its status appears to be
the current failure_mask + 1. However, this mask does not always match the
failure mask returned when calibration times out.
Here are some requests and responses from the experiments done:
Joystick calibration:
Left Start:
05 00 0c 04 03 01 ...
Left Stop:
05 00 0c 04 03 02 ...
No movement:
Without Stop:
04 00 a0 02 03 02 02 07 00 ...
With Stop:
04 00 a0 02 03 02 06 00 00 ...
The timeout error contains deflection 0x01, center 0x02, and turns 0x04.
Stop does not set the center bit, giving mask 0x05 and status 0x06.
One full outer turn, returned to center:
Without Stop:
04 00 a0 02 03 02 02 06 00 ...
With Stop:
04 00 a0 02 03 02 05 00 00 ...
The timeout error contains center 0x02 and turns 0x04. Stop does not set the
center bit, giving mask 0x04 and status 0x05.
One full outer turn, then held away from center (right controller):
Without Stop:
04 00 a0 02 04 02 02 06 00 ...
With Stop:
04 00 a0 02 04 02 07 00 00 ...
Two full outer turns, then held away from center:
Without Stop:
04 00 a0 02 03 02 02 02 00 ...
With Stop:
04 00 a0 02 03 02 03 00 00 ...
Stop with no calibration running:
04 00 a0 02 03 02 08 00 00 ...
Trigger calibration:
Start:
05 00 0a 04 03 01 ...
Stop:
05 00 0a 04 03 02 ...
One full press and release:
Without Stop:
04 00 a0 02 03 03 02 00 06 ...
With Stop:
04 00 a0 02 03 03 05 00 00 ...
The nonzero timeout reason byte is 0x06: return 0x02 and press count 0x04.
Stop does not set the return bit, giving mask 0x04 and status 0x05.
Gyroscope calibration:
Start:
05 00 0e 06 03 01 ...
Stop:
05 00 0e 06 03 02 ...
Continuous movement:
Without Stop:
04 00 a0 02 03 01 02 01 00 ...
With Stop:
04 00 a0 02 03 01 02 02 00 ...
The reason changes from 0x0001 to 0x0002 although no connection change was
made. The cause of this discrepancy is not known.
Successful calibration responses were as expected. The corresponding cases
produced the same outcomes on the other controller where repeated.
Connection-change cases are not yet tested.
Thanks,
Aditya
next prev parent reply other threads:[~2026-09-05 6:11 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-01 6:36 [PATCH v3 0/7] HID: hid-lenovo-go: fix controller configuration Aditya Dash
2026-09-01 6:36 ` [PATCH v3 1/7] HID: hid-lenovo-go: use the correct calibration commands Aditya Dash
2026-09-01 6:50 ` sashiko-bot
2026-09-01 6:36 ` [PATCH v3 2/7] HID: hid-lenovo-go: use the right controller selectors Aditya Dash
2026-09-01 6:46 ` sashiko-bot
2026-09-01 6:36 ` [PATCH v3 3/7] HID: hid-lenovo-go: initialize command completion before hardware Aditya Dash
2026-09-01 6:48 ` sashiko-bot
2026-09-01 6:36 ` [PATCH v3 4/7] HID: hid-lenovo-go: return configuration request errors Aditya Dash
2026-09-01 6:50 ` sashiko-bot
2026-09-01 6:36 ` [PATCH v3 5/7] HID: hid-lenovo-go: normalize calibration failure status Aditya Dash
2026-09-01 6:50 ` sashiko-bot
2026-09-01 15:57 ` Derek John Clark
2026-09-01 17:06 ` Aditya
2026-09-02 12:40 ` Derek J. Clark
2026-09-05 6:10 ` Aditya Dash [this message]
2026-09-01 6:36 ` [PATCH v3 6/7] HID: hid-lenovo-go: reject unknown calibration action Aditya Dash
2026-09-01 6:48 ` sashiko-bot
2026-09-01 6:36 ` [PATCH v3 7/7] HID: hid-lenovo-go: clear calibration status on start Aditya Dash
2026-09-01 7:00 ` sashiko-bot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260905061054.50663-1-mradityadash@gmail.com \
--to=mradityadash@gmail.com \
--cc=bentiss@kernel.org \
--cc=derekjohn.clark@gmail.com \
--cc=jikos@kernel.org \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mpearson-lenovo@squebb.ca \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox