EZ Template vs ARMS vs LemLib

I’m looking to use a more sophisticated library with PROS this year (literally anything is more sophisticated as i used dead reckoning last year), and from what I can tell the three major options are EZ Template, ARMS, and LemLib. Right now I’m leaning towards LemLib, but I wanted to see what other people’s opinions are in terms of which library they prefer and why.

Thanks in advance.

5 Likes

Hi, I’m Liam, co-author of LemLib.

I was waiting to see if someone else would reply to this first because my own opinion is biased, but no-one did. I’ll do my best to explain each option.

Option 1: EZ-Template. EZ-Template is the most popular library right now. In fact, world champion team 7686B uses it, and team 2733J who did really well too. As the name suggests, its easy to use, its documentation is good, and has a fantastic community from which you can get support from. It should be noted however that it has not been updated recently except for PROS kernel updates to ensure it still works. It has no odometry, but has uses heading and supports tracking wheels and simple curved motions. It also has many driver control features which both ARMS and LemLib lack (for now) Overall a solid choice.

Option 2: ARMS. ARMS is developed by the PROS team. Its main features include odometry and the boomerang motion controller. It is used by the VEXU team BLRS and is in active development. Because of odom, it is more accurate than EZ-template if tuned correctly. The community of users isnt as large as EZ-Template but the developers are super helpful and available on VTOW. Also a solid choice.

Option 3: LemLib. LemLib is developed by me and has quite a number of features. It is in heavy development, with most contributors actively competing in VRC. Notable teams who used it include 1010N, 5090X, and 10012G. It has odometry, supporting any configuration. It also has PID turn to face point, PID move to point, but most notably it has pure pursuit with its very own path generator. Its as easy as drawing a path for the robot to follow. It has pretty good documentation with tutorials to help you get started. It does not have as big a community as EZ-template but you can ask me any questions and I will be happy to help.

I decided to separate this section to avoid any confusion. Below are features that are currently in development, not what is currently implemented. By the end of the upcoming summer break, I plan the following features to be fully implemented in LemLib:

  1. Customized version of Pure Pursuit. Generates motion profiles on-the-fly to follow the lookahead point
  2. X-drive and mecanum support
  3. Live debugging
  4. Extensive GUI on the brain

Reminder - I am biased
I recommend using LemLib. It has the most advanced motion algorithm being able to follow a 2d path. It is under heavy development with many new features on the horizon. But you really can’t go wrong with any of these 3 options. I think the best thing to do would be to try each of them out over the summer and see which you like best.

Links to projects:
EZ-Template source
LemLib source

Sorry, I wasnt able to add links to ez-template because it vexforum wont let mem :sob:

3 Likes