woodygb wrote:Tah...I'm busily programming my own home built board with change over relay and R/C Calibration... not quite finished yet as I'm having probs getting the calibration numbers to either stick in the Arduino's memory or I am failing to retrieve them...not sure which.
Type 08 SACU General Information
This packet has similar intent to the SR General Information packet, conveying joystick and speed pot positions. If the SACU
does not implement speed control, it shall set its speed pot value to zero.
Byte 0: Joystick speed reading (7 MSbs)
Byte 1: Joystick direction reading (7 MSbs)
Byte 2: Speed pot reading (7 MSbs)
Byte 3:
bit 6: Speed pot reading LSb
bits 5-3: Joystick speed reading (3 LSbs)
bits 2-0: Joystick direction reading (3 LSbs)
Byte 4:
bit 6: Joystick Error (indicates joystick mirror fault or some such problem when set).
bit 5: Speed pot Error (indicates out-of range error or some such problem when set).
bit 4: Local fault (such as CPU fault) (set when there is a fault)
bit 3: Joystick Calibration active ( set when JC mode is active )
bit 2: SACU User/Attendant switch: 1 = Attendant, 0 = User.
bit 1: Local non-critical fault (causes "limp" mode)
bit 0: SACU Drive Inhibit
Byte 5:
bits 6-4: Not used
bits 3-0: Operating mode, defined as
00 Drive mode
01 Actuator 1 mode
02 Actuator 2 mode
03 Actuator 1+2 mode
04-0F currently undefined
Type Description
00 SR General Information
01 SPM General Information
02 SR HHP data
03 SPM HHP data
04 SR power-up information
05 SPM power-up information
06 SR Joystick Calibration information
07 SR Factory Test
08 SACU General Information
09 SACU power-up information
0A SPM Programmable Settings
woodygb wrote:Yes ..seems to work just fine.
There should be room on the blue board to stick a relay at the end of it, cut the traces for power if need be.
The blue boards are built to be cut up if the Pi stuff is not needed.
//this is the fail safe for the RC signal
else if (onOffVal < 500) {
sharkOffPackets();
OnOffState = LOW;
gcebiker wrote:
- Code: Select all
//this is the fail safe for the RC signal
else if (onOffVal < 500) {
sharkOffPackets();
OnOffState = LOW;
pungohboy wrote:In the video of it being used RC while sitting in it, it appears that it is connected through the XLR input on the stick is that an option or would it be best to tie it in with the lead going into the power module? I want to keep it as clean as possible but the xlr option would make it less invasive.
I see some other posts about programming the controller does anything like that need to be done? I was thinking about building up one of the dwiz adapters when i order these components but if there isnt a real reason i can hold off.
Thanks for any help you can provide.
With the joystick in place would the light on it light up when powered on when it is being remote controlled, and would the joystick be active at the same time or is it if powered on by RC the joystick is inactive and vice versa?
gcebiker wrote:Parts list looks right, only missing header pins to hold the Arduino off the components underneath.
That version of the Board also needs jumper from the 5v rail after the Cap/Traco2450 to the 5vIn of the Arduino, a switch could be soldered in or a jumper.
gcebiker wrote:This video may explain the wiring a bit better, the red JST plugs are tapped to the Shark Bus High and Low from the Shark Factory Joystick (but it remains powered).
Disconnecting the Shark bus, and connecting the emulator. Leaves both powered but only one connected to the Shark Bus (the cable between the Joystick/emulator and the power module)
woodygb wrote:You can add in a DPDT relay to switch between joystick or R/C module.
woodygb wrote:You should also consider safety when controlling something the size of a wheelchair via R/C.
Can your R/C setup failsafe on ALL channels or only one ?
They cant both be connected at the same time to provide a dual control scenario.
Type 08 SACU General Information
This packet has similar intent to the SR General Information packet, conveying joystick and speed pot positions. If the SACU
does not implement speed control, it shall set its speed pot value to zero.
Byte 0: Joystick speed reading (7 MSbs)
Byte 1: Joystick direction reading (7 MSbs)
Byte 2: Speed pot reading (7 MSbs)
Byte 3:
bit 6: Speed pot reading LSb
bits 5-3: Joystick speed reading (3 LSbs)
bits 2-0: Joystick direction reading (3 LSbs)
Byte 4:
bit 6: Joystick Error (indicates joystick mirror fault or some such problem when set).
bit 5: Speed pot Error (indicates out-of range error or some such problem when set).
bit 4: Local fault (such as CPU fault) (set when there is a fault)
bit 3: Joystick Calibration active ( set when JC mode is active )
bit 2: SACU User/Attendant switch: 1 = Attendant, 0 = User.
bit 1: Local non-critical fault (causes "limp" mode)
bit 0: SACU Drive Inhibit
Byte 5:
bits 6-4: Not used
bits 3-0: Operating mode, defined as
00 Drive mode
01 Actuator 1 mode
02 Actuator 2 mode
03 Actuator 1+2 mode
04-0F currently undefined
Notes:
When the SACU indicates a joystick error, it shall also send neutral joystick values.
When the SACU indicates a Speed Pot error, it shall also send a mid-range speed pot value.
When Joystick Calibration mode is active, the SACU will also send packet type 06: "Joystick calibration".
See "SR General Information" packet, above, for details on the protocol for changing Operating Modes.
Type 09 SACU power-up information
Byte 0: Year of manufacture, minus 2000 - for example, 01 is 2001, 127 is 2127.
Byte 1: bits 3-0: Month of manufacture ( 1 is January, 12 is December).
Byte 2: Serial number bits 20-14
Byte 3: Serial number bits 13-7
Byte 4: Serial number bits 6-0
Byte 5: Software version number
Byte 6: Capabilities:
bits 6-3: currently unused
bit 2: Supports Actuator 2 control
bit 1: Supports Actuator 1 control
bit 0: Supports speed control
The serial number format is chosen for compatibility with Dynamic Controls' standard serial number format (YYMXXXXX).
Allowance has been made such that the maximum serial number for any month can go up to 1,048,576. (they start at 10,000)
The encoding of the Software version number is as follows:
Bits 6-4: Software major version
Bit 3: "Pre-release flag": when set, this software is pre-release and is not suitable for production.
Bits 2-0: Software minor version.
For example, software version 1.1release candidate 2 will have a software version number of 0011001b or 0x19. Version 3.2
release will have a software version number of 0110010 or 0x32.
Return to Everything Powerchair
Users browsing this forum: iainsherriff, mrgus2u and 60 guests