blob: 09d2bc9d08a33efbabb46747224176a30ba8cd62 [file] [log] [blame]
Austin Schuh2a3e0632018-02-19 16:24:49 -08001load("//aos/downloader:downloader.bzl", "aos_downloader")
Brian Silverman37281fc2018-03-11 18:42:17 -07002load("//aos/build:queues.bzl", "queue_library")
Austin Schuhf9724442018-10-28 20:30:21 -07003load("@com_google_protobuf//:protobuf.bzl", "cc_proto_library")
Neil Balchacfca5b2018-01-28 14:04:08 -08004
5aos_downloader(
Austin Schuh2a3e0632018-02-19 16:24:49 -08006 name = "download",
7 srcs = [
8 "//aos:prime_binaries",
9 ],
10 restricted_to = ["//tools:roborio"],
11 start_srcs = [
12 ":joystick_reader",
13 ":wpilib_interface",
Austin Schuh8d5fff42018-05-30 20:44:12 -070014 "//y2018/vision:vision_status",
Austin Schuh2a3e0632018-02-19 16:24:49 -080015 "//aos:prime_start_binaries",
16 "//y2018/control_loops/drivetrain:drivetrain",
Austin Schuha3c148e2018-03-09 21:04:05 -080017 "//y2018/actors:autonomous_action",
18 "//y2018/control_loops/superstructure:superstructure",
Austin Schuh2a3e0632018-02-19 16:24:49 -080019 ],
Neil Balchacfca5b2018-01-28 14:04:08 -080020)
21
22aos_downloader(
Austin Schuh2a3e0632018-02-19 16:24:49 -080023 name = "download_stripped",
24 srcs = [
25 "//aos:prime_binaries_stripped",
26 ],
27 restricted_to = ["//tools:roborio"],
28 start_srcs = [
29 ":joystick_reader.stripped",
30 ":wpilib_interface.stripped",
Austin Schuh8d5fff42018-05-30 20:44:12 -070031 "//y2018/vision:vision_status.stripped",
Austin Schuh2a3e0632018-02-19 16:24:49 -080032 "//aos:prime_start_binaries_stripped",
Austin Schuha3c148e2018-03-09 21:04:05 -080033 "//y2018/actors:autonomous_action.stripped",
Austin Schuh2a3e0632018-02-19 16:24:49 -080034 "//y2018/control_loops/drivetrain:drivetrain.stripped",
Austin Schuh6829f762018-03-02 21:36:01 -080035 "//y2018/control_loops/superstructure:superstructure.stripped",
Austin Schuh2a3e0632018-02-19 16:24:49 -080036 ],
Neil Balchacfca5b2018-01-28 14:04:08 -080037)
38
39cc_binary(
Austin Schuh2a3e0632018-02-19 16:24:49 -080040 name = "joystick_reader",
41 srcs = [
42 "joystick_reader.cc",
43 ],
44 deps = [
Austin Schuh8d5fff42018-05-30 20:44:12 -070045 ":vision_proto",
Austin Schuhf9724442018-10-28 20:30:21 -070046 "//aos:init",
John Park33858a32018-09-28 23:05:48 -070047 "//aos/actions:action_lib",
Austin Schuh2a3e0632018-02-19 16:24:49 -080048 "//aos/input:drivetrain_input",
49 "//aos/input:joystick_input",
Austin Schuhf9724442018-10-28 20:30:21 -070050 "//aos/logging",
51 "//aos/network:team_number",
52 "//aos/stl_mutex",
53 "//aos/time",
54 "//aos/util:log_interval",
Austin Schuh8d5fff42018-05-30 20:44:12 -070055 "//aos/vision/events:udp",
Austin Schuh2a3e0632018-02-19 16:24:49 -080056 "//frc971/autonomous:auto_queue",
Austin Schuha3c148e2018-03-09 21:04:05 -080057 "//frc971/autonomous:base_autonomous_actor",
Austin Schuh2a3e0632018-02-19 16:24:49 -080058 "//frc971/control_loops/drivetrain:drivetrain_queue",
59 "//y2018/control_loops/drivetrain:drivetrain_base",
60 "//y2018/control_loops/superstructure:superstructure_queue",
Austin Schuhab15c4d2018-03-09 21:21:03 -080061 "//y2018/control_loops/superstructure/arm:generated_graph",
Austin Schuh2a3e0632018-02-19 16:24:49 -080062 ],
63)
64
65cc_library(
66 name = "constants",
67 srcs = [
68 "constants.cc",
69 ],
70 hdrs = [
71 "constants.h",
72 ],
73 visibility = ["//visibility:public"],
74 deps = [
75 "//aos:once",
John Park33858a32018-09-28 23:05:48 -070076 "//aos/logging",
Austin Schuhf9724442018-10-28 20:30:21 -070077 "//aos/mutex",
John Park33858a32018-09-28 23:05:48 -070078 "//aos/network:team_number",
Austin Schuh2a3e0632018-02-19 16:24:49 -080079 "//frc971:constants",
80 "//frc971/shooter_interpolation:interpolation",
81 "//y2018/control_loops/drivetrain:polydrivetrain_plants",
82 "//y2018/control_loops/superstructure/arm:dynamics",
83 "//y2018/control_loops/superstructure/intake:intake_plants",
84 ],
85)
86
87cc_binary(
88 name = "wpilib_interface",
89 srcs = [
90 "wpilib_interface.cc",
91 ],
92 restricted_to = ["//tools:roborio"],
93 deps = [
Brian Silverman37281fc2018-03-11 18:42:17 -070094 ":status_light",
Austin Schuhf9724442018-10-28 20:30:21 -070095 "//aos:init",
John Park33858a32018-09-28 23:05:48 -070096 "//aos:math",
John Park33858a32018-09-28 23:05:48 -070097 "//aos/controls:control_loop",
98 "//aos/logging",
99 "//aos/logging:queue_logging",
Austin Schuhf9724442018-10-28 20:30:21 -0700100 "//aos/robot_state",
101 "//aos/stl_mutex",
102 "//aos/time",
John Park33858a32018-09-28 23:05:48 -0700103 "//aos/util:log_interval",
104 "//aos/util:phased_loop",
105 "//aos/util:wrapping_counter",
Austin Schuh2a3e0632018-02-19 16:24:49 -0800106 "//frc971/autonomous:auto_queue",
107 "//frc971/control_loops:queues",
108 "//frc971/control_loops/drivetrain:drivetrain_queue",
109 "//frc971/wpilib:ADIS16448",
110 "//frc971/wpilib:buffered_pcm",
111 "//frc971/wpilib:dma",
112 "//frc971/wpilib:dma_edge_counting",
113 "//frc971/wpilib:encoder_and_potentiometer",
Austin Schuh2a3e0632018-02-19 16:24:49 -0800114 "//frc971/wpilib:interrupt_edge_counting",
115 "//frc971/wpilib:joystick_sender",
116 "//frc971/wpilib:logging_queue",
117 "//frc971/wpilib:loop_output_handler",
118 "//frc971/wpilib:pdp_fetcher",
119 "//frc971/wpilib:wpilib_interface",
120 "//frc971/wpilib:wpilib_robot_base",
121 "//third_party:wpilib",
Brian Silverman37281fc2018-03-11 18:42:17 -0700122 "//third_party/Phoenix-frc-lib:phoenix",
Austin Schuh2a3e0632018-02-19 16:24:49 -0800123 "//y2018:constants",
124 "//y2018/control_loops/superstructure:superstructure_queue",
Austin Schuh8d5fff42018-05-30 20:44:12 -0700125 "//y2018/vision:vision_queue",
Austin Schuh2a3e0632018-02-19 16:24:49 -0800126 ],
Neil Balchacfca5b2018-01-28 14:04:08 -0800127)
Brian Silverman37281fc2018-03-11 18:42:17 -0700128
129queue_library(
130 name = "status_light",
131 srcs = [
132 "status_light.q",
133 ],
Austin Schuh8d5fff42018-05-30 20:44:12 -0700134 visibility = ["//visibility:public"],
135)
136
Austin Schuhf9724442018-10-28 20:30:21 -0700137cc_proto_library(
Austin Schuh8d5fff42018-05-30 20:44:12 -0700138 name = "vision_proto",
Austin Schuhf9724442018-10-28 20:30:21 -0700139 srcs = ["vision.proto"],
Austin Schuh8d5fff42018-05-30 20:44:12 -0700140 visibility = ["//visibility:public"],
Brian Silverman37281fc2018-03-11 18:42:17 -0700141)
Brian Silverman6470f442018-08-05 12:08:16 -0700142
143py_library(
144 name = "python_init",
145 srcs = ["__init__.py"],
146 visibility = ["//visibility:public"],
147)