
Adjustable Load v1.1
kholia/Adjustable-Load-v1.1
Easy + Cost-Effective Variable Electronic Load.

Collection of my Electrical & Computer Systems Engineering projects: FPGA/Verilog digital design, STM32 embedded systems, and visible light communication research.
PIR design updated is an open-source printed circuit board by lwuu0052, from the lwuu0052/ECSE-Projects repository on GitHub. It is a 2-layer board of 91 × 36.5 mm with 19 parts on 9 nets, routed with 38 tracks and 0 vias.
It is built around the IRFZ44NPBF. Its parts include 5 resistors, 3 capacitors, 3 diodes, 2 connectors and 1 transistor. It belongs with the fPGA and programmable logic boards of this library.
A collection of my Electrical & Computer Systems Engineering projects from Monash University Malaysia, covering FPGA/Verilog digital design, STM32 embedded systems, analogue circuit design, PCB design, communication systems, MEMS device fabrication, and undergraduate research in visible light communication.
Author: Wu Li Min
| Project | Area | Tools / Hardware | Highlights |
|---|---|---|---|
| 16-bit x72 Soft-Core Processor | Digital design | Verilog, Quartus Prime, ModelSim, Intel MAX 10 (DE10-Lite) | Bus-based 16-bit processor with 7 instructions, a 4-tick FSM control unit and BCD display; 3,396 self-checking testbench cases |
| Dual-STM32 Audio Acquisition System | Embedded systems | STM32L432KC, STM32CubeIDE, C, Python | 44.1 kHz / 12-bit audio sampling over SPI, ultrasonic trigger, UART at 921600 bps, Python CLI exporting WAV/CSV/PNG |
| True-RMS-to-DC Converter | Analogue design | LTspice, TL084/TL974, 2N3904, Analog Discovery 3 | Discrete log–antilog converter; all 13 test cases within ±1 % (mean error 0.46 %), DC to 20 kHz |
| PIR Motion-Activated LED Fader PCB | PCB design | KiCad 10 | Two-layer board with PIR interface, adjustable RC fade-in/fade-out timing and MOSFET LED driver |
| CDMA with Walsh–Hadamard Codes | Communications | MATLAB | Two-user BPSK CDMA simulation: BER vs Eb/N0, near–far problem, timing-offset leakage |
| One-Port SAW Resonator | MEMS / sensors | Photolithography, FESEM, AFM, NanoVNA, ESP32-C3, Python | Fabricated 129.6 MHz LiNbO₃ resonator; TCF of −48 ± 7 ppm/°C measured in a PI-controlled thermal chamber |
| UROP – Visible Light Communication (SPI link) | Research | Verilog, Quartus, Teensy 4.1, PlatformIO (C++), DE2-115 | Replaced the UART PC–FPGA link with SPI; up to ~4.57 Mbps within a packet |
.
├── 16-bit x72 Soft-Core Processor report/ Verilog sources, Quartus project, report (PDF)
├── CDMA_project/ MATLAB simulation script, report (PDF)
├── Dual-STM32 Audio Acquisition System slide/
│ └── code/ Sampling STM, Processing STM, Python + C CLI
├── One-Port SAW Resonator/ Project report (PDF)
├── PCB_Project/PIR_Sensor/ KiCad project, schematic (PDF), layout render
├── TRUE-RMS-TO-DC CONVERTER/ Project report (PDF)
└── UROP Project - Visible Light .../ FPGA + Teensy SPI code for both master/slave setupsEach project folder has its own README with an overview, implementation details, results and instructions for opening or running the work.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 4 | MountingHole | MountingHole:MountingHole_3.2mm_M3 | H1, H2, H3, H4 |
| 2 | 100k | Potentiometer_THT:Potentiometer_Bourns_3296W_Vertical | R2, R3 |
| 2 | 1N4148 | Diode_THT:D_DO-35_SOD27_P7.62mm_Horizontal | D1, D3 |
| 1 | 100nF | Capacitor_THT:C_Disc_D5.0mm_W2.5mm_P2.50mm | C2 |
| 1 | 100µF | Capacitor_THT:CP_Radial_D6.3mm_P2.50mm | C1 |
| 1 | 1M | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal | R1 |
| 1 | 220 | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal | R5 |
| 1 | 330 | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal | R4 |
| 1 | 47µF | Capacitor_THT:CP_Radial_D6.3mm_P2.50mm | C3 |
| 1 | Conn_01x02 | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | J2 |
| 1 | Conn_01x03 | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J3 |
| 1 | IRFZ44NPBF | Package_TO_SOT_THT:TO-220-3_Vertical | Q4 |
| 1 | LED | LED_THT:LED_D5.0mm | D2 |
| 1 | LOGO | LOGO | G*** |
It measures 91 × 36.5 mm and has 2 copper layers, 1.6 mm thick.
19 parts, built around the IRFZ44NPBF. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the lwuu0052/ECSE-Projects repository on GitHub, at the commit this page was made from: the board is PCB_Project/PIR_Sensor/PIR_design_updated.kicad_pcb and its schematic PCB_Project/PIR_Sensor/PIR_design_updated.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask lwuu0052 before reusing the design.

kholia/Adjustable-Load-v1.1
Easy + Cost-Effective Variable Electronic Load.

barrettotte/mech-mouse-jiggler
A very impractical and stupid mouse jiggler using a crank mechanism, 12V DC motor, and a PWM circuit.


almondsun/DynamicSystemsAndControl
Dynamic Systems and Control coursework: Buck converter modeling, reports, KiCad PCB and STM32 firmware

khalidislam377-gif/Bidirectional-H-bridge-motor-driver-with-MCU-and-controlling-buttons-and-knob
`An embedded control architecture and discrete power stage for bidirectional DC motor regulation, featuring finite-state machine logic, real-time telemetry, and a Rev 1.0 hardware post-mortem.`

KomplexKapharnaum/KXKM_Batterie_Parallelator
Battery Management Unit for parallel 24-30V packs Up to 32 batteries ESP32-S3 BLE + MQTT + InfluxDB iOS companion app

