mirror of
https://github.com/cotes2020/chirpy-starter.git
synced 2025-06-08 17:20:19 +10:00
add projects
This commit is contained in:
parent
a3f872151e
commit
32e9b42d97
18
_posts/can-analyzer.md
Normal file
18
_posts/can-analyzer.md
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
# [can-analyzer](https://github.com/Sneupi/can-analyzer/blob/main)
|
||||||
|
Analyzer-Translator tool for decoding automotive CAN bus
|
||||||
|
|
||||||
|
Originally intended for decoding data, in creation of custom [digital dashboard](https://github.com/Sneupi/digital-dashboard) project.
|
||||||
|
|
||||||
|
# Notes
|
||||||
|
1. Read `TranslateCAN.h` for tuning the tool to decode your vehicle
|
||||||
|
2. Set CAN_RX & CAN_TX in the `.ino` according to your CAN transciever wiring
|
||||||
|
|
||||||
|
# Project Requirements
|
||||||
|
1. Hardware req: ESP32 with CAN Transciever
|
||||||
|
2. Software req: Terminal emulator (such as Tera Term) that supports ANSI escape codes
|
||||||
|
|
||||||
|
# Serial Commands
|
||||||
|
| cmd | desc |
|
||||||
|
| --- | --- |
|
||||||
|
| m | switch to live CAN map |
|
||||||
|
| t | switch to live CAN translations |
|
56
_posts/csc335-restaurant.md
Normal file
56
_posts/csc335-restaurant.md
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
---
|
||||||
|
image:
|
||||||
|
path: https://img.youtube.com/vi/ePmj9b9VglM/maxresdefault.jpg
|
||||||
|
---
|
||||||
|
|
||||||
|
## CSC 335 - Object-Oriented Programming and Design
|
||||||
|
## [Final Project -- Restaurant](https://github.com/jscm1607/CSC335_FinalProject/tree/videobranch)
|
||||||
|
## Members
|
||||||
|
Gabe Venegas<br />
|
||||||
|
Aidan Fuhrmann<br />
|
||||||
|
Cody Rice<br />
|
||||||
|
Jose Santiago Campa Morales
|
||||||
|
|
||||||
|
## Video
|
||||||
|
[](https://youtu.be/ePmj9b9VglM)
|
||||||
|
|
||||||
|
## Design:
|
||||||
|
Our project follows a MVC strucutre to develop a restaurant
|
||||||
|
manager software from a server's point of view. <br />
|
||||||
|
|
||||||
|
Oue model is made up of five distinct classes (Food, Order,
|
||||||
|
OrderFood, Server and Session). Each model class has its respective
|
||||||
|
Data Access Object (DAO) Class, which extends from the DAO class.
|
||||||
|
An individual DAO class is in change of overriding the DAO methods,
|
||||||
|
which perform basic SQL database operations. The model classes contain
|
||||||
|
their DAO object, and all of the instance variables inside these classes
|
||||||
|
are final, and our methods consist of setters and getters.<br />
|
||||||
|
|
||||||
|
The controller is made up of a Controller class which contains five DAO
|
||||||
|
objects, one for each model class. The controller's main goal is to update
|
||||||
|
the model while communicating with the GUI when a change occurs. The controller
|
||||||
|
holds methods related to each model class, allowing us to retrieve information
|
||||||
|
from the database.<br />
|
||||||
|
|
||||||
|
The view is made up of various graphic panels using Java Swing. Our main
|
||||||
|
entry point is the login frame, where a server has the opportunity to either
|
||||||
|
log into their shift or register themselves. After log in, the server is met
|
||||||
|
with the main window, where other panels have different functions. Some include
|
||||||
|
assigning tables, checking table availability, selecting seats for ordering, and
|
||||||
|
analyzing sales. Our view was created with the help of generative AI.
|
||||||
|
|
||||||
|
## Running from Jar:
|
||||||
|
To run this program, make sure to be able to run maven, and jar files in the command line.
|
||||||
|
```
|
||||||
|
mvn clean package
|
||||||
|
java -jar target/CSC335_FinalProject-1.0-jar-with-dependencies.jar
|
||||||
|
```
|
||||||
|
If you do not have maven, a precompiled jar is provided in repo root.
|
||||||
|
```
|
||||||
|
java -jar CSC335_FinalProject-1.0-jar-with-dependencies.jar
|
||||||
|
```
|
||||||
|
|
||||||
|
## Run without Jar File
|
||||||
|
If running without jar file, make sure you run
|
||||||
|
this program as a Java Application from the
|
||||||
|
LoginFrame.java file.
|
80
_posts/digital-dashboard.md
Normal file
80
_posts/digital-dashboard.md
Normal file
@ -0,0 +1,80 @@
|
|||||||
|
---
|
||||||
|
image:
|
||||||
|
path: https://github.com/Sneupi/digital-dashboard/blob/main/exampleproject.jpg?raw=true
|
||||||
|
---
|
||||||
|
# [digital-dashboard](https://github.com/Sneupi/digital-dashboard/blob/main)
|
||||||
|
|
||||||
|
Source code for ESP32 based CAN-bus powered dashboard.
|
||||||
|
|
||||||
|
Reprogrammable to interpret & display any CAN-bus containing vehicle's CAN data.
|
||||||
|
|
||||||
|
Originally developed for Wildcat Formula Racing (University of Arizona) Formula SAE race car.
|
||||||
|
|
||||||
|
# Get Started
|
||||||
|
|
||||||
|
1. Install VS Code
|
||||||
|
2. Install PlatformIO extension for VS Code
|
||||||
|
3. Plug ESP32 and restart VS Code
|
||||||
|
4. Within PlatformIO extension "Clone Git Project"
|
||||||
|
5. Upload to ESP32 using PlatformIO sidebar
|
||||||
|
|
||||||
|
# Re-Configurability
|
||||||
|
|
||||||
|
Configured as-is for example project below.
|
||||||
|
|
||||||
|
1. Pinouts for CAN transceiver and pushbutton. Open `pinout.h` source files to do so.
|
||||||
|
|
||||||
|
2. Vehicle-specific CAN-bus interpretation, open CAN source files (`limits.h`, `TranslateCAN.h`) for config instructions. For help decoding your vehicle, see related tool [can-analyzer](https://github.com/Sneupi/can-analyzer).
|
||||||
|
|
||||||
|
3. Compatible with wide range of TFT displays. Read [TFT_eSPI library documentation](https://github.com/Bodmer/TFT_eSPI) and edit library files accordingly (`User_Setup.h` or `User_Setup_Select.h`).
|
||||||
|
|
||||||
|
# Example Project
|
||||||
|
Project for University of Arizona FSAE racecar. Interprets custom MoTeC M150 CAN bus protocol.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
### IMPORTANT
|
||||||
|
ESP32 module requires 5V power (VIN or Micro USB) but GPIO pins operate at 3.3V
|
||||||
|
|
||||||
|
### Parts List
|
||||||
|
|
||||||
|
[ESP32 Microcontroller](https://www.amazon.com/dp/B08D5ZD528)
|
||||||
|
|
||||||
|
[CAN Transceiver (SN65HVD230)](https://www.amazon.com/gp/product/B00KM6XMXO)
|
||||||
|
|
||||||
|
[TFT Display 5" (SSD1963)](https://www.amazon.com/s?k=ssd1963+5+inch)
|
||||||
|
|
||||||
|
...And any pushbutton will work
|
||||||
|
|
||||||
|
### Pinout
|
||||||
|
|
||||||
|
Note: PB = Pushbutton
|
||||||
|
|
||||||
|
Note: TFT_DC may be labeled "RS" depending on the TFT
|
||||||
|
|
||||||
|
| NAME | ESP32 GPIO |
|
||||||
|
| --- | --- |
|
||||||
|
| PB | 5 |
|
||||||
|
| --- | --- |
|
||||||
|
| CAN_RX | 18 |
|
||||||
|
| CAN_TX | 19 |
|
||||||
|
| --- | --- |
|
||||||
|
| TFT_CS | 33 |
|
||||||
|
| TFT_DC | 15 |
|
||||||
|
| TFT_RST | 32 |
|
||||||
|
| --- | --- |
|
||||||
|
| TFT_WR | 4 |
|
||||||
|
| TFT_RD | 2 |
|
||||||
|
| --- | --- |
|
||||||
|
| TFT_D0 | 12 |
|
||||||
|
| TFT_D1 | 13 |
|
||||||
|
| TFT_D2 | 26 |
|
||||||
|
| TFT_D3 | 25 |
|
||||||
|
| TFT_D4 | 17 |
|
||||||
|
| TFT_D5 | 16 |
|
||||||
|
| TFT_D6 | 27 |
|
||||||
|
| TFT_D7 | 14 |
|
||||||
|
|
||||||
|
# Common Issue: ESP32 not detected as COM port
|
||||||
|
|
||||||
|
You may try installing [VCP drivers](https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers?tab=downloads)
|
15
_posts/vsb-logger.md
Normal file
15
_posts/vsb-logger.md
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
---
|
||||||
|
image:
|
||||||
|
path: https://github.com/Sneupi/vsb_logger/raw/refractor/demo.gif
|
||||||
|
---
|
||||||
|
|
||||||
|
# [VSB-LOGGER](https://github.com/Sneupi/vsb_logger/blob/refractor)
|
||||||
|
|
||||||
|
Single window, single screen interface for serial communication with the VSB.
|
||||||
|
|
||||||
|
Displays, plots, and generates CSV logs of realtime metrics from raw data.
|
||||||
|
|
||||||
|
<img src="https://github.com/Sneupi/vsb_logger/blob/refractor/demo.gif" width="550" height="350" />
|
||||||
|
|
||||||
|
## Future Additions:
|
||||||
|
- input scripting via a formatted file
|
Loading…
x
Reference in New Issue
Block a user