Go to file
2024-11-21 00:04:33 +00:00
gerber fabout, bme 2024-11-17 10:22:01 -08:00
library routing and 3d models 2024-11-11 00:44:17 -08:00
.gitignore Initial commit 2024-11-05 03:51:48 +00:00
bst-bme280-ds002.pdf Upload files to "/" 2024-11-20 23:50:00 +00:00
cm4-test.kicad_pcb fabout, bme 2024-11-17 10:22:01 -08:00
cm4-test.kicad_pro fabout, bme 2024-11-17 10:22:01 -08:00
cm4-test.kicad_sch fabout, bme 2024-11-17 10:22:01 -08:00
CM4.kicad_sch fabout, bme 2024-11-17 10:22:01 -08:00
fp-lib-table routing and 3d models 2024-11-11 00:44:17 -08:00
gerber.zip fabout, bme 2024-11-17 10:22:01 -08:00
LICENSE Initial commit 2024-11-05 03:51:48 +00:00
README.md Update README.md 2024-11-21 00:04:33 +00:00
Samsung-NVMe-SSD-980-PRO-Data-Sheet_Rev.2.1.pdf Upload files to "/" 2024-11-20 23:49:51 +00:00
ssd.kicad_sch fabout, bme 2024-11-17 10:22:01 -08:00
sym-lib-table init 2024-11-10 20:58:52 -08:00

cm4-test

Engineer Responsible for this Section: Katherine Sarna, Willow Herron

Section README Authored By: Katherine Sarna

Datasheets:

  • BME280 (Digital Humidity, Pressure and Temperature Sensor)
  • Samsung NVMeSSD (Storage card)

Purpose of cm4-test: To test the compute module. The CM4 is the controller for our control (main) board.

We have a BME280 sensor here, which monitors humidity, pressure, and temperature inside the greenhouse to ensure happy, healthy plant growth. This sensor goes on the main control board only (not the daughterboards) since temperature is relatively the same throughout a greenhouse.

The NVMeSSD is used for storage for the Raspberry Pi, since the Pi was bought without onboard storage, and because we don't want to use a too-small or too-slow SSD card in this design. As far as routing design considerations go, the NVMeSSD is a high speed digital signal (the only high speed digital signal we're using here), and it's PCiE so it is a fast digital signal.

  • PCiE: Peripheral component interconnect express

We routed one PCiE lane, which had to be impedance-controlled differential pairs with coplanar waveguides. The distance between ground (GND) and the signal traces, as well as the distance between signal traces, is tightly controlled. We used an impedance control standard from JLC-3313(?), which defines how thick the dielectric is between each layer of the PCB. This gives us the desired impedance control! We broke out I2C onto the connector on side of board, so we could interface with the load-cell-test board as well.