-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Suggestions #1
Comments
Done
Done
So the current set of unit are designed to be run as user units, so a turtlebot user can have ROS start when they login and not have issues running nodelets. Once this is tested a bit more I'll integrate a system unit.
I'm using netcat right now to detect when the socket is up, but I'll look at implementing this and providing a means to configure roslaunch a bit more after some testing. I think the following roslaunch arguments might be nice to support, let me know if I'm missing anything.
|
I'm testing this as an install strategy. After an ISO install, when a user logs into the turtlebot roslaunch starts and the robot beep bloops. |
Ah, I see. Yeah, having to wait for a login is a non-starter for us. :) I was never a PR2 user or developer myself, but I recall the whole "stop and rerun the robot job as me" thing being about a different user not being able to launch their own nodelets into a camera pipeline process owned by a non-login Another thought— we haven't finished our implementation of this yet, but one more fun thing that systemd can do is differentiate between a unit that |
If you need it to start at bootup you just need to run
for whatever user you want. The thinking here is that someone takes the robot out of the box, logs in, the robot starts, then the use selects the app indicator in the top right (like the gui volume control) and enables "Start at boot" if that is the operation they want. I think this makes more sense for arms and shared robots like turtlebots. The issue we keep running into during development is that everyone shares to robot, so either you end up with git commits being from the robot or some kludge to get the code back on to a devs machine to commit. I'm interested in |
It look like it might be more robust to just do a
in the |
It still needs some work, but here is the GUI frontend. |
Nice work! A few small things—
systemd
by default limits the number of processes per service. Our jobs are set toTasksMax=infinity
to turn off this limitation.KillSignal=SIGINT
.ros
orrobot
user to avoid running the background ROS job as root. Unfortunately it's not in 18.04, but as of eoan, there's a debhelper for this: http://manpages.ubuntu.com/manpages/eoan/en/man1/dh_sysuser.1.htmlroslaunch
invocation should probably have--wait
to avoid racing the roscore unit that starts at the same time.The text was updated successfully, but these errors were encountered: