diff --git a/README.md b/README.md index 881a043b2..0b67f5ca6 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,5 @@ + + # Chameleon-Vision [![CircleCI](https://img.shields.io/circleci/build/github/Chameleon-Vision/chameleon-vision/dev?label=dev&logo=name)](https://circleci.com/gh/Chameleon-Vision/workflows/chameleon-vision/tree/dev) @@ -5,51 +7,57 @@ Chameleon Vision is free open-source software for FRC teams to use for vision proccesing on their robots. -## Getting started -See Deployment for notes on how to deploy the project on a live system. +There instructions are for compiling (contributing) and running the source-code of the project. +This is NOT intended for the co-processor setup or your testing PC. +To run the program normally (from a build .jar file), take a look at our ReadTheDocs documentation for installation [here](https://chameleon-vision.readthedocs.io/en/latest/installation/coprocessor-setup.html) -These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. -(Coming soon!) + +These instruction are for the Chameleon Vision's backend/server in Java +To run the UI's sourcecode (optional) see the UI's [readme](https://github.com/Chameleon-Vision/chameleon-vision/blob/master/chameleon-client/README.md) + +## Hardware +Currently any 64-Bit devices (Windows, Linux and Mac OS) are supported. +32 Bit devices are not supported. + +## Development setup ### Prerequisites ---- -#### For the co-processor -- Java 12 Runtime (See Deployment - Software) -- Avahi Daemon +- Java Development Kit 12: +Follow the correct instructions for your platform from [BellSoft](https://bell-sw.com/pages/liberica_install_guide-12.0.2/) +- Chameleon-vision source code +Clone via a git client or download as zip and extract the source code into a empty folder +#### For the co-processor(Linux system) +- Avahi Daemon: +`sudo apt-get install avahi-daemon avahi-discover avahi-utils libnss-mdns mdns-scan` #### For the driver station - Bonjour - - -## Deployment -Deploying is as simple as uploading the chameleon-vision-1.xx.jar file to your target device. -Run the program with `java -jar chameleon-vision-1.xx.jar` - -## Software - -### Java 12 -Follow the correct instructions for your platform from [BellSoft](https://bell-sw.com/pages/liberica_install_guide-12.0.2/) - -### Avahi Daemon (Linux systems) -`sudo apt-get install avahi-daemon avahi-discover avahi-utils libnss-mdns mdns-scan` - -### Bonjour (Windows Systems) Download and install Bonjour [from here](https://support.apple.com/kb/DL999?locale=en_US) +- VC++ Redistributable (Windows only) +Download and install [this](https://aka.ms/vs/16/release/vc_redist.x64.exe) -## Hardware +## Importing to IDEA +We recommend the use of [Intellij Idea](https://www.jetbrains.com/idea/) for running the source-code -### ARM Co-processors -Currently only Raspberry Pi 3 or 4 models with at least 1GB of RAM are tested and supported. -Additional ARM-based single board computers (Odroid, Nvidia Jetson, etc.) will be supported in the near future. +1. Import Project +![](https://i.vgy.me/wbALKm.png) -### x86 Computers -Currently any 64-Bit devices (Windows, Linux and Mac OS) are supported. -32 Bit devices are not supported. +2. Choose the path to `chameleon-server` inside the copy of Chameleon-Vision that you cloned or downloaded +![](https://i.vgy.me/KmrzCV.png) + +3. Import the project as a `Maven` project + +![](https://i.vgy.me/2ltb7B.png) + +4. Under `JDK for importer` choose the JDK 12 you downloaded earlier +5. Maven will automatically download the necessary dependencies +6. Run `Main` under `src/main/java/com/chameleonvision/` + ## Authors * **Sagi Frimer** - *initial work* - websocket, settings manager, UI @@ -71,8 +79,6 @@ Currently any 64-Bit devices (Windows, Linux and Mac OS) are supported. * [Javalin](https://javalin.io/) -* [Spring Framework](https://spring.io/) - * [JSON](https://json.org) * [Google](https://github.com/google) - Specifically [Gson](https://github.com/google/gson)