-
Notifications
You must be signed in to change notification settings - Fork 6
Welcome to the Software Team
Author: Eric Udlis
Last Revised: 2/08/19
Software is responsible for all data and controls that come outside of the pod. This includes the pod operator's dashboard and the database storing all of our run data, networking outside of the pod, and any other software project that happens outside of the pod. We work closely with the controls team to create a seamless connection between the team and the hardware inside the tube.
If at anytime you have any questions about any of the information on this page, slack message your team lead and they will be happy to clarify.
First check if you have git installed, and if you don't you should take a brief detour and do so. Once you have it all setup, you are going to want to clone this repository by going to your command line and typing
$ git clone https://github.com/badgerloop-software/pod-dashboard/ # Download the repository
$ npm install # Download the required packages from NPM (You'll only have to do this once)
$ npm start # Start the Dashboard
To test sending pod data:
$ node testpodserver.js # Send test data to the dashboard
Pod 3 and 4's dashboards were written in a Javascript engine called NodeJS. This is different than the Javascript you might be used to if you do some web development. NodeJs allows Javascript to be run on the server, allowing us to communicate with multiple files, setup an HTTP server, read files, etc. We infrequently use the Node Package Manager(NPM) to download third party packages to use on the dashboard, because these packages are More information can be found at this link
This is a Node Package. The best way to describe it is packaged chrome. This allows the dashboard to be all in one package. More information can be found here
This is the service we use to host our database. It's a NoSQL based service. More information can be found here
Eric is the software team lead. Eric is a 1st year student who has been on the team since the beginning of his freshman year. He has experience with Java and Javascript. He also has gained experience in several electrical systems by being electrical head on his high school robotics team.
Ezra is the controls team lead. Ezra is a 3rd year student who has been on the team for 3 years. He was the Software team lead for Competition 3, and will be on Co-op with Extreme Engineering Solutions in Middleton this Spring. Ezra wrote the code behind pod III’s dashboard as well as some embedded code for interfacing with sensors.
Ethan is a 4th year student who has been on the team for 2 years. He was on co-op with Extreme Engineering Solutions in Middleton last Fall and was previously the controls team lead, in which he gained experience with writing pod III’s firmware.
Computer Science Post-Doc who joined the team late in pod III but really pulled through! Machine learning, networking, AI, he’s your guy!
I have been asked this question about 200 times, you can but you need to install several packages to get it to work. For javascript, we don't need an embedded compiler and all the other fancy tools that an IDE comes with. A code editor is all that's really needed. I recommend VS Code or Atom. Or if you're feeling risky use VIM.