• Stars
    star
    255
  • Rank 158,845 (Top 4 %)
  • Language
    C
  • License
    Other
  • Created about 8 years ago
  • Updated about 1 month ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Source code for PROS kernel: open source C/C++ development for the VEX V5 microcontroller

PROS Kernel for the VEX V5 Brain

Build Status

What is PROS?

PROS is a lightweight and fast alternative open source operating system for the VEX V5 Brain. PROS is built with developers in mind and with a focus on providing an environment for industry-applicable experience.

Primary maintenance of PROS is done by students at Purdue University through Purdue ACM SIGBots. Inspiration for this project came from several computer science and engineering students itching to write code for the extended autonomous period. We created PROS to leverage this opportunity.

All PROS development is open sourced and available for the community to inspect. We believe that sharing source improves PROS through community contributions and allows students to learn by example.

PROS is built using the GCC toolchain and standard C/C++ practices (C11 & C++17 w/GNU extensions) to make the learning curve small. Structures, pointers, dynamic memory allocation, and function pointers are all available. Additionally, code is run on bare metal, allowing you to take full advantage of the microcontroller's power.

You can develop code on Windows, OS X, or Linux. Code is compiled using GCC and the PROS CLI is available on most operating systems. The PROS development team makes distributions for Windows, OS X, and Debian-based Linux distributions.

The PROS team develops a plugin for Atom to making developing projects in PROS the best possible experience. The highly customizable editor designed for the 21st century enables students to learn how to code in a modern environment.

What's the difference between PROS 2 and PROS 3?

PROS 2 refers to the kernel that runs on the VEX Arm Cortex-based Microcontroller. The source for this kernel is still available on the cortex-master branch. The future development for this version of the PROS kernel will be focused on maintenance and critical bugfixes.

PROS 3 refers to the kernel that runs on the VEX V5 microcontroller platform. The majority of our development focus will be on this version of the PROS kernel.

Does PROS support C++?

  • PROS 3.x (V5) officially supports C++. We're still working on enabling all of the features of C++ (particularly in the I/O area).
  • PROS 2.x (Cortex) does not officially support C++. Some users have found ways around this, but be warned: we will not be able to help if you run into issues doing this.

Cool, how do I get it?

Pay a visit to our website, pros.cs.purdue.edu, to download our latest installer or view installation instructions for your preferred platform.

How do I use it?

We have a number of resources available on our website, including

I still have questions!

Drop us a line

I think I found a bug!

We maintain GitHub repositories for the three major components of the PROS ecosystem:

If you find a problem with our documentation or tutorials, we have a repository for that, too, at purduesigbots/pros-docs.

Hey! Why can't I build the PROS 3 kernel?

The PROS 3 kernel depends on VEX's proprietary Software Development Kit (SDK), which is not publicly available.

More Repositories

1

pros-cli

Command Line Interface for managing PROS projects. Works with V5 and the Cortex
Python
108
star
2

ARMS

The ARMS library packaged for easy distribution with PROS
C++
32
star
3

pros-docs

Source for the PROS website
HTML
31
star
4

BLRS-Wiki

BLRS Gitbook Wiki
Shell
22
star
5

forkner-public

PROS 3 Code for the Team BLRS 15" Robot using the 2018-19 VEX U Turning Point Season
C++
21
star
6

pros-vsc

PROS plugin for VS Code
TypeScript
20
star
7

VOSS

C++
19
star
8

libblrs

Useful utilities made by Purdue's VEX U BLRS team for PROS 2
C
16
star
9

pros-cli2

Command Line Interface for managing PROS projects
Python
13
star
10

pros-atom

Main plugin for supporting PROS development in Atom
CoffeeScript
11
star
11

JINX

Interactive Graphical Debugger
JavaScript
7
star
12

pros-atom3

Provides integration with the PROS 3.x ecosystem
JavaScript
7
star
13

EngineeringNotebookTemplate

A template for creating a VEX engineering notebook with LaTeX.
TeX
6
star
14

purdueros

Legacy repository of PROS documentation
HTML
5
star
15

purdueros-eclipse

Legacy Plugin for PROS on Eclipse
C++
5
star
16

pros-doxygen-docs

HTML
4
star
17

clang-format-action

run clang-format on the diff from the latest commit
Dockerfile
4
star
18

pros-mainline

Upgrade manifests for CLI to fetch
3
star
19

pros-cli-middleware

node abstraction layer for PROS CLI
TypeScript
3
star
20

liblvgl

C
2
star
21

vision-detection

PROS Template for object detection with the V5 vision sensor
C++
2
star
22

homebrew-pros

Homebrew tap for PROS
Ruby
2
star
23

pros2

Source code for PROS kernel 2: open source C development for the VEX Cortex microcontroller
C
2
star
24

atom-bootstrapper

JavaScript
1
star
25

TowerTakeover-15in

Code for BLRS 15" robot from the 2019-2020 season
C++
1
star
26

Machine-Autonomous-Planning

GUI to Path Autons and generate ARMS code
Python
1
star
27

ChangeUp-15in

C++
1
star
28

pros-installers-old

C++
1
star
29

website

1
star
30

toolchain

CI scripts to build the necessary packages for components on the PROS toolchain
PowerShell
1
star
31

purdueros-kernels

Legacy update site for PROS Kernels
1
star