Shop OBEX P1 Docs P2 Docs Learn Events
Is the 2-axis joystick pretty good? — Parallax Forums

Is the 2-axis joystick pretty good?

I'm disappointed with two joysticks that I took out of a cheap USB joypad. I soldered them to a Radioshack pcb and tried to calibrate them. They are not even close to being linear. They'll do for prototyping but there is no way I'd ever make them a permanent part of a project.
Is the Parallax 2-axis joystick a decent device?

Comments

  • mechanical yes, Very solid.

    linear? Hmm. Quite repeatable, but not really linear.

    Depends on your application.

    Enjoy!

    Mike
  • msrobots, 'repeatable' is good. I also tested my code with a regular potentiometer to double check. The pot was repeatable. The joysticks I hacked are trash. I'll order a couple from Parallax. Thanks.
  • PublisonPublison Posts: 12,366
    edited 2016-01-01 19:00
    You did not mention which Parallax Joystick.

    The 2-Axis Gimbal Joystick are linear taper, and very good quality:
    https://www.parallax.com/product/27808

    https://www.parallax.com/sites/default/files/downloads/27808-Gimbal-Joystick-w-Adapter-Guide-v1.1.pdf

    The kind that is used in R/C equipment.

  • lardomlardom Posts: 1,659
    edited 2016-01-01 20:26
    Publison wrote: »
    You did not mention which Parallax Joystick.

    The 2-Axis Gimbal Joystick are linear taper, and very good quality:
    https://www.parallax.com/product/27808

    https://www.parallax.com/sites/default/files/downloads/27808-Gimbal-Joystick-w-Adapter-Guide-v1.1.pdf

    The kind that is used in R/C equipment.
    The Gimbal Joystick is more than I need at the moment. The joysticks I was using would, for example, display a 5 then maybe a zero then perhaps a 7. Even worse, the values changed if I chose a different i/o pin.
    I wanted to use them because they also had a switch which would have allowed me to use with a modulus operator to change which i/o pins the joystick controlled.
  • Larry,
    Are you trying to use these with a BS2 or Propeller?
  • Publison, Propeller.
    A couple of years back Vanmunch built a wireless robot with an arm and a camera. I have wanted to build something similar since that time. I discovered the insanely cheap nrf24L01 but couldn't figure it out. It's well known among Arduino users but not so much in this community. Fortunately Duane Degn made his work available.
    I've made a lot of progress but what I've done so far is not worth sharing. I hard coded an LED to get brighter and dimmer repeatedly. My next step was to control brightness with a joystick and then, finally, to test motors
  • lardom wrote: »

    The Gimbal Joystick is more than I need at the moment. The joysticks I was using would, for example, display a 5 then maybe a zero then perhaps a 7. Even worse, the values changed if I chose a different i/o pin.
    I wanted to use them because they also had a switch which would have allowed me to use with a modulus operator to change which i/o pins the joystick controlled.



    I use the Parallax version to control my bot, if your getting that much variance out of the one's your using, they are unusable for any real control. The Parallax product centers @2, on both pots, with a possible 0 and 7 on each, using the Propeller RTC method. I have a circuit on the PPDB right now controlling two servos, (1-standard and 1-continuous) and LCD readout, making a line walker with panning ability. They are very stable, just add a switch if you need more control.
  • MikeDYur wrote: »
    I use the Parallax version to control my bot, if your getting that much variance out of the one's your using, they are unusable for any real control. The Parallax product centers @2, on both pots, with a possible 0 and 7 on each, using the Propeller RTC method. I have a circuit on the PPDB right now controlling two servos, (1-standard and 1-continuous) and LCD readout, making a line walker with panning ability. They are very stable, just add a switch if you need more control.
    That's good news. I ordered two Parallax joysticks a couple of days ago. While I'm waiting I'm using a standard pot to refine my code.
    I'm going to add a switch with a modulus operator to change what the joystick controls.
    One thing I haven't worked out yet is 'trimming' how it tracks. I'm using dc motors with differential steering and IR encoders require close tolerances. I don't want to be concerned with ambient light.
    A gyroscope is the easy way but I would like to test a trim 'pot'.
  • Duane DegnDuane Degn Posts: 10,588
    edited 2016-01-05 16:38
    Publison wrote: »
    You did not mention which Parallax Joystick.

    The 2-Axis Gimbal Joystick are linear taper, and very good quality:
    https://www.parallax.com/product/27808

    https://www.parallax.com/sites/default/files/downloads/27808-Gimbal-Joystick-w-Adapter-Guide-v1.1.pdf

    The kind that is used in R/C equipment.

    I'm also a fan of these joysticks. There are all sorts of adjustable gizmos on these joysticks. You can use one axis as the throttle by changing how a metal bar is positioned under the joystick. You can have the throttle stick move in continuous motion (as prefered by pilots of helicopters and quadcopters) or you can have the throttle advance with discrete clicks (airplanes pilots often prefer this sort of throttle).

    These joysticks do have a drawback. While I think the pot is nice and linear, the joystick's range of motion limits the wiper to about one fourth of the pots' possible settings.

    I've recently been trying to use the Arduino. Here's a recent video of using an Arduino to read a joystick and move a couple servos based on the joystick movement.



    Besides the joystick seen in the video, I also used the joystick I purchased from Parallax.

    Instead of ADC values ranging from 0 to 1023 as other joysticks produced, the nice one from Parallax would only allow ADC reading ranging from 379 to 632 on the x-axis and 391 to 651 on the y-axis.

    Rather than the usual 1024 range the ADC ranges from the two pots were 254 and 261. This ends up resulting in 8-bit input control rather than 10-bit input control.

    One obvious way to increase the resolution from the pots is to use a 12-bit ADC rather than a 10-bit ADC.

    I believe there are ADC chips which let you adjust the range being measured. I'm aware of ADC chips which let you use a different reference voltage but there are likely ADC which also allow you to set a reference ground. In this case, you'd want these references to match the extremes from the joystick output.



  • lardom wrote: »
    That's good news. I ordered two Parallax joysticks a couple of days ago. While I'm waiting I'm using a standard pot to refine my code.
    I'm going to add a switch with a modulus operator to change what the joystick controls.
    One thing I haven't worked out yet is 'trimming' how it tracks. I'm using dc motors with differential steering and IR encoders require close tolerances. I don't want to be concerned with ambient light.
    A gyroscope is the easy way but I would like to test a trim 'pot'.


    Let us know how the Parallax two axis joysticks worked out for you,

    https://www.parallax.com/product/27800

    I'm working on the receiving end of the 2-Axis Gimbal Joystick ADC control.
    I had foot surgery yesterday, and going to be pretty much immobile for a few weeks, if I can get my mind on track, and figure out how to make use of all the resolution, I want to achieve proportional steering and throttle, the need for slow precision control and all out speed are possible now.







  • MikeDYur wrote: »
    Let us know how the Parallax two axis joysticks worked out for you,

    https://www.parallax.com/product/27800

    I'm working on the receiving end of the 2-Axis Gimbal Joystick ADC control.
    I had foot surgery yesterday, and going to be pretty much immobile for a few weeks, if I can get my mind on track, and figure out how to make use of all the resolution, I want to achieve proportional steering and throttle, the need for slow precision control and all out speed are possible now.
    Here's my update. I ordered two basic joysticks without the gimbal. I'm using 'rctime' code so resolution is poor. That's OK for now.
    There are two main benefits over the joysticks I took out of a USB controller:
    1) I can plug them directly into a breadboard.
    2) They don't display 'out of range' values.
    That makes things easier.
    Currently, I can accelerate one wheel forward, reverse and stop when the joystick centers itself. I'm doing it wirelessly using the nrf24L01 modules with 4 binary bits. I'm enjoying that small success and I'll shortly start work on controlling two wheels. I want to achieve differential steering that will accelerate, turn and rotate. I want to use one joystick and get it done with 8 bits, wirelessly.
    Eventually, I want to add 'pan and tilt' for a camera and an arm with a gripper. I'm shooting for a 32-bit instruction.
    I hope you get better soon.
  • lardom wrote: »

    Here's my update. I ordered two basic joysticks without the gimbal. I'm using 'rctime' code so resolution is poor. That's OK for now.
    There are two main benefits over the joysticks I took out of a USB controller:
    1) I can plug them directly into a breadboard.
    2) They don't display 'out of range' values.
    That makes things easier.
    Currently, I can accelerate one wheel forward, reverse and stop when the joystick centers itself. I'm doing it wirelessly using the nrf24L01 modules with 4 binary bits. I'm enjoying that small success and I'll shortly start work on controlling two wheels. I want to achieve differential steering that will accelerate, turn and rotate. I want to use one joystick and get it done with 8 bits, wirelessly.
    Eventually, I want to add 'pan and tilt' for a camera and an arm with a gripper. I'm shooting for a 32-bit instruction.
    I hope you get better soon.

    Thanks for the well wishes, I have ditched the crutches and the cane, and getting around with just the boot now. Got some meaningful programming done in the last week and a half, now to see if it all works.
    Glad to here that the Parallax joysticks solved your problems, I know their products stand the test of time, and if they made a breakout board for a control like that, they must of has confidents in it's accuracy and reliability.
  • MikeDYur, I fully intend to upgrade to the better joystick but I have to break it down into 'small' steps. This is my biggest programming challenge to date, by far.
    I also bought a Parallax gyroscope but I looked at the documentation and it will be one the last things I try to integrate.
  • lardom wrote: »
    MikeDYur, I fully intend to upgrade to the better joystick but I have to break it down into 'small' steps. This is my biggest programming challenge to date, by far.
    I also bought a Parallax gyroscope but I looked at the documentation and it will be one the last things I try to integrate.



    I know all about small steps, I thought I had meaningful time to spend on the concentration it takes to get in the mindset to come up with something that works, (intenional run on sentence) I didn't do to bad I guess, just backward to the way it's supposed to be.


    Have fun with the Parallax gyroscope, it's easy to integrate into a project, the examples available are very well documented. I don't have a reason to put into a project, yet.


Sign In or Register to comment.