lordB8r / sharkbus

Code for controlling Invcare Sharkbus protocol wheelchairs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

sharkbus

Code for controlling Invcare Sharkbus protocol wheelchairs

This repo contains both Python and C code for communicating with an Invacare Pronto wheelchair. The chair uses the Sharkbus protocol to communicate from the joystick to the motor controller.

This code was worked out through a combination of reverse engineering, with a little help from an insider at Invacare who filled in the gaps I hadn't worked out.

The python code is probably easier to understand, and I'd recommend looking at the hexportmon/sharkmon.py for an example of decoding the Sharkbus messages.

The 'brainstem' folder contains my C reimplementation of the python code - sacu.c contains most of the goodies.

The timing contstraints on SharkBus are very strict, and failure to deliver a message in the appropriate time slot will result in the wheelchair going into an error condition and refusing to accept any further commands.

Hope this repo helps someone out.

About

Code for controlling Invcare Sharkbus protocol wheelchairs


Languages

Language:C 56.5%Language:Python 21.7%Language:HTML 13.9%Language:C++ 7.3%Language:Makefile 0.6%