Skip to the content
PCBKitNew board
4 layers71.5 × 67.8 mmCustom pcb, the printed circuit board in 3D

WIP - first revision HAS ISSUES - Levoit Air Purifier Custom IoT PCB - based on ESP32

Size
71.5 × 67.8 mm
Copper layers
4
Thickness
4.69 mm
Parts
91
Nets
70
Pads
259
Tracks, vias
919, 154
Pours
17
Routed
Yes
KiCad
KiCad 5 (file 20210424)
Created
14 Apr 2021
Updated
7 Sep 2021

Overview

Custom pcb is an open-source printed circuit board by depau, from the depau/leviot-hw repository on GitHub. It is a 4-layer board of 71.5 × 67.8 mm with 91 parts on 70 nets, routed with 919 tracks and 154 vias.

It is built around the ESP32-WROOM-32, 74HC595D,118 and AMS1117-3.3. Its parts include 34 resistors, 21 capacitors, 13 diodes, 11 switches and 4 ICs. It belongs with the ESP32 boards of this library.

Main components

3

README

README.md

LevIoT - Air Purifier replacement controller

This is a replacement PCB based on ESP32 for the Levoit "True HEPA Air Purifier" Core 300, (Amazon model number: 817915027059).

It has currently not been tested yet, I just ordered it from a PCB manufacturer.

I spent around 30€ for 5 PCBs with most components pre-soldered by the PCB manufacturer, + around 13€ on AliExpress for the push buttons, shift registers and PH connectors.

Touchpad springs and LEDs are going to be recovered from the original PCB.

preview

Taking the original board out

The top cover comes off by inserting a spudger tool between the top white and gray plastic parts.

The PCB is attached to the top plastic lid with some clips, and connected to the motor via a 6-pin JST-PH connector.

Control board protocol

Pinout:

Pin #Function
1 (red)VCC
2GND
3Speed 3
4Speed 2
5Speed 1
6Night mode

The control board simply pulls one of the pins from 3 to 6 high with the other ones low to set the speed, with all low being "off".

The motor side seems to accept pretty much any voltage > 1V as long as the current is at least ~20 mA, though when using the original board I measure 4V across the pin and ground - current should be around 80 mA.

You can test it by placing a 100 ohm resistor between 5V and one of the speed pins.

Important safety notice

I'm not an electrical motor expert but I know that fans need to be started at the maximum speed from the off state in order to prevent motor strain, overheating and fire hazards.

See this video about it by Technology Connections: https://www.youtube.com/watch?v=hQ3GW7lVBWY

A custom board firmware must kickstart the fan at maximum speed for ~1 sec after power on, then set it back to whatever speed is desired.

The original board does this automatically.

License

CERN Open Hardware License, strictly reciprocal.

Disclaimer

I will not take any responsibility for broken air filters caused by modding or installing this custom PCB. You take your own responsibility.

Parts

91
QtyValueFootprintReferences
140u1Capacitor_SMD:C_0402_1005MetricC6, C9, C10, C11, C12, C13, C14, C15, C16, C17, C18, C19, C20, C21
71k5Resistor_SMD:R_0402_1005MetricR7, R8, R9, R10, R12, R13, R16
7510RResistor_SMD:R_0402_1005MetricR28, R29, R30, R31, R32, R33, R34
5470RResistor_SMD:R_0402_1005MetricR17, R21, R23, R24, R25
5560RResistor_SMD:R_0603_1608MetricR1, R4, R5, R6, R27
447RResistor_SMD:R_0402_1005MetricR18, R19, R20, R22
30u1Capacitor_SMD:C_0805_2012MetricC2, C3, C8
310kResistor_SMD:R_0402_1005MetricR11, R15, R26
322uCapacitor_SMD:C_0805_2012MetricC1, C4, C7
21kResistor_SMD:R_0402_1005MetricR2, R3
274HCT595PW,118Package_SO:TSSOP-16_4.4x5mm_P0.65mmU2, U3
1custom-pcb:OSHW-LOGO-L
110uCapacitor_SMD:C_0402_1005MetricC5
1200RResistor_SMD:R_0402_1005MetricR14
12HLED_SMD:LED_0603_1608Metric_Pad1.05x0.95mm_HandSolderD10
14HLED_SMD:LED_0603_1608Metric_Pad1.05x0.95mm_HandSolderD12
16HLED_SMD:LED_0603_1608Metric_Pad1.05x0.95mm_HandSolderD6
18HLED_SMD:LED_0603_1608Metric_Pad1.05x0.95mm_HandSolderD9
1AMS1117-3.3Package_TO_SOT_SMD:SOT-223-3_TabPin2U1
1BOOTaliexpress-switch:Tactile_Push_Button_SMD_3x3x1.5mm.kicad_modSW2
1BOOT_Daliexpress-switch:Tactile_Push_Button_SMD_3x3x1.5mm.kicad_modSW11
1CONN_CTLConnector_JST:JST_PH_B6B-PH-K_1x06_P2.00mm_VerticalJ1
1CONN_DBRD_INConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ3
1CONN_DBRD_OUTConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ4
1CONN_UARTConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ2
1ESP32-WROOM-32RF_Module:ESP32-WROOM-32U4
1Fan speedtouchpad_spring:touchpad_springSW4
1Filtertouchpad_spring:touchpad_springSW7
1ILED_SMD:LED_0603_1608Metric_Pad1.05x0.95mm_HandSolderD5
1IILED_SMD:LED_0603_1608Metric_Pad1.05x0.95mm_HandSolderD7
1IIILED_SMD:LED_0603_1608Metric_Pad1.05x0.95mm_HandSolderD8
1LED_R_FILTERcustom-pcb:LED_D5.0mm-centeredD11
1LED_W_FANcustom-pcb:LED_D5.0mm-centeredD13
1LED_W_LOCKcustom-pcb:LED_D5.0mm-centeredD3
1LED_W_NIGHTcustom-pcb:LED_D5.0mm-centeredD2
1LED_W_TIMERcustom-pcb:LED_D5.0mm-centeredD4
1LEVOIT_CTL_BOARD_ALIGNcustom-pcb:board-alignmentsboard_alignments
1Lighttouchpad_spring:touchpad_springSW8
1Locktouchpad_spring:touchpad_springSW9
1Night modetouchpad_spring:touchpad_springSW5
1On/Offcustom-pcb:LED_D5.0mm-centeredD1
1RESETaliexpress-switch:Tactile_Push_Button_SMD_3x3x1.5mm.kicad_modSW1
1RESET_Daliexpress-switch:Tactile_Push_Button_SMD_3x3x1.5mm.kicad_modSW10
1SPR_POWERtouchpad_spring:touchpad_springSW3
1Timertouchpad_spring:touchpad_springSW6

The 89 most common of 91 parts.

Questions

How big is the Custom pcb PCB?

It measures 71.5 × 67.8 mm and has 4 copper layers, 4.69 mm thick.

What parts does the Custom pcb use?

91 parts, built around the ESP32-WROOM-32, 74HC595D,118 and AMS1117-3.3. 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.

Where can I download the Custom pcb KiCad files?

From the depau/leviot-hw repository on GitHub, at the commit this page was made from: the board is custom-pcb/custom-pcb.kicad_pcb and its schematic custom-pcb/custom-pcb.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Custom pcb design in my own project?

Its repository states no licence, so its author keeps all rights: ask depau before reusing the design.

Similar boards

  • 2 layers70 × 100 mmBadge v2, the printed circuit board in 3D

    Badge v2

    ICRS/IC-Hack-Badge

    Badges made for the largest Student run hackathon in europe

    233 parts24
  • 6 layers80 × 70 mmIMX6 Demo Board from REF, the printed circuit board in 3D

    IMX6 Demo Board from REF

    ts-manuel/iMX6-Demo-Board

    Demo board for the i.MX6ULL Single-Core Processor with Arm Cortex-A7 Core

    504 parts10GPL-3.0
  • 2 layers150 × 100 mmChristmas banana synth, the printed circuit board in 3D

    Christmas banana synth

    adaand00/christmas-banana-synth

    The Christmas banana synth is a stylophone synthesizer with 24 keys and a buzzer for sound. The back features PCB art of a winter landscape. There are also 12 built-in songs available.

    87 parts2
  • 2 layers110 × 110 mmFloorHeatingCentral, the printed circuit board in 3D

    FloorHeatingCentral

    kvoit/FloorHeatingController_HW

    Contoller board for up to 10 floor heading circuits. Thermostats via MQTT or 868MHz RF (to be developed). Changed from 1-Wire to 868MHz connectivity in version 2.0.

    72 parts2Apache-2.0
  • 2 layers99.8 × 49.8 mmLedArrayDemo, the printed circuit board in 3D

    LedArrayDemo

    radex/radmatrix

    Tiny modular LED matrix. NOTE: Moved to https://code.hackerspace.pl/radex/radmatrix

    453 parts2
  • 2 layers70 × 70 mmCorolla wheel car, the printed circuit board in 3D

    Corolla wheel car

    Cxmrykk/Toyota-Steering-Wheel

    Toyota (20-24) EV Steering Wheel Transceiver, Clockspring, Spline Adapter

    40 parts1
  • 4 layers208 × 129 mmMainboard v2 r1, the printed circuit board in 3D

    Mainboard v2 r1

    Benjamin-girard-1/geophys_acquisition_module

    Modular ESP32-S3 geophysical data-acquisition system with custom hardware, multi-channel ADC, GNSS, IMU, removable analog sensor cards, firmware, and host tools

    287 parts
  • 4 layers190 × 110 mmGeophys mainboard, the printed circuit board in 3D

    Geophys mainboard

    Benjamin-girard-1/magnetometer-node-old

    384 parts