Joystick mouse
    
    Joystick mice are usually intended for special applications, like
    industrial applications or to help disabled people to use computer.
    But it can be quite comfortable for normal desktop use as well.
    
    Some years ago I got a Genge & Thoma SK 60-200 industrial
    joystick from my colleague. Wondering what could be done with it, I
    came up with idea to make a joystick mouse. I used the same HW as in
    my Atari joystick adapter, only the PIC firmware needed some
    tweaking. The mouse is seen by the computer as standard HID mouse
    which works without drivers on any recent OS (Windows, Linux, Mac
    etc.).
    
    
    
    I decided to install the mouse and buttons directly to my desk at
    work to get optimum ergonomics. So it was time for some power
    drilling action:
    
    
    
    It might look like the button holes are placed randomly but they are
    actually well thought. The left button is convenient to use with
    ring finger while right button is perfect to click with thumb. The
    finished install looks kinda Mickey Mouse:
    
    
    
    Yes I'm left handed. I can use a regular mouse equally well with
    either left or right hand, but joysticks I have always used with
    left hand. The buttons are cheap arcade buttons which have very
    light spring pressure and clicking micro switch. I have removed the
    rubber boot from the joystick as it was killing the feel and
    precision. Just have to be careful no to spill coffee on it...
    
    I have used the joystick mouse for about three years now, together
    with ordinary mouse. They can both be connected at same time with no
    problems. I use joystick mouse with left hand and standard mouse
    with right hand. The joystick mouse is not so good for applications
    which require accuracy, such as CAD software. But for usual desktop
    work, browsing etc. I find it very useful. The ergonomics are far
    better than using a mouse. You notice this when working for long
    sessions. No wrist ache 'mouse hand', because wrist is in more
    natural position.
    
    I have also tried to use a trackball, Kensington
      Expert Mouse, but I didn't like the ergonomics. You have to
    keep your wrist in uncomfortable position because the ball is so
    large, and thus high from desk. Perhaps if trackball was integrated
    in desk it would be much better.
    Hardware
    The readout electronics are identical to JAKADAPTER. Any layout version
    of 2.1 HW can be used. There is also a version which uses only
    though-hole components which is easy to build. Looking at Jakadapter circuit
      diagram, the 220 k resistors are not necessary here. Also most
    of the 5 k resistors could be left out as well, only R5 and R11 are
    needed. Leaving all resistors installed does not harm operation of
    joystick mouse, if joystick potentiometers have low resistance
    compared to 220 k. Then you can use the same adapter also for Atari
    / Commodore joystick by changing the FW via bootloader.
    
    The joystick which I have used has 5 kohm linear pots on both axes,
    but other values should work also OK. The ends of the pots are
    connected to GND and +5V. The pot wiper contact voltage is the read
    with PIC ADC. Buttons are read as digital inputs, connected between
    PIC input and ground. All connections can be made to JAKADAPTER
    connector X1 with following pinout:
    
    
      
        
          | X1 connector pin 
 | Joystick mouse connection 
 | 
        
          | 4 
 | Right mouse button 
 | 
        
          | 5 
 | Y-axis pot wiper 
 | 
        
          | 6 
 | Left mouse button 
 | 
        
          | 7 
 | +5V 
 | 
        
          | 8 
 | Ground 
 | 
        
          | 9 
 | X-axis pot wiper 
 | 
      
    
    
    Firmware
    The firmware is written with CCS
        PIC C compiler. The firmware including sources and compiled
      hex is available below. The USB descriptor file which I have
      modified for this use is not included, as it is CCS copyrighted
      code. If you have the compiler and need the file, drop me an
      email. The included .hex file is compiled to be used with this bootloader, so
        you must first program the bootloader with Pickit3 or ICD3, and
        then flash the joystick mouse hex file with the bootloader
        software. Later, if needed, you can enter bootloader mode by
      keeping left mouse button pressed when connecting USB cable.
    
    HID_Joystick_mouse_v04.zip   
      (Version 0.4, Jan 11. 2015. Compiled with CCS compiler v5.021)
    Currently the firmware is very simple. The center position is
    calibrated only at startup, so joystick must not be touched when
    connecting the USB cable or booting up the PC.
     
    
    page created 11.9.2015
      last updated 12.9.2015 webmaster@kair.us