Skip to content

Project PLUG (Pins Less Utilisation Goal) #431

@auscompgeek

Description

@auscompgeek

(blame Gemini for the backronym, the other one I got was "Wire-reduction Initiative for Robotic Electronic Designs")

Problem

SystemCore only exposes 6 "smart I/O" pins.

“Smart I/O ports” capable of flexing between analog input, digital input (including PWM), digital output, and PWM output

We're currently using... 9 DIO pins on the roboRIO:

pyreefscape/ids.py

Lines 54 to 72 in 391246f

"""roboRIO Digital I/O channel number."""
STARBOARD_VISION_ENCODER = 1
SWERVE_COAST_SWITCH = 2
INTAKE_ENCODER = 3
CLIMBER_ENCODER = 4
ALGAE_INTAKE_SWITCH = 5
LEFT_CLIMBER_SWITCH = 6
RIGHT_CLIMBER_SWITCH = 7
WRIST_ENCODER = 8
PORT_VISION_ENCODER = 9

and that's not counting the 3 PWM pins we're using too:

pyreefscape/ids.py

Lines 77 to 82 in 391246f

"""roboRIO PWM output channel number."""
STARBOARD_VISION_SERVO = 0
PORT_VISION_SERVO = 8
LIGHT_STRIP = 2

Solution

See if we can't wire up a bunch of these encoders and switches to motor controllers instead.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions