Changes to support orin and new camera stream
Add orin as option to downloader.py
Add viewer to binaries to download
Tweak rates and sizes to match new buffer requirements
Change-Id: Ic40fdc4f70062ec9d9f1dd6c39c6a8a73251eee5
Signed-off-by: Jim Ostrowski <yimmy13@gmail.com>
diff --git a/frc971/downloader/downloader.py b/frc971/downloader/downloader.py
index a962d5b..181a721 100644
--- a/frc971/downloader/downloader.py
+++ b/frc971/downloader/downloader.py
@@ -37,7 +37,7 @@
help="Target to deploy code to.")
parser.add_argument("--type",
type=str,
- choices=["roborio", "pi"],
+ choices=["roborio", "pi", "orin"],
required=True,
help="Target type for deployment")
parser.add_argument("srcs",
@@ -64,7 +64,7 @@
target_dir = result.group(3)
if user is None:
- if args.type == "pi":
+ if args.type == "pi" or args.type == "orin":
user = "pi"
elif args.type == "roborio":
user = "admin"
@@ -122,7 +122,7 @@
# permissions or the executables won't be visible to init.
os.chmod(temp_dir, 0o775)
# Starter needs to be SUID so we transition from lvuser to admin.
- if args.type != "pi":
+ if args.type != "pi" and args.type != "orin":
os.chmod(os.path.join(temp_dir, "starterd"), 0o775 | stat.S_ISUID)
rsync_cmd = ([
diff --git a/y2023/vision/BUILD b/y2023/vision/BUILD
index 07911a8..f583abd 100644
--- a/y2023/vision/BUILD
+++ b/y2023/vision/BUILD
@@ -50,7 +50,10 @@
"viewer.cc",
],
target_compatible_with = ["@platforms//os:linux"],
- visibility = ["//y2023:__subpackages__"],
+ visibility = [
+ "//y2023:__subpackages__",
+ "//y2024:__subpackages__",
+ ],
deps = [
"//aos:init",
"//aos:json_to_flatbuffer",
diff --git a/y2024/BUILD b/y2024/BUILD
index be8abe0..ecbb301 100644
--- a/y2024/BUILD
+++ b/y2024/BUILD
@@ -46,14 +46,15 @@
robot_downloader(
name = "orin_download",
binaries = [
+ ":joystick_republish",
+ "//aos/events:aos_timing_report_streamer",
+ "//aos/events/logging:log_cat",
+ "//aos/network:web_proxy_main",
"//aos/starter:irq_affinity",
"//aos/util:foxglove_websocket",
- "//aos/events:aos_timing_report_streamer",
- "//y2024/constants:constants_sender",
- "//aos/network:web_proxy_main",
- ":joystick_republish",
- "//aos/events/logging:log_cat",
"//frc971/image_streamer:image_streamer",
+ "//y2023/vision:viewer",
+ "//y2024/constants:constants_sender",
],
data = [
":aos_config",
@@ -66,15 +67,15 @@
"//frc971/image_streamer/www:www_files",
],
start_binaries = [
+ "//aos/events/logging:logger_main",
"//aos/network:message_bridge_client",
"//aos/network:message_bridge_server",
"//aos/network:web_proxy_main",
"//aos/starter:irq_affinity",
- "//y2024/vision:image_logger",
- "//aos/events/logging:logger_main",
- "//y2024/orin:can_logger",
- "//frc971/orin:gpu_apriltag",
"//frc971/orin:argus_camera",
+ "//frc971/orin:gpu_apriltag",
+ "//y2024/orin:can_logger",
+ "//y2024/vision:image_logger",
],
target_compatible_with = ["//tools/platforms/hardware:raspberry_pi"],
target_type = "pi",
diff --git a/y2024/y2024_orin_template.json b/y2024/y2024_orin_template.json
index 93c0e27..1e05e9a 100644
--- a/y2024/y2024_orin_template.json
+++ b/y2024/y2024_orin_template.json
@@ -6,7 +6,7 @@
"source_node": "orin{{ NUM }}",
"frequency": 50,
"num_senders": 20,
- "max_size": 4096
+ "max_size": 8192
},
{
"name": "/orin{{ NUM }}/aos",
@@ -113,8 +113,8 @@
"name": "/orin{{ NUM }}/camera",
"type": "frc971.vision.CameraImage",
"source_node": "orin{{ NUM }}",
- "frequency": 40,
- "max_size": 1843456,
+ "frequency": 65,
+ "max_size": 4752384,
"num_readers": 6,
"read_method": "PIN",
"num_senders": 18
@@ -123,21 +123,21 @@
"name": "/orin{{ NUM }}/camera",
"type": "foxglove.CompressedImage",
"source_node": "orin{{ NUM }}",
- "frequency": 40,
+ "frequency": 65,
"max_size": 622384
},
{
"name": "/orin{{ NUM }}/camera",
"type": "foxglove.ImageAnnotations",
"source_node": "orin{{ NUM }}",
- "frequency": 40,
+ "frequency": 65,
"max_size": 50000
},
{
"name": "/orin{{ NUM }}/camera",
"type": "frc971.vision.TargetMap",
"source_node": "orin{{ NUM }}",
- "frequency": 40,
+ "frequency": 65,
"num_senders": 2,
"max_size": 1024,
"logger": "LOCAL_AND_REMOTE_LOGGER",
@@ -180,7 +180,7 @@
"--rt_priority=16",
"--sinit_max_init_timeout=5000"
],
- "user": "orin",
+ "user": "pi",
"nodes": [
"orin{{ NUM }}"
]
@@ -189,7 +189,7 @@
"name": "irq_affinity",
"executable_name": "irq_affinity",
"user": "root",
- "args": ["--user=orin"],
+ "args": ["--user=pi"],
"nodes": [
"orin{{ NUM }}"
]
@@ -197,7 +197,7 @@
{
"name": "message_bridge_server",
"executable_name": "message_bridge_server",
- "user": "orin",
+ "user": "pi",
"nodes": [
"orin{{ NUM }}"
]
@@ -205,7 +205,7 @@
{
"name": "web_proxy",
"executable_name": "web_proxy_main",
- "user": "orin",
+ "user": "pi",
"args": [
"--min_ice_port=5800",
"--max_ice_port=5810"
@@ -225,21 +225,21 @@
"--direct",
"--flush_size=4194304"
],
- "user": "orin",
+ "user": "pi",
"nodes": [
"orin{{ NUM }}"
]
},
{
"name": "foxglove_websocket",
- "user": "orin",
+ "user": "pi",
"nodes": [
"orin{{ NUM }}"
]
},
{
"name": "foxglove_image_converter",
- "user": "orin",
+ "user": "pi",
"nodes": [
"orin{{ NUM }}"
]
@@ -247,7 +247,7 @@
{
"name": "constants_sender",
"autorestart": false,
- "user": "orin",
+ "user": "pi",
"nodes": [
"orin{{ NUM }}"
]
@@ -255,7 +255,11 @@
{
"name": "argus_camera",
"executable_name": "argus_camera",
- "user": "orin",
+ "args": [
+ "--enable_ftrace",
+ "--channel=0",
+ ],
+ "user": "pi",
"nodes": [
"orin{{ NUM }}"
]
@@ -263,7 +267,7 @@
{
"name": "gpu_apriltag",
"executable_name": "gpu_apriltag",
- "user": "orin",
+ "user": "pi",
"nodes": [
"orin{{ NUM }}"
]