Kiosk Mode for Jetson Orin Nano

We’d like to put our Jetson Orin Nano into Kiosk mode and have followed these instructions

Creating Shell Script For Kiosk Mode

  1. Open terminal: you can use short-cut ctrl+alt+t

  2. Find name of touchscreen with xrandr --query

  3. Open new text file named kiosk.sh:

  4. Use vim ~/kiosk.sh

  5. Enter:

  6. #!/bin/bash

  7. xrandr --output “touchscreen name” --rotate (right or left you need to figure it out)

  8. exec “Path to executable”

  9. Move kiosk.sh to kiosk home with mv ~/kiosk.sh /home/kiosk/

  10. Make kiosk.sh executable with sudo chmod 770 kiosk.sh

  11. Make the kiosk user the owner with sudo chown kiosk:kiosk kiosk.sh

Creating Kiosk Mode

  1. Open terminal: you can use short-cut ctrl+alt+t

  2. Create a new user named kiosk:

  3. In terminal type: sudo useradd –m kiosk

  4. You need to assign no password to the kiosk user: sudo passwd –d kiosk

  5. Configure autologin for the kiosk user by changing custom.conf file in /etc/gdm3/:

  6. Open a text editor for custom.conf by typing the following in the terminal: sudo nano /etc/gdm3/custom.conf

  7. Under the [daemon] tag type:

AutomaticLoginEnable = true

AutomaticLogin = kiosk

  1. Save the custom.conf file: ctrl+o , then press enter to confirm

  2. Close text editor: ctrl+x

  3. Create an xsession file that will run when kiosk logs in:

  4. In terminal type in: sudo /usr/shar/xsession/kiosk.desktop

  5. Type the following into the text editor (replace Path to executable with an actual path):

  6. Save the custom.conf file: ctrl+o , then press enter to confirm

  7. Close text editor: ctrl+x

  8. Make kiosk.desktop the default session when kiosk logs in:

  9. Switch to the root user (sudo will no longer suffice). In the terminal type: su -

  10. Open kiosk config file: nano /var/lib/AccountsService/users/kiosk

  11. Change the Session and XSession to kiosk:

  12. Save the custom.conf file: ctrl+o , then press enter to confirm

  13. Close text editor: ctrl+x

  14. Switch back to your user. In terminal type: exit

  15. Reboot system. In terminal type: reboot

  16. When the nvidia reboots, it should automatically login and execute the program listed in the Exec in step 4.

  17. Once the program ends the xsession will end and send you back to the regular login screen. Since the PMC interface doesn’t have a way to exit the app, you can use ctrl+alt+F1 to close the xsession. This is an easy way to login to the admin user to troubleshoot the nvidia system.

PROBLEM: However, on startup we get a black screen followed by going back to login screen.

1 Like

Hi,
We don’t have much experience about Kiosk Mode. Would see if other users can share experience.

Do you know if Kiosk Mode depends on framebuffer console? We don’t support framebuffer console on Jetpack 5. So if Kiosk Mode requires framebuffer console, it may not work properly.

Hey @ssansoy,

Adding autologin in /etc/gdm3/custom.conf doesn’t work as expected for some reason maybe try doing the same in
/etc/lightdm/lightdm.conf.d/50-nvidia.conf

[SeatDefaults]
allow-guest=false
autologin-user=<username>

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.