I've been thinking about making a project where I repurpose the mechanical parts of an old joystick (ch products), including the buttons. Such that I will drive the whole system with Cypress CY8CKIT-059 PSoC 5LP board. I will probably use PSoC creator for programming eventually.
- My question is mainly about selecting proper contactless sensors for the joystick x and y-axes. How do I go about selecting analog hall-effect sensor and magnet, for a project like this? The alternative might be magnetoresistive sensor. The least wanted alternative would be good old potentiometer, but I would prefer to have contactless sensors for the x- axis and y-axis.
How should I actually arrange the sensors and magnets inside the mechanical chassis of the joystick? The joystick inside mechanical arrangement in its original configuration with the old potentiometers can be seen clearly in this video (video not by me) https://youtu.be/wMIF-RESIHU?t=2014
My understanding is that if I need to have the hall-effect sensors, I should put the magnets at the shaft of the joystick, and one sensor per axis at the endpoints of the axis (so the sensors are stationary, and magnets are attached to the moving shaft of the joystick at the bottom). So, when the joystick is pushed forwards, then for example, the magnet gets further away to the respective sensor (y-axis sensor), and when the joystick is pulled back, then the magnet gets closer to the respective sensor (y-axis sensor). The original joystick did have the spring arrangement for resistance against the movement and recentering the joystick, which I was hoping to keep the same.
I would prefer if the sensors didnt have to cost an arm-and-a-leg. This is mostly a project idea thusfar and the school would sponsor the parts as long as its not ridiculously expensive. And I already have the Cypress board and the old joystick to be repurposed.
I know that If I need hall-effect, I will need analog hall sensors of some type and magnets so the sensor can register values, when the joystick is pushed to the side or forwards etc... I will possibly need an extra ADC also, but the Cypress board should have a ready to use ADC from what I understood.
- I can probably manage with the repurposing the old regular push buttons, but the axes do require new sensor arrangement most likely.
- the old joystick had potentiometers for all axes, and a totally different chip of its own, but the whole impetus for the project had been about having better resolution than the original joystick (8bit 0-255 values)
- also have contactless sensors for the x and y- axes (roll and pitch axes). This would indicate that I would have to have either Hall-effect sensors or magnetoresistive sensors for the joystick axes
the project should be a ready to use USB HID joystick at the end, so I can calibrate and use it with win10, I've looked at some code examples and apparently it can be done readily, as long as you somehow get the joystick axes working (the code examples used some psoc demonstration chip with its own axes working on potentiometers) (here is a link to the USB-HID portion, you can see the pdf file in the related files section) https://www.cypress.com/documentation/application-notes/an57473-usb-hid-basics-psoc-3-and-psoc-5lp
as a sidenote, the joystick has potential for three more axes at the base of the joystick (plus the regular roll and pitch controls x axis and y axis). But the accuracy requirements probably wouldnt be that great for those and perhaps I could use potentiometer for those axes for simplicity (?)