Huupe would like your recommendations on platforms to best exploit Nvidia Jetsons for our intelligent basketball backboard.
OS: JetPack vs Yocto
- Yocto: We are considering using Yocto instead of Jetpack because we believe that it will be easier to make changes in Yocto when we build production systems.
Application Frameworks being considered::
- ReactJS in GTK WebKit with GJS/Typescript
- GTK/C++/Boost
- Electron/ReactJS/Chromium/Typescript
Our current net:
- We will choose GJS/ReactJS if we can display our app over hardware accelerated video with an acceptable level of effort for updating packages and level of UI processing overhead.
- We will use GTK/C++/Boost if we can overcome build issues.
- Else we will stick with the Electron/ReactJS/Chromium that we have used in our prototype if we can hardware accelerate video.
Background: Huupe.com is building an intelligent basketball backboard supporting games, training, and casting content. The entire backboard is a TV screen. Cameras and computer vision detect from where shots are taken and if the shots are made or missed. Huupes stream video from the cloud, to other Huupes, and from casting mobile devices. We will stress the Nvidia Jetson that is controlling the Huupe by running AI, video processing, and generating and displaying graphics and animations on the Huupe screen. Note that Huupes are controlled by mobile devices via BLE/wifi and will not require on screen UI controls. Huupe prototypes are using Jetson Xaviers, but we are planning to upgrade to Jetson Orins.
Alternatives being considered:
-
ReactJS in GTK WebKit with GJS/Typescript
- Pros:
- ReactJS has higher app developer efficiency than GTK/Boost.
- ReactJS has a larger app developer community than GTK/Boost.
- Typescript use is growing more than C++.
- More efficient than Electron/Chromium.
- Concerns:
- IPC between GTK and ReactJS hard to debug.
- Updating packages can require significant effort.
- Pros:
-
GTK/C++/Boost
- Pros:
- HW acceleration of UI
- More efficient processing than ReactJS….
- Electron/ReactJS/Chromium is used in our current prototype.
- Concerns:
- Overhead of Electron/Chromium in the long run as we add capabilities.
- Chromium doesn’t support hardware acceleration for video.
- Concerns:
- Pros:
Note: We are using React Native for our iOS and Android mobile app which is used to control the Huupe backboard.