After flashing a Jetson with stock LT4 21.2 (See Jetpack Installation), there are some setup tweaks that make the system more suitable for desktop use. Looky here:
Note: The video and directions on this page have been updated (3-10-15). the directions have changed slightly since this article was first published (as has the video). A ‘Tag’ on Github was created for the LT4 21.2 release, and the video and instructions have been updated accordingly.
The scripts have been placed in a repository on Github: https://github.com/jetsonhacks/postFlash.
Installation
The above video was shot immediately after the Jetson was flashed.
Open a Terminal and execute the following:
$ sudo apt-get install git
$ git clone -b JetsonTK1-L4T-21.2 https://github.com/jetsonhacks/postFlash.git
$ cd postFlash
$ ./configureSystem.sh
After installation, reboot the system for the changes to take effect.
Changes and Addtions
Chromium is installed as a browser. Firefox has issues downloading .zip files, so Chromium is a good alternative. Two other applications are also installed, aptitude and git.
USB 3.0 is enabled. The default is USB 2.0, /boot/extlinux/extlinux.conf must be modified to enable USB 3.0.
Two scripts are installed in /usr/local/bin. To conserve power, by default the Jetson suspends power to the USB ports when they are not in use. In a desktop environment, this can lead to issues with devices such as cameras and webcams. The first script disables USB autosuspend.
Note: (May 27, 2015) There’s an even better way to disable USB autosuspend, which is to pass a command line parameter to the boot loader. Here’s a blog entry, USB Autosuspend, that discusses how this change works. For 21.3+, there is no USB autosuspend script.
Also to conserve power, the Jetson manipulates the CPU cores and GPU clock speeds. The second script sets everything up for maximum performance.
Note: These changes will add about 0.5W of extra power draw.
LT4 21.2 has issues with Ethernet running at 1Gb/S. /etc/rc.local is modified to run Ethernet at 100 Mb/S. rc.local is also modified to run the disable USB autosuspend and maximize performance scripts on startup.
The Jetson feels much more stable as a desktop environment after making these changes.
Note
You may find it more convenient to store the postFlash repository on a USB drive or SSD that is then plugged into the Jetson, so that it is simply a matter of running the configure script from local storage.
11 Responses
Hi kangalow,
I faced Unity locks using Chromium with the latest 19.4 release of L4T, so I decided to continue to use Firefox also with v21.2, even if I would prefer to use Chrome… do you think that now it is working better?
Thank you for the scripts, I will modify the guide on my blog replacing my “manual” tweak installation with your scripts ^_^
Hi Myzhar,
I’ve found that the system as a whole is a lot more stable when the CPU is set into performance mode. For me, I’ve noticed that as long as there aren’t a lot of windows/tabs open in Chromium, the system is relatively stable. However, it still does crash from time to time but it’s probably related to Jetson rather than Chromium itself, probably some type of driver issue. Browser is a personal preference, but not being able to download a .ZIP file in Firefox is a big minus for me as I tend to download a lot of packages off of Github using that feature.
It’s probably a good idea to take the scripts in the repository and modify them to your taste. You’ll probably want to run different configurations and applications when placing them on your robot. I tend to flash the boards a lot, so I thought the scripts might be useful for setup for people when they’re just starting out.
Hi,
in the last days I noticed a really strange behaviour on my Jetson.
Your script to maximize performances has always worked very well, but since a couple of days my Jetson starts randomly with only one or two cores active.
If I run the “maxPerformance.sh” script with “sudo” I get an error accessing “/sys/devices/system/cpu/cpuX/online”.
If I want to make the script working correctly I must to run it under “sudo su”.
Really strange!
Have you ever faced a similar issue?
No, I have not seen that issue. Which version of LT4 are you running?
I’m still on the 21.2
Hi Myzhar,
It sounds like the permissions may have been messed up. You can run
$ sudo /usr/sbin/visudo
to add/remove the list of users who can execute ‘sudo’. You must be ‘root’ to edit /usr/sbin/visudo.
My initial quess is a user was added, and somehow the permissions got mixed up. More info here:
http://www.tecmint.com/su-vs-sudo-and-how-to-configure-sudo-in-linux/
Thank you… I think that we will have a lot to speak about in Santa Clara 😉