def Decode_Arb_ID(arbID):
    """ The Decode_Arb_ID will decode the arbitraion ID based upon the CTRE/FRC
    CANbus implementation.

    Input(s)
    ----------
    arbID : bytes
        This is the 4-byte CAN arbitration ID

    Return(s)
    ----------
    deviceType : string
        This is the 16-bit value representing the device
    frameType : string
        This is the 10-bit value representing the frame type
    deviceID : string
        This is a unique 6-bit value of the specific device

    """

    deviceType = '0x'+arbID[0:4]
    frameType = '0x'+hex(int(arbID[4:8], 16) & 0xFFC0)[2:].zfill(4)
    deviceID = int(arbID[6:8], 16) & 0x003F
    return [deviceType, frameType, deviceID]