1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
// Copyright (c) FIRST and other WPILib contributors.
// Open Source Software; you can modify and/or share it under the terms of
// the WPILib BSD license file in the root directory of this project.
#pragma once
#include <stdint.h>
#include "hal/Types.h"
/**
* @defgroup hal_canapi CAN API Functions
* @ingroup hal_capi
* @{
*/
/**
* The CAN device type.
*
* Teams should use HAL_CAN_Dev_kMiscellaneous
*/
HAL_ENUM(HAL_CANDeviceType) {
/// Broadcast.
HAL_CAN_Dev_kBroadcast = 0,
/// Robot controller.
HAL_CAN_Dev_kRobotController = 1,
/// Motor controller.
HAL_CAN_Dev_kMotorController = 2,
/// Relay controller.
HAL_CAN_Dev_kRelayController = 3,
/// Gyro sensor.
HAL_CAN_Dev_kGyroSensor = 4,
/// Accelerometer.
HAL_CAN_Dev_kAccelerometer = 5,
/// Distance sensor.
HAL_CAN_Dev_kDistanceSensor = 6,
/// Encoder.
HAL_CAN_Dev_kEncoder = 7,
/// Power distribution.
HAL_CAN_Dev_kPowerDistribution = 8,
/// Pneumatics.
HAL_CAN_Dev_kPneumatics = 9,
/// Miscellaneous.
HAL_CAN_Dev_kMiscellaneous = 10,
/// IO breakout.
HAL_CAN_Dev_kIOBreakout = 11,
/// Servo controller.
HAL_CAN_Dev_kServoController = 12,
/// Color Sensor.
HAL_CAN_Dev_ColorSensor = 13,
/// Firmware update.
HAL_CAN_Dev_kFirmwareUpdate = 31
};
/**
* The CAN manufacturer ID.
*
* Teams should use HAL_CAN_Man_kTeamUse.
*/
HAL_ENUM(HAL_CANManufacturer) {
/// Broadcast.
HAL_CAN_Man_kBroadcast = 0,
/// National Instruments.
HAL_CAN_Man_kNI = 1,
/// Luminary Micro.
HAL_CAN_Man_kLM = 2,
/// DEKA Research and Development Corp.
HAL_CAN_Man_kDEKA = 3,
/// Cross the Road Electronics.
HAL_CAN_Man_kCTRE = 4,
/// REV robotics.
HAL_CAN_Man_kREV = 5,
/// Grapple.
HAL_CAN_Man_kGrapple = 6,
/// MindSensors.
HAL_CAN_Man_kMS = 7,
/// Team use.
HAL_CAN_Man_kTeamUse = 8,
/// Kauai Labs.
HAL_CAN_Man_kKauaiLabs = 9,
/// Copperforge.
HAL_CAN_Man_kCopperforge = 10,
/// Playing With Fusion.
HAL_CAN_Man_kPWF = 11,
/// Studica.
HAL_CAN_Man_kStudica = 12,
/// TheThriftyBot.
HAL_CAN_Man_kTheThriftyBot = 13,
/// Redux Robotics.
HAL_CAN_Man_kReduxRobotics = 14,
/// AndyMark.
HAL_CAN_Man_kAndyMark = 15,
/// Vivid-Hosting.
HAL_CAN_Man_kVividHosting = 16,
/// Vertos Robotics.
HAL_CAN_Man_kVertosRobotics = 17,
/// SWYFT Robotics.
HAL_CAN_Man_kSWYFTRobotics = 18,
/// Lumyn Labs.
HAL_CAN_Man_kLumynLabs = 19,
/// Brushland Labs
HAL_CAN_Man_kBrushlandLabs = 20
};
/** @} */