diff --git a/website/versioned_docs/version-acs_cc/project/2026/carla.popescu/images/week1.webp b/website/versioned_docs/version-acs_cc/project/2026/carla.popescu/images/week1.webp new file mode 100644 index 00000000000..2215dd21438 Binary files /dev/null and b/website/versioned_docs/version-acs_cc/project/2026/carla.popescu/images/week1.webp differ diff --git a/website/versioned_docs/version-acs_cc/project/2026/carla.popescu/images/week2.webp b/website/versioned_docs/version-acs_cc/project/2026/carla.popescu/images/week2.webp new file mode 100644 index 00000000000..9c4a9698d49 Binary files /dev/null and b/website/versioned_docs/version-acs_cc/project/2026/carla.popescu/images/week2.webp differ diff --git a/website/versioned_docs/version-acs_cc/project/2026/carla.popescu/images/week2_2.webp b/website/versioned_docs/version-acs_cc/project/2026/carla.popescu/images/week2_2.webp new file mode 100644 index 00000000000..c918f726444 Binary files /dev/null and b/website/versioned_docs/version-acs_cc/project/2026/carla.popescu/images/week2_2.webp differ diff --git a/website/versioned_docs/version-acs_cc/project/2026/carla.popescu/index.md b/website/versioned_docs/version-acs_cc/project/2026/carla.popescu/index.md index 9e420bda325..a50793cad19 100644 --- a/website/versioned_docs/version-acs_cc/project/2026/carla.popescu/index.md +++ b/website/versioned_docs/version-acs_cc/project/2026/carla.popescu/index.md @@ -37,10 +37,26 @@ The system operates as a state machine with the following states: ## Log ### Week 5 - 11 May +Gathered all the necessary components and set up the development environment +(Rust + Embassy). Started with the basic hardware setup: connected the laser +module and LDR to the breadboard and verified the ADC readings. Implemented +the software baseline calibration for the LDR. + +![Early hardware setup](images/week1.webp) ### Week 12 - 18 May +Integrated the SSD1306 OLED display over I2C and the RC522 RFID module over +SPI. Implemented the access control logic: admin card recognition, grace +period, and wrong attempt counter. Connected the buzzer via PWM. + +![OLED displaying startup message](images/week2.webp) +![Full system on breadboard](images/week2_2.webp) ### Week 19 - 25 May +Finalized and tested all components together. Assembled everything into a box +for the presentation. The laser beam, alarm, RFID access control, and OLED +display all work correctly together. + ## Hardware @@ -50,7 +66,7 @@ The system operates as a state machine with the following states: | KY-008 Laser Module | 1 | Emits the laser beam (650nm, 5V) | | LDR Photoresistor (5528) | 1 | Detects laser beam interruption via ADC | | RC522 RFID Module | 1 | Reads MIFARE cards via SPI | -| MIFARE Classic 1K Cards | 5 | 1 admin + 3 users + 1 invalid test card | +| MIFARE Classic 1K Cards | 2 | 1 admin + 1 invalid test card | | SSD1306 OLED Display (0.96") | 1 | Displays system status via I2C | | Active Buzzer (5V) | 1 | Sounds the alarm | | BC547 NPN Transistor | 1 | Drives the buzzer from 3.3V GPIO | @@ -97,7 +113,7 @@ The system operates as a state machine with the following states: | [embassy-time](https://docs.embassy.dev) | Async timers | Grace period timing, debounce | | [embedded-hal](https://github.com/rust-embedded/embedded-hal) | Hardware Abstraction Layer | Portable hardware interface traits | | [ssd1306](https://crates.io/crates/ssd1306) | OLED display driver | Rendering text and status messages | -| [mfrc522](https://crates.io/crates/mfrc522) | RFID driver | Reading MIFARE Classic 1K card UIDs | +| rc522 (custom driver) | Custom RC522 SPI driver | Reading MIFARE Classic 1K card UIDs via SPI | | [embedded-graphics](https://crates.io/crates/embedded-graphics) | 2D graphics library | Text rendering on OLED display | ## Links