Skip to content

Commit 31d6d39

Browse files
committed
Release 1.1.0, 24.08.
Signed-off-by: Patrick O'Grady <[email protected]>
1 parent 6a3f7d0 commit 31d6d39

File tree

8 files changed

+76
-9
lines changed

8 files changed

+76
-9
lines changed

RELEASE_NOTES.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,3 +69,14 @@ look at `docs/user_guide/_build/html/index.html`.
6969
check for the dGPU driver version; in the iGPU configuration, this driver isn't
7070
loaded, resulting in this message. iGPU operation is unaffected by this and will
7171
operate as expected.
72+
73+
- AGX running examples/linux_body_pose_estimation.py --camera-mode=0, the first time,
74+
may cause the video to hang.
75+
76+
The first time the body-post-estimation app is run, the .onnx file is converted to a
77+
TRT engine file, which is a step than can take several minutes. Subsequent runs of the
78+
body pose estimation app will skip the conversion and just load this engine file
79+
directly. During the converstion, when high bandwidth is in use on the network (via
80+
"--camera-mode=0"), the kernel stops delivering received UDP messages to the
81+
application, resulting in no video being displayed. Later runs the same program, after
82+
the conversion is complete, run as expected.

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1.1.0-RC8
1+
1.1.0

ci/imx274_ptp_test.sh

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
#!/bin/sh
2+
3+
# SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
4+
# SPDX-License-Identifier: Apache-2.0
5+
#
6+
# Licensed under the Apache License, Version 2.0 (the "License");
7+
# you may not use this file except in compliance with the License.
8+
# You may obtain a copy of the License at
9+
#
10+
# http://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# Unless required by applicable law or agreed to in writing, software
13+
# distributed under the License is distributed on an "AS IS" BASIS,
14+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
# See the License for the specific language governing permissions and
16+
# limitations under the License.
17+
#
18+
# See README.md for detailed information.
19+
20+
# Usage:
21+
# imx274_ptp_test.sh
22+
#
23+
# Invokes the CI container, then runs the PTP test inside it.
24+
25+
set -o errexit
26+
set -o xtrace
27+
28+
SCRIPT=`realpath "$0"`
29+
HERE=`dirname "$SCRIPT"`
30+
31+
if [ "$1" = "go" ]; then
32+
shift # get rid of "go"
33+
umask 0
34+
# Python tests
35+
pytest tests/test_imx274_timestamps.py --imx274 --ptp --headless -vv $@
36+
exit 0
37+
fi
38+
39+
BUILD=$1
40+
41+
sh $HERE/ci.sh $BUILD $SCRIPT go $@

docs/user_guide/examples.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ Press Ctrl/C to exit. More information about this application can be found
9191
**Prerequisite**: Download the YOLOv8 ONNX model from the YOLOv8 website and generate
9292
the body pose ONNX model. Within the Holoscan sensor bridge demo container:
9393

94-
From the repo base directory `hololink`:
94+
From the repo base directory `holoscan-sensor-bridge`:
9595

9696
```sh
9797
apt-get update && apt-get install -y ffmpeg

docs/user_guide/sensor_bridge_hardware_setup.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ Holoscan sensor bridge has the following connectors:
1313
1. **Camera connector** - This connector is used to interface with a camera (e.g.
1414
IMX274).
1515
1. **Power port** - the sensor bridge device is powered by using a USB-C power supply
16-
connected to this port.
16+
with a minimum of 12V/2A connected to this port.
1717
1. **GPIO pins** - the sensor bridge device supports 16 GPIO pins (0...15) and 4 ground
1818
pins (marked 'G' in the image above).
1919

@@ -54,7 +54,8 @@ width="100%"/>
5454

5555
<img src="jetson_agx_ports.png" alt="Jetson AGX Orin Ports" width="90%"/>
5656

57-
1. Connect a USB-C cable to power connector of the sensor bridge device and wait for the
58-
green leds on the sensor bridge board to light up.
57+
1. Connect a USB-C power supply with a minimum of 12V/2A to the USB-C power connector of
58+
the sensor bridge device and wait for the green leds on the sensor bridge board to
59+
light up.
5960

6061
1. Follow the instructions in the [setup page](setup.md) to configure your host system.

docs/user_guide/troubleshooting.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,3 +42,16 @@ done
4242
Use the appropriate value where `roceP5p3s0f0` is shown here. When no data plane
4343
requests are received, be sure and check that the sensor is properly connected to the
4444
sensor bridge board.
45+
46+
## Sensor Bridge LED indications
47+
48+
The Holsocan Sensor Bridge board has two leds that depending on their state have the
49+
following indications:
50+
51+
1. **Both leds are off** - The Holoscan Sensor Bridge Board is not powered.
52+
1. **Both leds are on with green color** - The Holoscan Sensor Bridge Board is powered
53+
and ready.
54+
1. **One green led or green led blinking** - The Holoscan Sensor Bridge Board is powered
55+
with incorrect power supply that does not meet the minimum 12V/2A requirements.
56+
1. **One green led and one red led** - FPGA flashing failed, FPGA might need to be
57+
flashed with a FTDI cable.

src/hololink/operators/linux_receiver/linux_receiver.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,7 @@ void LinuxReceiver::run()
160160
while (true) {
161161
int recv_flags = 0;
162162
ssize_t received_bytes = recv(socket_, received, sizeof(received), recv_flags);
163+
int recv_errno = errno;
163164

164165
// Get the clock as close to the packet receipt as possible.
165166
if (clock_gettime(CLOCK_MONOTONIC, &now) != 0) {
@@ -169,15 +170,15 @@ void LinuxReceiver::run()
169170

170171
if (received_bytes <= 0) {
171172
// check if there is a timeout
172-
if ((errno == EAGAIN) || (errno == EWOULDBLOCK) || (errno == EINTR)) {
173+
if ((recv_errno == EAGAIN) || (recv_errno == EWOULDBLOCK) || (recv_errno == EINTR)) {
173174
// should we exit?
174175
if (exit_) {
175176
break;
176177
}
177178
// if not, continue
178179
continue;
179180
}
180-
ERROR("recv returned received_bytes=%d, errno=%d.\n", (int)received_bytes, (int)errno);
181+
ERROR("recv returned received_bytes=%d, recv_errno=%d.\n", (int)received_bytes, (int)recv_errno);
181182
break;
182183
}
183184

tests/test_imx274_timestamps.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -270,13 +270,13 @@ def diff_s(later_timestamp_ns, earlier_timestamp_ns):
270270
hololink_module.sensors.imx274.imx274_mode.Imx274_Mode.IMX274_MODE_3840X2160_60FPS,
271271
False,
272272
0.015,
273-
0.010,
273+
0.012,
274274
),
275275
(
276276
hololink_module.sensors.imx274.imx274_mode.Imx274_Mode.IMX274_MODE_1920X1080_60FPS,
277277
False,
278278
0.008,
279-
0.010,
279+
0.012,
280280
),
281281
],
282282
)

0 commit comments

Comments
 (0)