Telemetry Interface (For UBC Solar Team)

Demo Source Code

Introduction

The project will be used to monitor the real-time data read from the solar car during the race. Give the team a better understanding of the car condition by providing information such as battery, motor temperature. My role in this project is to make sure the data are stored and can be fetched properly. Technologies implemented are: NodeJS(Express), SocketIO, MongoDB.

Spotlight

1. User could choose to fetch a specific data or all available data recorded at a specific time.

2. Ideally the real car location during the race can be monitored by the interface.

Lessons Learned

One of the challenge of the project is the interaction between frontend and backend. After user input the information needed to do the fetching, a new page will be rendered. Which cause the SocketIO to be disconnected. Unfortunately I couldn't figure out a way to make it work for multiple pages, I am sure there is a way to do that and it could be a challenge for future me when I am more experienced. What I did instead is to leverage the localStorage API. Store the data locally via SocketIO before switching pages. I feel like I am "cheating" a little bit, but the point is that it worked perfect as I expected.Still, it is a fantastic learning opportunity for me to understand how more complex website works.

Go Back