
LevelShifter
gusmanb/logicanalyzer
24 channel, 100Msps logic analyzer hardware and software

A single system concept — an autonomous greenhouse controller — carried through five industry-standard engineering tools: embedded control, analog circuit design, digital signal processing, virtual instrumentation, and professional PCB design. Built entirely in simulation, with zero physical hardware.
Greenhouse Controller Shield is an open-source printed circuit board by asdaf77, from the asdaf77/smart-greenhouse-controller- repository on GitHub. It is a 2-layer board of 68 × 53 mm with 21 parts on 49 nets, routed with 249 tracks and 23 vias.
Its parts include 6 resistors, 2 diodes, 1 capacitor and 1 transistor.
A single system concept — an autonomous greenhouse controller — carried through five industry-standard engineering tools: embedded control, analog circuit design, digital signal processing, virtual instrumentation, and professional PCB design. Built entirely in simulation, with zero physical hardware.
| Tool | What Was Built | Key Skill |
|---|---|---|
| Tinkercad Circuits | Smart Greenhouse Controller v2.1 — full embedded system | Embedded systems, sensors, actuators, PWM control |
| LTspice | RC Low-Pass Filter (following a regulator-design pivot) | Analog circuit simulation, frequency response analysis |
| MATLAB | 24-Hour Temperature Analysis dashboard | Digital filtering, statistics, data visualization |
| LabVIEW | Virtual Instrument Dashboard (gauges, LEDs, live chart) | Graphical programming, real-time monitoring |
| KiCad | Greenhouse Controller Shield — custom Arduino PCB | Schematic capture, ERC/DRC debugging, PCB routing, BOM |
A fully autonomous, closed-loop control system. Three analog sensors (temperature, light, soil moisture) drive five outputs — a variable-speed cooling fan, an irrigation servo valve, a grow light, an RGB status indicator, and an audible alarm — through a 7-state priority-based state machine.
Highlights: 5-sample sensor averaging · proportional PWM fan control · day/night-aware irrigation · serial telemetry & data logging. Two logic-ordering defects were found and fixed via a repeatable 6-scenario test protocol.
An initial 5V linear regulator design (7805 / LM317) hit missing SPICE models in LTspice's library. Rather than continuing to debug a tooling dead-end, the project pivoted to a fully characterized RC low-pass filter (1 kΩ / 1 µF, fc ≈ 159 Hz), verified at 100 Hz, 1 kHz, and 10 kHz — the same filtering principle protecting the Arduino's 5V rail in Part I.
24 hours of simulated greenhouse temperature data (1,441 samples), processed with a 10-point moving-average filter and analyzed against the same WARNING (28°C) / CRITICAL (35°C) thresholds used in the firmware. Results: 27.0°C average, 33.8°C peak, zero hours above critical.
A graphical front panel — gauges, threshold-triggered LEDs, and a live waveform chart — reproducing the greenhouse's monitoring logic in LabVIEW's dataflow programming environment. Verified across a 20°C / 30°C / 40°C test sweep.
A custom Arduino Uno shield — the Greenhouse Controller Shield — that replaces the breadboard from Part I entirely. Taken through the full professional workflow: schematic capture, Electrical Rule Check (36 → 3 → 0 errors), footprint assignment, PCB layout with a USB cutout, routing all 49 nets, Design Rule Check (0 errors, 0 warnings), 3D verification, and a full Bill of Materials.
├── greenhouse_controller.ino # Final Arduino firmware (v2.1)
├── Smart_Greenhouse_Controller_Full_Engineering_Report.docx # Full 5-part engineering report
├── index.html # Interactive project page (GitHub Pages)
└── README.mdAbdulatef — Final-Year BEng (Hons) Mechatronics Engineering, Kuala Lumpur, Malaysia
| Qty | Value | Footprint | References |
|---|---|---|---|
| 4 | 220 | Resistor_SMD:R_0805_2012Metric | R2, R3, R4, R5 |
| 3 | Conn_01x03 | Connector:FanPinHeader_1x03_P2.54mm_Vertical | LIGHT1, MOISTURE1, TMP36 |
| 3 | Conn_01x04 | Connector:FanPinHeader_1x04_P2.54mm_Vertical | LCD1, MOTOR1, SERVO1 |
| 1 | 100n | Capacitor_SMD:C_0805_2012Metric | C1 |
| 1 | 10k | Resistor_SMD:R_0805_2012Metric | R1 |
| 1 | 10k | Potentiometer_THT:Potentiometer_Bourns_3386P_Vertical | RV1 |
| 1 | 1k | Resistor_SMD:R_0805_2012Metric | R6 |
| 1 | Buzzer | Buzzer_Beeper:Buzzer_12x9.5RM7.6 | BZ1 |
| 1 | Conn_02x08_Counter_Clockwise | Connector_PinSocket_2.54mm:PinSocket_2x08_P2.54mm_Vertical | ARDUINO_DIGITAL1 |
| 1 | Conn_02x10_Counter_Clockwise | Connector_PinSocket_2.54mm:PinSocket_2x10_P2.54mm_Horizontal | ARDUINO_ANALOG1 |
| 1 | D | Diode_SMD:D_SOD-123 | D2 |
| 1 | LED | LED_SMD:LED_0805_2012Metric | D_GROW1 |
| 1 | LED_KRGB | LED_SMD:LED_RGB_1210 | D1 |
| 1 | Q_NPN_BCE | Package_TO_SOT_SMD:SOT-23 | Q1 |
It measures 68 × 53 mm and has 2 copper layers, 1.6 mm thick.
21 parts. 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 asdaf77/smart-greenhouse-controller- repository on GitHub, at the commit this page was made from: the board is KiCad/Greenhouse_Controller_Shield/Greenhouse_Controller_Shield.kicad_pcb and its schematic KiCad/Greenhouse_Controller_Shield/Greenhouse_Controller_Shield.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 asdaf77 before reusing the design.

gusmanb/logicanalyzer
24 channel, 100Msps logic analyzer hardware and software

mntmn/amiga2000-gfxcard
MNT VA2000, an Open Source Amiga 2/3/4000 Graphics Card (Zorro II/III), written in Verilog


hackclub/OnBoard
💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

drandyhaas/KiCadRoutingTools
A set of Python/Rust tools to aid routing in KiCad

Arrow-air/project-quiver
Project Quiver documentation, designs, and project artifacts.

