Another set of eyes to check my kicad schematic

StealthRT

Sep 4, 2010
147
Joined
Sep 4, 2010
Messages
147
Hey all I am wanting another set of eyes to review my schematic to make sure I have everything connected correctly. It looks like its connected correctly to me but another set of eyes on it is always a good thing!

I'm also wanting to find better substitutes for the C1 470uf and C2 1uf caps. Are there any that I can get that are smaller (height wise)? I'm looking to have the smallest height possible.

Note that I did my own thing for the power conversion and the RGB.
2025-08-15-09-46-46-esp32-c3-super-mini-circuit-Schematic-Editor.png


Here is what I used to go by while creating the schematic:

Rich (BB code):
    1. Bidirectional Level Shifter (3.3V ↔ 5V) - VERIFIED BIDIRECTIONAL LEVEL SHIFTER
       
        Valentine One Side (5V)                    ESP32-C3 Side (3.3V)
        ─────────────────────────                  ─────────────────────────      
                +5V                                        +3.3V
                 │                                           │
                ╔══╗                                        ╔══╗
                ║R1║ 10kΩ                                   ║R3║ 10kΩ
                ╚══╝                                        ╚══╝
                 │                                           │
                 ├─────────── To V1 DATA                     ├─────────── To GPIO21/TX
                 │            (RJ11 Pin 2)                   │            To GPIO20/RX
                 │                                           │
               Drain                                       Drain
                 │                                           │
             ┌───┴───┐                                   ┌───┴───┐
             │       │                                   │       │
             │  Q1   │                                   │  Q2   │
             │BSS138 │                                   │BSS138 │
             │       │                                   │       │
             └───┬───┘                                   └───┬───┘
               Gate                                        Gate
                 │                                           │
                 └─────────────────┬─────────────────────────┘
                                   │
                                   │ +3.3V
                                   │  │
                                   │ ╔══╗
                                   │ ║R2║ 10kΩ
                                   │ ╚══╝
                                   │  │
                                   └──┤ (Gates connected together)
                                      │
                                Source│Source
                                   │  │
                                   ┴  ┴
                                  GND GND
   
    IMPORTANT: Both MOSFET Sources MUST connect to GND
    Step-by-Step Connection Guide for Level Shifter:
   
    Install Q1 (BSS138 or 2N7000):
    ================================
    Source (Pin 1) → Connect to GND
    Gate (Pin 2) → Leave for now (will connect in step 5)
    Drain (Pin 3) → Connect to V1 DATA line
       
    Install Q2 (BSS138 or 2N7000):
    ================================
    Source (Pin 1) → Connect to GND
    Gate (Pin 2) → Leave for now (will connect in step 5)
    Drain (Pin 3) → Connect to ESP32 GPIO21 and GPIO20
       
    Install R1 (10kΩ pull-up):
    ================================
    One end → +5V supply
    Other end → Q1 Drain (same point as V1 DATA)
       
    Install R3 (10kΩ pull-up):
    ================================
    One end → +3.3V supply
    Other end → Q2 Drain (same point as GPIO20/21)
       
    Connect Gates Together with R2:
    ================================
    Connect Q1 Gate to Q2 Gate with a wire
    Install R2 (10kΩ): One end to +3.3V, other end to the connected gates
       
    Verify Connections:
    ================================
    Both Sources are at GND
    Gates are connected together and pulled to 3.3V
    Each Drain has its respective pull-up
   
    2. Legacy Mode 1.4V Pull-up Generator - VERIFIED LEGACY MODE 1.4V GENERATOR
       
        Control Stage                 Voltage Generation Stage
        ──────────────               ─────────────────────────      
        GPIO6 ──┐
                │
               ╔══╗
               ║R5║ 1kΩ              +3.3V        +3.3V
               ╚══╝                     │            │
                │                     ╔══╗          ╔══╗
              Gate                    ║R6║          ║R7║
                │                     ║10kΩ         ║10kΩ
            ┌───┴───┐                 ╚══╝          ╚══╝
            │       │                  │             │
            │  Q3   │Drain             └────┬────────┘
            │BSS138 ├──────────────────────Base
            │       │                       │
            └───┬───┘                   ┌───┴───┐
              Source                    │       │Collector
                │                       │  Q5   ├────────── To V1 DATA
                ┴                       │MMBT   │           (1.4V output)
               GND                      │2222A  │
                                        │       │
                                        └───┬───┘
                                         Emitter
                                            │
                                           ╔══╗
                                           ║R8║ 4.7kΩ
                                           ╚══╝
                                            │
                                            ┴
                                           GND

    Step-by-Step Connection Guide for Legacy Pull-up:
    ================================
    Install Q3 (BSS138 Control MOSFET):
   
    Source → GND
    Gate → Through R5 (1kΩ) to GPIO6
    Drain → Will connect to Q5 base circuit
       
    Install Voltage Divider (R6 and R7):
    ================================
    R6 (10kΩ): One end to +3.3V
    R7 (10kΩ): One end to +3.3V
    Connect other ends of R6 and R7 together (creates ~2.1V when active)
       
    Install Q5 (MMBT2222A or 2N2222):
    ================================
    Base → Connect to junction of R6/R7 AND Q3 Drain
    Emitter → Through R8 (4.7kΩ) to GND
    Collector → Connect to V1 DATA line
       
    Install R5 (1kΩ gate resistor):
    ================================
    One end → GPIO6
    Other end → Q3 Gate
       
    Install R8 (4.7kΩ emitter resistor):
    ================================
    One end → Q5 Emitter
    Other end → GND
       
    Operation Verification:
    ================================
    GPIO6 LOW: No pull-up on DATA line
    GPIO6 HIGH: ~1.4V appears on DATA line
   
    3. MUTE Control Circuit - VERIFIED MUTE CONTROL CIRCUIT
     
        Control Input                Output Stage
        ──────────────              ──────────────      
                                    V1 MUTE Pin 5
                                         │
                                       ╔═══╗
                                       ║R10║ 10kΩ (Internal V1 pull-up)
                                       ╚═══╝
                                         │
        GPIO5 ──┐                        ├────── To V1 Pin 5 (MUTE)
                │                        │
               ╔══╗                     Drain
               ║R9║ 10kΩ                 │
               ╚══╝                  ┌───┴───┐
                │                    │       │
              Gate                   │  Q4   │
                │                    │BSS138 │
            ┌───┴───┐                │       │
            │  NC   │                └───┬───┘
            │       │                  Source
            └───────┘                    │
        (R9 protects gate)               ┴
                                        GND
       
    Note: V1 has internal pull-up, R10 shown for reference
    Step-by-Step Connection Guide for MUTE Control:
   
    Install Q4 (BSS138 MUTE Control):
    ================================
    Source → GND
    Gate → Through R9 to GPIO5
    Drain → Direct to V1 MUTE (Pin 5 of RJ11)
       
    Install R9 (10kΩ protection resistor):
    ================================
    One end → GPIO5
    Other end → Q4 Gate
       
    Note about R10:
    ================================
    R10 is INTERNAL to V1, do NOT add external pull-up
    V1 maintains MUTE line at +5V when idle
   
    Operation:
    ================================
    GPIO5 LOW: MUTE line stays at +5V (no mute)
    GPIO5 HIGH: Q4 pulls MUTE to GND (activates mute)
   
    4. Power and Ground Connections - VERIFIED POWER DISTRIBUTION
       
        From Valentine One                 ESP32-C3 Power
        ──────────────────                ────────────────      
        RJ11 Pin 4 (+12V) ──┐              USB 5V ──┐
                            │                       │
                        [UNUSED]               [Internal LDO]
                            │                       │
                            │                     +3.3V
        RJ11 Pin 3 (GND) ───┬───────────────────────┤
                            │                       │
                            ┴                       ┴
                        COMMON GND              COMMON GND
       
    CRITICAL: V1 GND and ESP32 GND MUST be connected together
    Step-by-Step Connection Guide for Power:
   
    Connect Grounds:
    ================================
    V1 Pin 3 (GND) → ESP32 GND
    This is CRITICAL for proper operation
       
    V1 Power (Pin 4):
    ================================
    NOT USED for powering ESP32
    Leave disconnected or add protection diode only
       
    ESP32 Power:
    ================================
    Power via USB (5V)
    ESP32 generates its own 3.3V
       
    Add Bypass Capacitors:
    ================================
    100nF ceramic near ESP32 3.3V pin
    10µF electrolytic on 3.3V rail
   
    5. Complete Pin Connection Summary RJ11 CONNECTOR (Looking into jack)
        ┌──────────────────────────┐
        │ 6   5     4   3   2    1 │
        └──────────────────────────┘
          NC  MUTE +12V GND DATA NC
       
        CONNECTIONS:
        Pin 1: Not Connected
        Pin 2: DATA → Level Shifter Q1 Drain AND Legacy Gen Q5 Collector
        Pin 3: GND → Common Ground for entire circuit
        Pin 4: +12V → Not used (ESP powered via USB)
        Pin 5: MUTE → Q4 Drain (MUTE control)
        Pin 6: Not Connected
       
        ESP32-C3 CONNECTIONS:
        GPIO20: RX → Level Shifter Q2 Drain
        GPIO21: TX → Level Shifter Q2 Drain (same connection)
        GPIO5: → R9 → Q4 Gate (MUTE control)
        GPIO6: → R5 → Q3 Gate (Legacy control)
        GPIO8: → R11 (220Ω) → LED → GND
        GND: → Common ground
        3.3V: → Pull-ups and bias resistors

    Critical Design Verification Points
    ✅ Level Shifter Checklist:
    ================================
     Both MOSFET sources connected to GND
     Gates connected together with 3.3V pull-up
     5V pull-up on V1 side drain
     3.3V pull-up on ESP32 side drain
     No direct 5V to 3.3V connection
   
    ✅ Legacy Generator Checklist:
    ================================
     Q5 collector to DATA line (provides 1.4V)
     Q5 emitter through 4.7kΩ to GND
     Voltage divider creates ~2.1V at base
     Q3 controls activation
   
    ✅ MUTE Control Checklist:
    ================================
     Q4 drain to MUTE pin
     Q4 source to GND
     NO external pull-up (V1 has internal)
     Gate protection resistor installed
   
    ✅ Power Checklist:
    ================================
     Common ground between V1 and ESP32
     ESP32 powered via USB only
     12V from V1 NOT connected to ESP32
     Bypass capacitors installed
 

Harald Kapp

Moderator
Moderator
Nov 17, 2011
14,272
Joined
Nov 17, 2011
Messages
14,272
It is very hard to follow a schematic that is ripped into so many small pieces as yours. At least for me. I have to build a mental map of the circuit by following the net names. Not so easy.

What is the puurpose of the bidirectional level shifter for DATA/GPIO20/GPIO21? From your ASCII schematic I take it that GPIO20/GPIO21 are TxD and RxD connected. Do you want to transmit from TxD to DATA and receive from DATA via RxD? If so, you need to ensure that TxD is high-impedance while reading DATA via RxD. As you need to reconfigure the TxD pin (GPIO21) anyway between transmitting and receiving, couldn't you use a singe pin of the µC and reconfigure it as TD or RyxD respectively?
The level shifter itself could be simplified a lot, see e.g. here.

I have no idea what the legacy mode pull up circuit is supposed to do. With GPIO=High, Q3 will be off and Q5 wil be on (btw: R6 || R7 could be replaced by a single resistor, e.g. 4.7 kΩ). R8 and R1 then form a voltage divider with the voltage on DATA being at ~ 3.V. A simple logic level shifter as linked above could do the same.
Remains the question about the role of GPIO6 vs. GPIO21. Both try to drive DATA. That doesn't match your description at all:
Operation Verification:
================================
GPIO6 LOW: No pull-up on DATA line
GPIO6 HIGH: ~1.4V appears on DATA line
The Pull-Up on DATA is R1 and it is always present.
 

Harald Kapp

Moderator
Moderator
Nov 17, 2011
14,272
Joined
Nov 17, 2011
Messages
14,272
I'm also wanting to find better substitutes for the C1 470uf and C2 1uf caps.
C1 at 16 V is o.k., do not use a lower voltage rating. The datasheet of the LM7805MP requires a 0.22 µF capacitor on the input only. This will save a lot of space vs. a 470 µF capacitor.

C2 at 50 V is overkill. A rating of 10 V or 16 V is sufficient. The datasheet of the LM7805MP requires a 0.1 µF capacitor on the output only. This will not save a lot of space vs. a 1 µF capacitor. So you are good here.
 

Zachantreras

Sep 17, 2025
2
Joined
Sep 17, 2025
Messages
2
It is very hard to follow a schematic that is ripped into so many small pieces as yours. At least for me. I have to build a mental map of the circuit by following the net names. Not so easy.

What is the puurpose of the bidirectional level shifter for DATA/GPIO20/GPIO21? From your ASCII schematic I take it that GPIO20/GPIO21 are TxD and RxD connected. Do you want to transmit from TxD to DATA and receive from DATA via RxD? If so, you need to ensure that TxD is high-impedance while reading DATA via RxD. As you need to reconfigure the TxD pin (GPIO21) anyway between transmitting and receiving, couldn't you use a singe pin of the µC and reconfigure it as TD or RyxD respectively?
The level shifter itself could be simplified a lot, see e.g. Geometry Game here.

I have no idea what the legacy mode pull up circuit is supposed to do. With GPIO=High, Q3 will be off and Q5 wil be on (btw: R6 || R7 could be replaced by a single resistor, e.g. 4.7 kΩ). R8 and R1 then form a voltage divider with the voltage on DATA being at ~ 3.V. A simple logic level shifter as linked above could do the same.
Remains the question about the role of GPIO6 vs. GPIO21. Both try to drive DATA. That doesn't match your description at all:

The Pull-Up on DATA is R1 and it is always present.
Have you tried testing with only one GPIO pin switching between TxD and RxD to see if it simplifies the design? It might also help to confirm whether GPIO6 should only act as an enable line instead of driving DATA directly.
 

Minder

Apr 24, 2015
3,561
Joined
Apr 24, 2015
Messages
3,561
You may have to apply a PWR flag for the GND also for the 3.3v.
 

philipchambers

Sep 18, 2025
1
Joined
Sep 18, 2025
Messages
1
Hey all I am wanting another set of eyes to review my schematic to make sure I have everything connected correctly. It looks like its connected correctly to me but another set of eyes on it is always a good thing!

I'm also wanting to find better substitutes for the C1 470uf and C2 1uf caps. Are there any that I can get that are smaller (height wise)? I'm looking to have the smallest height possible.

Note that I did my own thing for the power conversion and the RGB.
2025-08-15-09-46-46-esp32-c3-super-mini-circuit-Schematic-Editor.png


Here is what I used to go by while creating the schematic:

Rich (BB code):
    1. Bidirectional Level Shifter (3.3V ↔ 5V) - VERIFIED BIDIRECTIONAL LEVEL SHIFTER
      
        Valentine One Side (5V)                    ESP32-C3 Side (3.3V)
        ─────────────────────────                  ─────────────────────────     
                +5V                                        +3.3V
                 │                                           │
                ╔══╗                                        ╔══╗
                ║R1║ 10kΩ                                   ║R3║ 10kΩ
                ╚══╝                                        ╚══╝
                 │                                           │
                 ├─────────── To V1 DATA                     ├─────────── To GPIO21/TX
                 │            (RJ11 Pin 2)                   │            To GPIO20/RX
                 │                                           │
               Drain                                       Drain
                 │                                           │
             ┌───┴───┐                                   ┌───┴───┐
             │       │                                   │       │
             │  Q1   │                                   │  Q2   │
             │BSS138 │                                   │BSS138 │
             │       │                                   │       │
             └───┬───┘                                   └───┬───┘
               Gate                                        Gate
                 │                                           │
                 └─────────────────┬─────────────────────────┘
                                   │
                                   │ +3.3V
                                   │  │
                                   │ ╔══╗
                                   │ ║R2║ 10kΩ
                                   │ ╚══╝
                                   │  │
                                   └──┤ (Gates connected together)
                                      │
                                Source│Source
                                   │  │
                                   ┴  ┴
                                  GND GND
  
    IMPORTANT: Both MOSFET Sources MUST connect to GND
    Step-by-Step Connection Guide for Level Shifter:
  
    Install Q1 (BSS138 or 2N7000):
    ================================
    Source (Pin 1) → Connect to GND
    Gate (Pin 2) → Leave for now (will connect in step 5)
    Drain (Pin 3) → Connect to V1 DATA line
      
    Install Q2 (BSS138 or 2N7000):
    ================================
    Source (Pin 1) → Connect to GND
    Gate (Pin 2) → Leave for now (will connect in step 5)
    Drain (Pin 3) → Connect to ESP32 GPIO21 and GPIO20
      
    Install R1 (10kΩ pull-up):
    ================================
    One end → +5V supply
    Other end → Q1 Drain (same point as V1 DATA)
      
    Install R3 (10kΩ pull-up):
    ================================
    One end → +3.3V supply
    Other end → Q2 Drain (same point as GPIO20/21)
      
    Connect Gates Together with R2:
    ================================
    Connect Q1 Gate to Q2 Gate with a wire
    Install R2 (10kΩ): One end to +3.3V, other end to the connected gates
      
    Verify Connections:
    ================================
    Both Sources are at GND
    Gates are connected together and pulled to 3.3V
    Each Drain has its respective pull-up
  
    2. Legacy Mode 1.4V Pull-up Generator - VERIFIED LEGACY MODE 1.4V GENERATOR
      
        Control Stage                 Voltage Generation Stage
        ──────────────               ─────────────────────────     
        GPIO6 ──┐
                │
               ╔══╗
               ║R5║ 1kΩ              +3.3V        +3.3V
               ╚══╝                     │            │
                │                     ╔══╗          ╔══╗
              Gate                    ║R6║          ║R7║
                │                     ║10kΩ         ║10kΩ
            ┌───┴───┐                 ╚══╝          ╚══╝
            │       │                  │             │
            │  Q3   │Drain             └────┬────────┘
            │BSS138 ├──────────────────────Base
            │       │                       │
            └───┬───┘                   ┌───┴───┐
              Source                    │       │Collector
                │                       │  Q5   ├────────── To V1 DATA
                ┴                       │MMBT   │           (1.4V output)
               GND                      │2222A  │
                                        │       │
                                        └───┬───┘
                                         Emitter
                                            │
                                           ╔══╗
                                           ║R8║ 4.7kΩ
                                           ╚══╝
                                            │
                                            ┴
                                           GND

    Step-by-Step Connection Guide for Legacy Pull-up:
    ================================
    Install Q3 (BSS138 Control MOSFET):
  
    Source → GND
    Gate → Through R5 (1kΩ) to GPIO6
    Drain → Will connect to Q5 base circuit
      
    Install Voltage Divider (R6 and R7):
    ================================
    R6 (10kΩ): One end to +3.3V
    R7 (10kΩ): One end to +3.3V
    Connect other ends of R6 and R7 together (creates ~2.1V when active)
      
    Install Q5 (MMBT2222A or 2N2222):
    ================================
    Base → Connect to junction of R6/R7 AND Q3 Drain
    Emitter → Through R8 (4.7kΩ) to GND
    Collector → Connect to V1 DATA line
      
    Install R5 (1kΩ gate resistor):
    ================================
    One end → GPIO6
    Other end → Q3 Gate
      
    Install R8 (4.7kΩ emitter resistor):
    ================================
    One end → Q5 Emitter
    Other end → GND
      
    Operation Verification:
    ================================
    GPIO6 LOW: No pull-up on DATA line
    GPIO6 HIGH: ~1.4V appears on DATA line
  
    3. MUTE Control Circuit - VERIFIED MUTE CONTROL CIRCUIT
    
        Control Input                Output Stage
        ──────────────              ──────────────     
                                    V1 MUTE Pin 5
                                         │
                                       ╔═══╗
                                       ║R10║ 10kΩ (Internal V1 pull-up)
                                       ╚═══╝
                                         │
        GPIO5 ──┐                        ├────── To V1 Pin 5 (MUTE)
                │                        │
               ╔══╗                     Drain
               ║R9║ 10kΩ                 │
               ╚══╝                  ┌───┴───┐
                │                    │       │
              Gate                   │  Q4   │
                │                    │BSS138 │
            ┌───┴───┐                │       │
            │  NC   │                └───┬───┘
            │       │                  Source
            └───────┘                    │
        (R9 protects gate)               ┴
                                        GND
      
    Note: V1 has internal pull-up, R10 shown for reference
    Step-by-Step Connection Guide for MUTE Control:
  
    Install Q4 (BSS138 MUTE Control):
    ================================
    Source → GND
    Gate → Through R9 to GPIO5
    Drain → Direct to V1 MUTE (Pin 5 of RJ11)
      
    Install R9 (10kΩ protection resistor):
    ================================
    One end → GPIO5
    Other end → Q4 Gate
      
    Note about R10:
    ================================
    R10 is INTERNAL to V1, do NOT add external pull-up
    V1 maintains MUTE line at +5V when idle
  
    Operation:
    ================================
    GPIO5 LOW: MUTE line stays at +5V (no mute)
    GPIO5 HIGH: Q4 pulls MUTE to GND (activates mute)
  
    4. Power and Ground Connections - VERIFIED POWER DISTRIBUTION
      
        From Valentine One                 ESP32-C3 Power
        ──────────────────                ────────────────     
        RJ11 Pin 4 (+12V) ──┐              USB 5V ──┐
                            │                       │
                        [UNUSED]               [Internal LDO]
                            │                       │
                            │                     +3.3V
        RJ11 Pin 3 (GND) ───┬───────────────────────┤
                            │                       │
                            ┴                       ┴
                        COMMON GND              COMMON GND
      
    CRITICAL: V1 GND and ESP32 GND MUST be connected together
    Step-by-Step Connection Guide for Power:
  
    Connect Grounds:
    ================================
    V1 Pin 3 (GND) → ESP32 GND
    This is CRITICAL for proper operation
      
    V1 Power (Pin 4):
    ================================
    NOT USED for powering ESP32
    Leave disconnected or add protection diode only
      
    ESP32 Power:
    ================================
    Power via USB (5V)
    ESP32 generates its own 3.3V
      
    Add Bypass Capacitors:
    ================================
    100nF ceramic near ESP32 3.3V pin
    10µF electrolytic on 3.3V rail
  
    5. Complete Pin Connection Summary RJ11 CONNECTOR (Looking into jack)
        ┌──────────────────────────┐
        │ 6   5     4   3   2    1 │
        └──────────────────────────┘
          NC  MUTE +12V GND DATA NC
      
        CONNECTIONS:
        Pin 1: Not Connected
        Pin 2: DATA → Level Shifter Q1 Drain AND Legacy Gen Q5 Collector
        Pin 3: GND → Common Ground for entire circuit
        Pin 4: +12V → Not used (ESP powered via USB)
        Pin 5: MUTE → Q4 Drain (MUTE control)
        Pin 6: Not Connected
      
        ESP32-C3 CONNECTIONS:
        GPIO20: RX → Level Shifter Q2 Drain
        GPIO21: TX → Level Shifter Q2 Drain (same connection)
        GPIO5: → R9 → Q4 Gate (MUTE control)
        GPIO6: → R5 → Q3 Gate (Legacy control)
        GPIO8: → R11 (220Ω) → LED → GND
        GND: → Common ground
        3.3V: → Pull-ups and bias resistors

    Critical Design Verification Points
    ✅ Level Shifter Checklist:
    ================================
     Both MOSFET sources connected to GND
     Gates connected together with 3.3V pull-up
     5V pull-up on V1 side drain
     3.3V pull-up on ESP32 side drain
     No direct 5V to 3.3V connection
  
    ✅ Legacy Generator Checklist:
    ================================
     Q5 collector to DATA line (provides 1.4V)
     Q5 emitter through 4.7kΩ to GND
     Voltage divider creates ~2.1V at base
     Q3 controls activation
  
    ✅ MUTE Control Checklist:
    ================================
     Q4 drain to MUTE pin
     Q4 source to GND
     NO external pull-up (V1 has internal)
     Gate protection resistor installed
  
    ✅ Power Checklist:
    ================================
     Common ground between V1 and ESP32
     ESP32 powered via USB only
     12V from V1 NOT connected to ESP32
     Bypass capacitors installed
Looks like a solid schematic! ✅ All critical connections and control logic check out based on your notes. For C1 (470µF) and C2 (1µF), try low-profile polymer or tantalum caps they’re shorter and more compact.
 

Similar threads

Top