Pulling Digital Output from the Amiga Joystick?

Hi team,

I was curious if there is any way to pull a digital output from the controller attached to the Amiga? Our team is hoping to use the onboard joystick to control our system through a microcontroller.

Thank you in advance for any information on this.

Hi @oktaylorbrown,

It would NOT be recommended to take the pendant apart to pull digital output from the microcontroller inside, as any damage to the pendant caused thereafter would likely not be under warranty and you could be without a working pendant / functioning robot until you order a replacement.

What is recommended, is what you’re trying to do by connecting an additional CAN-enabled microcontroller to your system, like the Microcontroller kit.

To do accomplish your goal on the microcontroller, you can:

  1. Start with the Hello Main Loop Example | Farm-ng Developers

  2. Parse for PendantState packets
    with something like:

self.main_loop.command_handlers[CanOpenObject.TPDO1 | PENDANT_NODE_ID] = self._your_pendant_handler
  • If using the joystick, read the x & y float values
  • If using the buttons from the pendant, read the buttons int value and bitmask corresponding to the PendantButtons bit field
  1. Follow the Circuitpython docs for digital out to do whatever you’re trying to do: digitalio – Basic digital pin support — Adafruit CircuitPython 8.1.0-beta.1 documentation

I hope this helps.
– Kyle