Setting up PROS in Linux

I’m trying to get PROS setup in Linux, but the CLI doesn’t seem to be found in Atom.

prosV5 --version reports 3.1.4, so it appears to be installed on the machine.

The correct packages seem to be installed in Atom, but it can’t find the CLI. The welcome dialog reports PROS CLI was not found on your PATH

Any troubleshooting tips here?

I think you have the pros-atom package installed when you want the pros-atom3 package installed. We did this during the beta period to make sure folks could still use PROS 2 and it’s just kinda stuck at this point…

The pros-atom3 package shows as installed in Atom.

You don’t want the pros (pros-atom) package also installed.

It’s not listed as installed. Could there be some cruft hanging out somewhere that needs to be purged?

I think I may have figured out part of the problem. I had updated to bootstrapper to 1.xx from 0.0.12 thinking higher is better. This was installing the pros package every time Atom started. I reverted that back, and only the pros-atom3 is present. Yay.

However, when I try to use any of the PROS menus, a red error pops up with just the number 2 in it. Is there a log somewhere with more details?

Check out this section from our Getting Started on Linux page about installing the editor, and make sure you haven’t missed any steps.

Updating the bootstrapper was definitely what borked my install. All fixed now.

I can now download with a direct cable, but not wirelessly. The debug stream shows this entry:

‘/dev/ttyACM0’, ‘name’: ‘ttyACM0’, ‘description’: ‘VEX Robotics V5 Controller - VCOM’,

along with:

ERROR - pros.cli.common:resolve_v5_port - No v5 ports were found! If you think you have a v5 plugged in, run this command again with the --debug

So the computer seems to see the controller as connected and available, but PROS is not seeing this as valid place to download the program. Any more suggestions?

I don’t think this is your problem, but make sure your user is in the dialout group.
https://arduino.stackexchange.com/a/54101

That was initially a problem for any downloads at all, but has since been resolved. PROS would find the port in that case, but complain it didn’t have access.

Sometimes (especially with successive uploads) the controller will disconnect from the V5. Usually unplugging the controller and plugging it back in or a power cycle should fix this

in ubuntu1804 .I must use sudo prosv5 mut

And it’s strange that compilation under Linux is slower than under win10.
so I continue to use win10.

Make sure your user has write permissions to the serial port. You should not be using sudo for this.

1 Like

@barin’s previous response may also be of interest to you. On ubuntu, you are not a part of the group that owns serial ports by default. Usually you can fix this by running sudo usermod -aG dialout <username>, then logging out and back in again (or maybe restarting).

I’d already fixed the user group issues. Corded downloads won’t work without it.

I’ve restarted the brain and reconnected the controller several times with no luck. Both the brain and the remote indicate they are linked and the antenna lights are flashing.

Just to add some more data points, in the radio status it reports Drive + Data in the link type, this seems like the robot and controller are connected correctly.

When the brain is connected the PC shows two serial ports, ttyACM0 & ttyACM1

When the controller is connected only one serial port is there ttyACM0

Should the controller also have two ports?

Not at this time. The second port advertised by the brain is for serial comms (“the terminal”), which isn’t yet supported over a wireless connection.

Has anybody gotten wireless downloading to work in linux? I tried this setup on some windows boxen and there was no issue getting it to work wirelessly. There seems to be some minor variances in how the OS presents the ports, which is causing the controller to not be recognized by PROS. I’ve got some things I’d like to try in the code, but i don’t speak python that well. I can’t quite figure out how I’m supposed to start the code with my changes. Any advice on that? I’m sure it’s something super obvious I’m overlooking and I am looking forward to feeling dumb when the answer is revealed. :wink:

You can run prosv5 lsusb --debug to see how PROS is detecting com ports. If you think you’ve found an issue and are wanting to try things out, you’ll want to look at these lines.

That’s exactly what I want to tinker with. I just need to figure out how to run it.