jittercompany / f1-led-circuit Goto Github PK
View Code? Open in Web Editor NEWFormula 1 LED circuit
Formula 1 LED circuit
I have had a successful experience using an SHT31 temperature and humidity sensor using I2C.
SHT31:
This is the crate I used:
For the data pulled from https://openf1.org/
Attached is are the data points for the x, y, and z coordinates as well as the corresponding timestamp for Max Verstappen's results from the 2023 Dutch Grand Prix.
Here is how I generated this data:
https://github.com/CodingInGreen/f1-led-circuit-track-data
I attempted to plot the data here:
https://github.com/CodingInGreen/f1-led-circuit-track-plot/blob/main/zandvoort_track.png
But as you can see the plot doesn't represent anything close to the actual track's form.
There are positive and negative integers as the x and y coordinates, so we need to find the origin (0,0) for this data.
There is a separate project that is successfully mapping the data to the form of the track, it's open source, but they haven't yet built out the track for Zandvoort so you can see in this example if you select the 2023 race for the Zandvoort track the 3D car drives around without a track:
https://www.f1nsight.com/
https://github.com/adityakotha03/F1nsight
We discussed the possibility of live data streaming over Wifi. The owner of the openf1 repository says that there IS access to real-time data during the race.
f1-led-circuit-rust
to firmware
f1-led-circuit-kicad
to kicad
or pcb
We want to use addressable LEDs.
As far as we know there are two versions:
They work with different protocols.
To make a selection we should make an overview of the available parts and figure out the differences between them.
Board labeled #2. LEDs light up through U67. Routing between U67 and U68 may be defective, as U68 through U96 do not light up.
We need to calculate the maximum current consumption for the board and select the appropriate power adapter and voltage regulator/buck converter.
The folder name is incorrect
Currently, we know the high level requirements vaguely. But we should write them down in a detailed and testable/measurable way.
Requirement - Turn one HD108-2020 LED of the f1-led-circuit board a specific RGB color.
Wurth Elektronik
Series: Tact Switches
Part Number: 430 182 070 816
I first output to a .csv file the coordinates for the x,y positions of the LED footprints from KiCad. I set the origin to be offset by the KiCad x, y coordinate of the bottom left PCB edge corner, so that we'd be dealing with only positive x and y coordinates.
This is the script to get that data:
https://github.com/JitterCompany/f1-led-circuit/blob/master/kicad/x_y_led_coords_zandvoort/get_x_y_from_origin.py
I then output to a .csv file the dataset from the race data from Max Verstappen's 2023 Dutch Grand Prix at Zandvoort using program:
https://github.com/CodingInGreen/f1-led-circuit-track-data/blob/main/src/main.rs
I then plotted that data using this program:
https://github.com/CodingInGreen/f1-led-circuit-track-plot/blob/main/src/main.rs
Which gave me this plot:
https://github.com/CodingInGreen/f1-led-circuit-track-plot/blob/main/zandvoort_track_adjusted.png
I then normalized the x,y coordinates of the output from the KiCad led footprint positions to the track data using this program:
https://github.com/CodingInGreen/f1-led-circuit-normalize-data/blob/master/src/main.rs
And plotted the led positions using this program:
https://github.com/CodingInGreen/f1-led-circuit-plot-leds/blob/master/src/main.rs
Which gave me this plot:
https://github.com/CodingInGreen/f1-led-circuit-plot-leds/blob/master/led_plot_adjusted.png
The next step correlate the led positions with the track data.
Here is the datasheet with the proper dimensions of the component:
In the current pcb layout the footprint dimensions are slightly off from the component dimensions.
We will hand solder the component as it is very close to fitting or leave it off the board.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.