PROS vs VEXcode

I used VCS for the 2018 - 2019 season but I was planning on switching to PROs but now VEXcode has been released it fixes a lot of issues that I had VCS, wireless downloading, file management, shortcuts, etc. I really like the feel of PROs, professional and has the control I am looking for. (PIDs). I would love the community’s input. I would consider myself a moderate to advanced programmer. The only thing that is preventing from going to PROs is the LVGL library is extremely challenging to understand and is at a point where I would be messing around with the LVGL library when I could be working on other aspects of my code. Any input that the community has would be great. Is there a good resource to understand the LVGL library or now that VEXcode has been released that is the go-to IDE.
1069B - Argonauts

1 Like

Personally, I’ve switched to VexCode. It fixes every problem I had with VCS (no multi file support, no keyboards shortcuts, saving to a proprietary format, having to use some bad python script to make it usable)

PROS does have some advantages, though. Since it is much older than the V5 API, it is better documented. That being said, it is my understanding that works for VexCode.

PROS (not PROs) is still superior IMO for moderate to advanced programmers. The great documentation and power of the API are advantages it has. It also has extremely powerful libraries available such as Okapi.

That being said, VC is perfectly usable from what I can tell. Just don’t use VCS.


LVGL should not be preventing you from using PROS. No one is forcing you to use it, you don’t need to use it to use PROS =)
While LVGL is definitely more complex than just canvas drawing, it is not impossible to use. It just takes a bit of patience, it is not nearly as hard as it looks.
Also, the next version of LVGL will have canvas support, so that’s good.
Have you seen ?
Let me know if you need any help.
While VC seems great, I don’t imagine it can (yet) rival the power, flexibility, and documentation that PROS has (for more experienced programmers).
Why use some new under-development API and editor when you have the power of Atom and real-world C++ available.
Btw, the name PROS is a recursive acronym: PROS Robot Operating System

1 Like

Okay thank you, I have seen the LVGL docs and started messing around with the examples. Do you know when the next version of LVGL is going to be released and incorporated into PROS?

1 Like

No, it’s not. PROS stands for Purdue Robotics Operating System.

1 Like

Actually it’s Purdue Robotics Operating System:

Edit: Darn it ninja’d

1 Like

Nope. While originally named that a long time ago, they have no official affiliation with Purdue, so they changed their name a while ago. Ask @hotel


I do not. PROS is currently using LVGL 5.1, the latest release is 5.3. Canvas support is included in 5.3.
Work is currently underway to upgrade LVGL in the PROS kernel. It is marked for the 3.1.7 release milestone, which is the next release.

1 Like

Have you seen this example? What type of problems are you having with LVGL? I will agree that the styles are a bit hard to figure out and I did need to work together with the coders to figure them out.

I’m trying to get my programmer(s) to release their full LVGL GUI which allows for 24 autons and a full text display using a printf like command. Is that something you are look for?

I’m assuming what you say is true since @hotel liked your post, but I’m confused as to how they have a subdomain and subdomain email addresses if they have “no official affiliation with Purdue.”


Yeah it’s more like we just didn’t want to deal with any hoops involved with continuing to use the Purdue name, not that we specifically have no affiliation with Purdue.

But y’all have dragged this post way off topic


simple - skunkworks… do something good using big institutional resources, then the official story comes later that they were always behind the project… (ok loosely interpreted meaning …)

Ya, I had a really nice GUI that I made in VCS that I like to think is one of the top GUIs made in VCS. I spent months working on a class structure for the VCS brain. (If you would like to see it I can upload my code.) When programming I believe that displaying information is really important and understanding how to do that effectively is key to debugging and prototyping. I would love to see examples. I have been spending my time doing some research and have discovered that once the PROS team has incorporated LVGL 5.3 it will become much easier to program the screen in a manner similar to VCS.

I wouldn’t say I am having issues with the LVGL library just slightly frustrated about the lack of documentation. I have been messing around with PROS over the last few days and have decided to use PROS as my preseason IDE. I am waiting for the PROS team to incorporate the 5.3 LVGL library. The questions I do have probably should be moved to a different thread.


What I really like about LVGL is I had one of the programmers get the PC simulator working before we had V5. By the end of September he had most things working. The Styles really threw him off. I had to take his code to figure out why buttons were shifting off screen. That part was not intuitive. But the main operation was really just taking the example, cutting it down and them building it up with only what was needed.

No need for the code, but I’d love to see some pics of your GUI.

I have some questions but I think it should be moved to a new thread and the pictures are posted in the new forum

1 Like

Will VEXcode help the stupid problem with everything PID? I really dislike that VCS makes it so difficult to remove PID, but if VEXcode has that option within 1-2 statements that would be really nice. If possible, could someone confirm if a non-PID motor power with minimal effort is viable in VEXcode?

If the question is if this code is integrated.

Then yes, the motor class in the latest SDK that VEXcode uses has that functionality.

1 Like

I believe @jpearman said that the SDK included woth Vexcode has voltage control.

1 Like

Just for fun, here is lvgl running from VEXcode.


Not that hard to pull in the source and build
perhaps I will just build you a static library if you really want to use this.

demo code for the button came from here