HandShakeTec

Built: 2026-09-02 12:49:14 BST

This website contains the tools and instructions needed to configure and program the watch and receiver used to create the HandShake system.

The HandShake project

HandShake helps people who cannot speak and who cannot operate standard controllers such as buttons or joysticks, to access communication and assistive technology through their own natural movement.

This 30 second video shows HandShake in Real World use.

A commercially available smart-watch is used to detect an intentional movement such as a hand movement, a foot tap or any other deliberate gesture the person can make. This is turned into a keyboard key press by the receiver unit.

This enables the operation of speech-generating software or any other keyboard controlled device, opening up access to people who would otherwise be excluded from existing AAC technologies.

I’ve had the system in long-term use and testing at a specialist college for over a year. It works to help some people and not others, just like any other assistive tec.

HandShake can be set up by buying the smart-watch and receiver, then configuring and programming the two devices through the project website. This way, the system can be implemented for about £80.

HandShake uses a Lilygo T-Watch S3 as the smart-watch and a Lilygo T-Embed as the receiver. The two devices can be seen in the picture below.

Lilygo T-Watch S3 and Lilygo T-Embed

I got hold of the compliance documents for the two devices and put the documents here in case you need them for a risk assessment.

Once you create and download the firmware that is used on the devices, you own it. There are no subscriptions and no updates required to keep the code running on the watch or receiver.

For more information on the HandShake project, see this page or about this site.

Getting Started

To get rolling with HandShake click here

Don’t worry if you flash the T-Watch firmware to the T-Embed or vice-versa, just reflash with the correct firmware. You won’t break it!

Privacy

This site collects no personal information.

The information that is logged is:

This is done so that I can keep track of whether the site is working fast enough and to check that everything still works.

If information you entered during the last session appears in any controls, it is because your browser saved it. Once your session expires, your setup data is deleted from this server. The settings that appear when you first use the system are the default values that I use.

Limitations

The system is configured so that there can be up to 8 sessions active at the same time. However, it takes an hour for a session to expire. If you can’t get onto the system, let me know and I’ll look at reconfiguring things to allow more concurrent users.

History

I started working on the project a long time ago and if anybody is interested there’s a history of prototypes here.

About this service

HandShake is a free, open-source configuration and firmware service for the Lilygo T-Watch S3 and T-Embed. It lets you generate and flash device firmware that turns these devices into components of an AAC (Augmentative and Alternative Communication) switch interface.

We do not sell, modify, or supply hardware. Devices are purchased directly from Lilygo and arrive as unmodified, manufacturer-certified products (CE/FCC). This site provides configuration and firmware only.

No warranty

This software is provided “as is”, without warranty of any kind, express or implied, including but not limited to warranties of merchantability, fitness for a particular purpose, and non-infringement. In no event shall the authors or contributors be liable for any claim, damages, or other liability arising from, out of, or in connection with the software or its use.

Important safety note

HandShake-configured devices may be used to support access to communication for people who rely on AAC. Because of this, we strongly recommend:

This tool is provided in good faith to support AAC access, but it is not a certified medical device, and responsibility for confirming a device’s suitability for an individual’s needs rests with the person or professional deploying it.

Reporting issues

Found a bug, or had a device behave unexpectedly? Please contact matt@mattoppenheim.com. Include a description of what happened — this helps us fix it and warn other users if needed.

License

HandShake firmware is licensed under AGPLv3. This configuration website’s source will be made available once it’s fully functional and tested at https://gitlab.com/mattoppenheim/handshake/handshake_website