blob: ae12689e9137c41efb7208be9e7febbaacbe242b [file] [log] [blame]
Brian Silvermanf819b442019-01-20 16:51:04 -08001load("//frc971:downloader.bzl", "robot_downloader")
Alex Perrycb7da4b2019-08-28 19:35:56 -07002load("//aos:config.bzl", "aos_config")
Comran Morshed9a9948c2016-01-16 15:58:04 +00003
4cc_library(
Brian Silverman6470f442018-08-05 12:08:16 -07005 name = "constants",
6 srcs = [
7 "constants.cc",
8 ],
9 hdrs = [
10 "constants.h",
11 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080012 target_compatible_with = ["@platforms//os:linux"],
Brian Silverman6470f442018-08-05 12:08:16 -070013 visibility = ["//visibility:public"],
14 deps = [
John Park33858a32018-09-28 23:05:48 -070015 "//aos/logging",
16 "//aos/network:team_number",
Brian Silverman1463c092020-10-30 17:28:24 -070017 "//aos/stl_mutex",
Brian Silverman6470f442018-08-05 12:08:16 -070018 "//frc971:constants",
19 "//frc971:shifter_hall_effect",
20 "//frc971/control_loops:state_feedback_loop",
21 "//y2016/control_loops/drivetrain:polydrivetrain_plants",
Austin Schuhed5b26d2019-12-05 20:51:59 -080022 "@com_google_absl//absl/base",
Brian Silverman6470f442018-08-05 12:08:16 -070023 ],
Comran Morshed9a9948c2016-01-16 15:58:04 +000024)
25
26cc_binary(
Brian Silverman6470f442018-08-05 12:08:16 -070027 name = "joystick_reader",
28 srcs = [
29 "joystick_reader.cc",
30 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080031 target_compatible_with = ["@platforms//os:linux"],
Brian Silverman6470f442018-08-05 12:08:16 -070032 deps = [
33 ":constants",
John Park398c74a2018-10-20 21:17:39 -070034 "//aos:init",
Brian Silvermanf819b442019-01-20 16:51:04 -080035 "//aos/actions:action_lib",
Austin Schuha250b2d2019-05-27 16:14:02 -070036 "//aos/input:action_joystick_input",
Brian Silvermanf819b442019-01-20 16:51:04 -080037 "//aos/logging",
38 "//aos/time",
39 "//aos/util:log_interval",
Alex Perrycb7da4b2019-08-28 19:35:56 -070040 "//frc971/autonomous:auto_fbs",
41 "//frc971/control_loops/drivetrain:drivetrain_goal_fbs",
42 "//frc971/control_loops/drivetrain:drivetrain_status_fbs",
James Kuszmaul75a18c52021-03-10 22:02:07 -080043 "//frc971/control_loops/drivetrain:spline_goal_fbs",
Tyler Chatow24b5db12020-01-06 21:16:56 -080044 "//frc971/queues:gyro_fbs",
Brian Silverman6470f442018-08-05 12:08:16 -070045 "//y2016/actors:autonomous_action_lib",
46 "//y2016/actors:superstructure_action_lib",
47 "//y2016/actors:vision_align_action_lib",
Alex Perrycb7da4b2019-08-28 19:35:56 -070048 "//y2016/control_loops/shooter:shooter_goal_fbs",
49 "//y2016/control_loops/superstructure:superstructure_goal_fbs",
Brian Silverman6470f442018-08-05 12:08:16 -070050 "//y2016/control_loops/superstructure:superstructure_lib",
Alex Perrycb7da4b2019-08-28 19:35:56 -070051 "//y2016/control_loops/superstructure:superstructure_status_fbs",
52 "//y2016/queues:ball_detector_fbs",
Brian Silverman6470f442018-08-05 12:08:16 -070053 ],
Comran Morshed9a9948c2016-01-16 15:58:04 +000054)
55
Lee Mracek6821fe02018-11-01 17:27:30 -040056robot_downloader(
Tyler Chatow24b5db12020-01-06 21:16:56 -080057 data = [
Austin Schuh14d7d3d2020-09-10 18:14:36 -070058 ":config",
Tyler Chatow24b5db12020-01-06 21:16:56 -080059 ],
Brian Silvermanf819b442019-01-20 16:51:04 -080060 dirs = [
61 "//y2016/dashboard:www_files",
62 ],
63 start_binaries = [
64 ":joystick_reader",
65 ":wpilib_interface",
66 "//y2016/control_loops/drivetrain:drivetrain",
67 "//y2016/control_loops/superstructure:superstructure",
68 "//y2016/control_loops/shooter:shooter",
69 "//y2016/dashboard:dashboard",
70 "//y2016/actors:autonomous_action",
71 "//y2016/actors:superstructure_action",
72 "//y2016/actors:vision_align_action",
73 "//y2016/vision:target_receiver",
74 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080075 target_compatible_with = ["@platforms//os:linux"],
Austin Schuhc80dd152016-02-29 01:47:44 -080076)
Brian Silverman06016bc2017-02-11 16:34:34 -080077
Alex Perrycb7da4b2019-08-28 19:35:56 -070078aos_config(
79 name = "config",
80 src = "y2016.json",
81 flatbuffers = [
82 "//y2016/control_loops/shooter:shooter_goal_fbs",
83 "//y2016/control_loops/shooter:shooter_output_fbs",
84 "//y2016/control_loops/shooter:shooter_position_fbs",
85 "//y2016/control_loops/shooter:shooter_status_fbs",
86 "//y2016/control_loops/superstructure:superstructure_goal_fbs",
87 "//y2016/control_loops/superstructure:superstructure_output_fbs",
88 "//y2016/control_loops/superstructure:superstructure_position_fbs",
89 "//y2016/control_loops/superstructure:superstructure_status_fbs",
90 "//y2016/queues:ball_detector_fbs",
Tyler Chatow24b5db12020-01-06 21:16:56 -080091 "//y2016/vision:vision_fbs",
92 "//y2019/control_loops/drivetrain:target_selector_fbs",
93 "//y2016/actors:vision_align_action_fbs",
94 "//y2016/actors:superstructure_action_fbs",
Alex Perrycb7da4b2019-08-28 19:35:56 -070095 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080096 target_compatible_with = ["@platforms//os:linux"],
Alex Perrycb7da4b2019-08-28 19:35:56 -070097 visibility = ["//visibility:public"],
98 deps = [
99 "//aos/robot_state:config",
Tyler Chatow24b5db12020-01-06 21:16:56 -0800100 "//frc971/autonomous:config",
Alex Perrycb7da4b2019-08-28 19:35:56 -0700101 "//frc971/control_loops/drivetrain:config",
Tyler Chatow24b5db12020-01-06 21:16:56 -0800102 "//frc971/wpilib:config",
Alex Perrycb7da4b2019-08-28 19:35:56 -0700103 ],
104)
105
Brian Silverman06016bc2017-02-11 16:34:34 -0800106cc_binary(
Brian Silverman6470f442018-08-05 12:08:16 -0700107 name = "wpilib_interface",
108 srcs = [
109 "wpilib_interface.cc",
110 ],
Philipp Schraderdada1072020-11-24 11:34:46 -0800111 target_compatible_with = ["//tools/platforms/hardware:roborio"],
Brian Silverman6470f442018-08-05 12:08:16 -0700112 deps = [
113 ":constants",
Brian Silvermanf819b442019-01-20 16:51:04 -0800114 "//aos:init",
115 "//aos:make_unique",
John Park33858a32018-09-28 23:05:48 -0700116 "//aos:math",
John Park33858a32018-09-28 23:05:48 -0700117 "//aos/controls:control_loop",
118 "//aos/logging",
Alex Perrycb7da4b2019-08-28 19:35:56 -0700119 "//aos/robot_state:robot_state_fbs",
Brian Silvermanf819b442019-01-20 16:51:04 -0800120 "//aos/stl_mutex",
121 "//aos/time",
John Park33858a32018-09-28 23:05:48 -0700122 "//aos/util:log_interval",
123 "//aos/util:phased_loop",
124 "//aos/util:wrapping_counter",
Alex Perrycb7da4b2019-08-28 19:35:56 -0700125 "//frc971/autonomous:auto_fbs",
Austin Schuhed5b26d2019-12-05 20:51:59 -0800126 "//frc971/autonomous:auto_mode_fbs",
Alex Perrycb7da4b2019-08-28 19:35:56 -0700127 "//frc971/control_loops:control_loops_fbs",
128 "//frc971/control_loops/drivetrain:drivetrain_output_fbs",
129 "//frc971/control_loops/drivetrain:drivetrain_position_fbs",
Brian Silverman6470f442018-08-05 12:08:16 -0700130 "//frc971/wpilib:ADIS16448",
131 "//frc971/wpilib:buffered_pcm",
132 "//frc971/wpilib:dma",
133 "//frc971/wpilib:dma_edge_counting",
Sabina Davisb71bc282019-02-03 01:17:23 -0800134 "//frc971/wpilib:drivetrain_writer",
Brian Silverman6470f442018-08-05 12:08:16 -0700135 "//frc971/wpilib:encoder_and_potentiometer",
136 "//frc971/wpilib:gyro_sender",
137 "//frc971/wpilib:interrupt_edge_counting",
138 "//frc971/wpilib:joystick_sender",
Alex Perrycb7da4b2019-08-28 19:35:56 -0700139 "//frc971/wpilib:logging_fbs",
Brian Silverman6470f442018-08-05 12:08:16 -0700140 "//frc971/wpilib:loop_output_handler",
141 "//frc971/wpilib:pdp_fetcher",
Austin Schuh54667ac2019-02-02 16:44:49 -0800142 "//frc971/wpilib:sensor_reader",
Brian Silverman6470f442018-08-05 12:08:16 -0700143 "//frc971/wpilib:wpilib_robot_base",
144 "//third_party:wpilib",
145 "//y2016/control_loops/drivetrain:polydrivetrain_plants",
Alex Perrycb7da4b2019-08-28 19:35:56 -0700146 "//y2016/control_loops/shooter:shooter_output_fbs",
147 "//y2016/control_loops/shooter:shooter_position_fbs",
148 "//y2016/control_loops/superstructure:superstructure_output_fbs",
149 "//y2016/control_loops/superstructure:superstructure_position_fbs",
150 "//y2016/queues:ball_detector_fbs",
Brian Silverman6470f442018-08-05 12:08:16 -0700151 ],
152)
153
154py_library(
155 name = "python_init",
156 srcs = ["__init__.py"],
Philipp Schraderdada1072020-11-24 11:34:46 -0800157 target_compatible_with = ["@platforms//os:linux"],
Brian Silverman6470f442018-08-05 12:08:16 -0700158 visibility = ["//visibility:public"],
Brian Silverman06016bc2017-02-11 16:34:34 -0800159)