aboutsummaryrefslogtreecommitdiffstats
path: root/midterm_report
diff options
context:
space:
mode:
authorSam Anthony <sam@samanthony.xyz>2025-10-13 14:27:57 -0400
committerSam Anthony <sam@samanthony.xyz>2025-10-13 14:27:57 -0400
commit9cb05fffab1be22a02832dfc0fd14211da8eeea2 (patch)
tree0f5401bb5619633cf6b8b862008dc007d3255db6 /midterm_report
parentccf2d029feb19c5c976807d29cc78fcb9d06e981 (diff)
downloadcan-gauge-interface-9cb05fffab1be22a02832dfc0fd14211da8eeea2.zip
midterm report: next steps
Diffstat (limited to 'midterm_report')
-rw-r--r--midterm_report/midterm_report.tex27
-rw-r--r--midterm_report/references.bib32
2 files changed, 45 insertions, 14 deletions
diff --git a/midterm_report/midterm_report.tex b/midterm_report/midterm_report.tex
index 1e358f1..27cf6c0 100644
--- a/midterm_report/midterm_report.tex
+++ b/midterm_report/midterm_report.tex
@@ -4,7 +4,7 @@
\usepackage[backend=biber]{biblatex}
\usepackage{amsmath}
-\title{\textsc{Comp} 490 Midterm Report}
+\title{\textsc{Comp} 490 Mid-Term Report}
\author{Sam Anthony 40271987 \\
sam@samanthony.xyz \\ s\_a365@concordia.ca
@@ -198,8 +198,6 @@ All signal vias are accompanied by a ground via to keep the E fields from spread
All traces are microstripped above a solid ground plane, again to keep the fields tight and to give the current a return path.
The noisy switching regulator is placed far away from the other components to reduce EMI---the sensitive analog signals and the DACs are far away, on the opposite side of the board.
-TODO
-
\section{Firmware}
@@ -222,17 +220,32 @@ This is a major disappointment, but I will have to work around it seeing as the
\section{Software}
-TODO
+Software is any program that runs on a host PC, as opposed to on the microcontroller.
+I wrote a program called \texttt{usbcom} that communicates with the PIC via USB.
+It connects its standard input to the OUT USB endpoint, and its standard output to the IN USB endpoint.
+It is written in Go, and uses libusb.
-\section{Errata}
+\texttt{usbcom} and the PIC firmware communicate using a proprietary text-based protocol over the USB CDC (communications device class) interface.
+The protocol is defined in loose Backus-Naur form \cite{protocol}.
-TODO
+I also wrote a Python script---\texttt{bittiming.py}---to calculate CAN bit timing parameters for the MCP2515.
\section{Next steps}
-TODO
+When the board arrives, I will do a visual inspection to ensure that nothing went wrong during manufacturing.
+Then I will solder the THT components in place.
+Once that is done, I will test the board for continuity and shorts.
+With a fully assembled board, I can flash the firmware and migrate system testing from the breadboard to the printed prototype board.
+I will finish developing the rest of the firmware, and run through the full suite of system tests that I will have at that point.
+
+I bought some equipment for testing and debugging the system.
+A USBtin USB/CAN interface will allow me test the reception of CAN frames \cite{usbtin}.
+The EspoTek Labrador is a combined power supply, oscilloscope, and logic analyzer \cite{espotek_labrador}.
+It will be used for powering the board and debugging the SPI lines.
+
+If I have time, I would also like to do some experiments with the power supply to see how it handles changes in input voltage.
\printbibliography
diff --git a/midterm_report/references.bib b/midterm_report/references.bib
index 04defbe..26c60a1 100644
--- a/midterm_report/references.bib
+++ b/midterm_report/references.bib
@@ -47,19 +47,37 @@
url = {https://www.bosch-motorsport.de/content/downloads/Raceparts/Resources/pdf/Data%20Sheet_70496907_Pressure_Sensor_Combined_PST-F_1.pdf},
urlseen = {2025-10-13},
},
+@online{mla_usb,
+ title = {MLA USB},
+ organization = {Microchip Inc.},
+ publisher = {Github},
+ url = {https://github.com/MicrochipTech/mla_usb},
+},
+@online{usbtin,
+ title = {USBtin},
+ subtitle = {USB to CAN Interface},
+ author = {Thomas Fischl},
+ url = {https://www.fischl.de/usbtin/},
+ urlseen = {2025-10-13},
+},
+@online{espotek_labrador,
+ title = {EspoTek Labrador Board},
+ organization = {EspoTek},
+ url = {https://espotek.com/labrador/},
+ urlseen = {2025-10-13},
+},
@misc{power_budget,
title = {Power Budget Spreadsheet},
author = {Sam Anthony},
- url = {power_budget.ods},
+ url = {doc/power/power_budget.ods},
},
@misc{power_supply,
title = {TPS5430 Power Supply Spreadsheet},
author = {Sam Anthony},
- url = {power_supply.ods},
+ url = {doc/power/power_supply.ods},
},
-@online{mla_usb,
- title = {MLA USB},
- organization = {Microchip Inc.},
- publisher = {Github},
- url = {https://github.com/MicrochipTech/mla_usb},
+@misc{protocol,
+ title = {Protocol},
+ author = {Sam Anthony},
+ url = {doc/protocol},
},