![]() |
Re: Definitive Guide to Using the Jetson TK1/TX1?
Quote:
We started late due to focusing on other things with programming since we were switching to C++ that year but that was definitely a mistake on not getting started earlier. As well, we looked at going very ambitious right away with it which meant a lot of development time to get something made but starting small and continually ramping up would have been the much better way to go about it to ensure we had something ready in time for our competitions. Now the above was generic approach advice but that is mostly because other than the resources Marshall already recommended above, there aren't a ton of things I can specifically recommend you look into since I don't really know your knowledge with networking or working with Linux systems. To try to give a little specific help, for networking an option that may be easier for you to integrate would be Network Tables although its not hard to make an argument for pursuing a custom option with TCP or UDP. As well, something I have found advised is using something like the NavX for timestamps so that you know exactly how long it was from when the picture was first taken to when you are about to act on that data so you can account for robot movement in that time. Now beyond that I would be happy to give answer any specific questions you have about how to get started with the TX1 with my limited experience. If you are more so wondering on how to design your vision program, we did eventually get a successful vision program made so I can certainly give you a general overview of what I would recommend to do on that end as well. |
Re: Definitive Guide to Using the Jetson TK1/TX1?
I'm actually about to go pick up our TX1 that came in with our first choice shipment. This is going to be a bit of a pet project for me, with the plan being to use it for the robot this year if practical. We spent time this off season exploring other vision options so this may get delayed if something like pixy cam is sufficient for this year.
I will do my best to document as I go, and I will try to be active on here to discuss and answer questions when I can. I don't think there is a single source for reference at this point, but I am happy to contribute. I don't think there will be a definitive reference for this season, but perhaps the best solution is to have a go to thread for discussion and help, and then in the offseason we can work to compile a guide. |
Re: Definitive Guide to Using the Jetson TK1/TX1?
Quote:
|
Re: Definitive Guide to Using the Jetson TK1/TX1?
One BIG thing for software updates:::
**DO NOT UPDATE YOUR UBUNTU O/S to 16.04 on host or on the Jetson!!!!** (more on this in a moment) I've been hoping to write such a guide this fall before the kickoff, but work (coincidentally at Nvidia) sort of overwhelmed me between Thanksgiving and New Years, and I don't have anything useful to report. I have written an initial guide for doing the software install, but have not yet gotten into the nuts and bolts of using the new Grip-generated pipeline class. It requires writing a wrapper around the generated OpenCV classes, and hooking into that from a camera source (can't use the new WPILIB cameraServer because that is only ported to work on the rio), and hooking it to a NetworkTables driver to send final target data to the Rio. My research thus far indicates the latencies should be fine if you are just getting your distance-to-setpoint (in degrees) from the coprocessor, and then using a gyro for fast feedback on your PID loop to get to the setpoint. There is some conflicting info "out there" about what languages will support GPU acceleration in openCV. I'll be asking the local developers within the company for the DEFINITIVE answer w.r.t. Jetsons, and will put that in whatever docs I generate over the next couple weeks (Before I'm utterly buried by build season). Back to the O/S upgrade comment: the systems currently require Ubuntu 14.04, and upgrading to 16.04 will render the system unusable (it disables all the USB ports, for one thing... so you can't actually log in and type anything to recover the system). You have to reflash, which turns out to be difficult given the requirements of having an Ubuntu14.04 host machine to do the flashing. I have a working recipe for developing a VirtualBox VM of the required Ubuntu image for re-flashing, and making the necessary passthroughs so a physical usb can be driven from the VM to the Jetson. It's not straightforward, and is not officially supported (The local team didn't even think it was possible...). I have a virtual disk image now, but it's surprisingly large (25G of content w/ all the jetpack installation stuff) and I have not yet succesfully transferred it from my work laptop to my personal laptop without errors. Still working on that. 16.04 support requires CUDA9 for some debians or somesuch, which isn't production (or even alpha) ready for Jetsons, so don't rely on having it for this competition build season. Thus, stay with 14.04 and don't ever let the onboard O/S do an update (like I did)!!!!! That's about all I can say for now, and will (with any luck) get some better data/docs posted to this thread soon-ish. Sorry it's not ready for kickoff. |
Re: Definitive Guide to Using the Jetson TK1/TX1?
Quote:
|
Re: Definitive Guide to Using the Jetson TK1/TX1?
Quote:
OpenCV 3.2, released two weeks ago, added Python support for the TAPI, which allows the library to decide to run certain algorithms on the CPU or GPU via OpenCL. Unfortunately, Jetsons (and other Tegra-based Nvidia boards) don't support OpenCL. So you'd still be stuck with C++ if you want GPU acceleration. |
Re: Definitive Guide to Using the Jetson TK1/TX1?
Quote:
|
Re: Definitive Guide to Using the Jetson TK1/TX1?
Quote:
Read the Nvidia docs. You need a 14.04 OS to run the JetPack installer (It says so in the docs). The JetPack installer will then install 16.04 onto the Jetson and all of the OpenCV goodness. Some Googling will tell you that only C/C++ is supported for the OpenCV CUDA accelerated libraries. Python is not supported for this (I've been telling people this on CD for at least 2 seasons now and no one listens). While this board is complicated to use. It's not that complicated and doesn't deserve a bad reputation with massive red text. EDIT: YOU'RE WRONG. |
Re: Definitive Guide to Using the Jetson TK1/TX1?
Quote:
I used Ubuntu 15.10 with these instructions, and it worked like a charm. The GUI essentially just does this, but the GUI was extremely messed up on my VM (screen size caused weird adjusting). In any case, you only need a shell, `tar`, and likely `dd` (I'm not sure what is used internally) to install the L4T suite. This comes with: https://developer.nvidia.com/embedded/linux-tegra-r242 |
Re: Definitive Guide to Using the Jetson TK1/TX1?
Quote:
EDIT: Also, you don't need any of those command line tools. Use JetPack. PLEASE STOP and READ THE DOCUMENTATION. https://developer.nvidia.com/embedded/jetpack-notes Quote:
900 is going to be working on a guide for this that doesn't contain a bunch of nonsense. Stay tuned. |
Re: Definitive Guide to Using the Jetson TK1/TX1?
Quote:
Large text is fun |
Re: Definitive Guide to Using the Jetson TK1/TX1?
Wow, with this reception I'm going to bow out of this thread.
I happened to be working directly with the Jetson developers internally, and was reading the documentation being referenced. They were aware of the issues and and the incompatibilities I mentioned. Yes, there appear to be people out there who are getting things to run properly. My TX1 (to answer that question) apparently had a worse time than theirs, and I don't yet know why. Glad there are folks out there who are getting things to work with the Jetsons. |
Re: Definitive Guide to Using the Jetson TK1/TX1?
Quote:
What I do know is that you came into a thread and posted gigantic red text about not being able to update the Jetson TX1 to 16.04 and I can tell you I've used JetPack (and the command line utilities the other posted mentioned above) to do exactly this about a dozen times. There are issues with using 16.04 as a host system. It's why the documentation says the requirement is a 14.04 system. I suppose you could say that it is incompatible but when the requirement states use 14.04... who is at fault? You stated you were using VirtualBox, which you also stated is unsupported, and having issues transferring the VM to another system which probably points to issues with your host truthfully. Personally, I've used VMWare Workstation, VMware Fusion, and a dedicated 14.04 host system to run JetPack to run these installs. All have worked fine. I suspect that WorkStation and Fusion use is unsupported but they worked and I've never had a major issue with USB ports not functioning or otherwise. Also, from a professional standpoint, if you do work for Nvidia then you should take a more positive approach to discussing your company's products on a public forum. Your statements (particularly in big bold red text) could be taken as an official statement and lead to much more complicated trouble for you. Look man, I care what you want to tell other teams about this thing because Nvidia has been a valuable partner for our team and an amazing resource for FRC. I've had the pleasure of meeting with the CEO to discuss what we do and he's a nice guy who is sponsoring something great with his company. I do not want to see that put in jeopardy because someone is going off half cocked and posting things on CD that aren't true. Want to get an official statement from the dev folks you are talking to out to teams? Great! Awesome! Do it! Until then, 900 will be working on a guide teams can use. We've had a lot of success with this board. |
Re: Definitive Guide to Using the Jetson TK1/TX1?
Thanks for your clarifications, Marshall. It's a bit late for me to downgrade the red text since it has been referenced in quite a few replies now, but there are apparently some subtleties here that are not universally understood. (Hopefully "universally" doesn't mean "just me"!).
|
| All times are GMT -5. The time now is 11:18. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi