Tkinter GUI not starting on boot with ROS on Raspberry Pi
I’m trying to launch a tkinter GUI I made that is used to read GPIO pins as well as some ROS topics. I’m using a raspberry pi with Buster 10 and ROS Melodic with Python 3.7. I am using Clearpath’s robot_upstart package which can successfully launch all of my ROS programs on boot except for the GUI. If I manually launch the launch file without rebooting, everything including the GUI, works as expected. For some reason the GUI just won’t launch on boot. I have also tried launching the GUI separately using autolaunch, crontab and every other method I could find online. I also made a new tkinter GUI which was very basic and used python2 and that also could not launch on boot when using crontab but runs fine when I just run the program from the Desktop. I also looked at the logs after an unsuccessful launch on boot and there were no errors. Is there some kind of parameter I should set to make the GUI visible when launching? Why does it work when I manually launch it but not on boot? What steps should I take to get this to work? Thanks.
Is your "GUI app" a ros node? What steps have you taken to make ros melodic compatible with python3.7?
In my experience, most "upstart"-style tools do not start a desktop. What do you think is going to happen when a desktop app is launched, but there is no desktop?