Skip to content

Commit

Permalink
Update guideMD.mdx
Browse files Browse the repository at this point in the history
  • Loading branch information
Scott170c authored Dec 21, 2024
1 parent 0579750 commit 359bb07
Showing 1 changed file with 62 additions and 20 deletions.
82 changes: 62 additions & 20 deletions app/guide/guideMD.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,50 +6,91 @@ Hacky Holidays is a limited-time YSWS event for making your own PCB tree decorat
2. Designing your PCB
3. Programming your PCB

### **This guide serves as a learning tool to help you get started. If you submit the guide PCB, you will not be accepted!**
**** This guide serves as a learning tool to help you get started, If you submit the guide PCB you will not be accepted! ****

---

## Choosing Your Parts
# Choosing Your Parts

When choosing your parts, think about the function of each component, and try to eliminate unneeded components. Unneeded components can reduce your decoration’s battery life!
When choosing your parts, think about the function of each component, and try to wither out unneeded components. Unneeded components can reduce your decoration’s battery life!

Parts covered in the guide:
Parts covered in the guide**:**

- Neopixels (4 pin)
- Xiao ESP32C3
- Battery Holder
- Resistors/Diodes
- resistors/diodes

If you want to add any components **not** on the approved list, ask one of the organizers in #hacky-holidays!

---

## Designing Your PCB
# **Designing your PCB**

For this guide, we are going to be using KiCad. If you are using a different tool, your steps might be a bit different!
For this guide, we are going to be using KiCad, so if you are using a different tool your steps might be a bit different!

First, open up KiCad, and go to `File → New Project…` and name it whatever you want! Just make sure you name it something you remember so you can come back to it!
First, open up KiCad, and go to File → New Project… and name it whatever you want! Just make sure you name it something you remember so you can come back to it!

![KiCad New Project](https://prod-files-secure.s3.us-west-2.amazonaws.com/51907c75-c258-4bc2-9858-58c3dcad7100/b3897a23-5653-4616-953d-ac8a225d7be7/image.png)
![image.png](../public/images/guide1.png)

Then click on the **Schematic Editor** button. It will take you to a blank page where you will start designing your PCB!
Then Click on the **Schematic Editor** Button. It will take you to a blank page where you will start designing your PCB!

![Schematic Editor](https://prod-files-secure.s3.us-west-2.amazonaws.com/51907c75-c258-4bc2-9858-58c3dcad7100/4c6c1b0e-1052-4e21-b6f9-44eefa94f9ae/b38b9519-5210-4b7c-9046-fbd9882d3ce7.png)
![image (3).png](../public/images/guide2.png)

---
### Importing Footprints

## Programming Your PCB
The first thing we’ll need to do is import the Xiao ESP32C3 into KiCad. First, download [this file](https://github.com/Seeed-Studio/OPL_Kicad_Library/blob/master/Seeed%20Studio%20XIAO%20Series%20Library/XIAO-ESP32S3-SMD.kicad_mod), and drag it into your project folder. Go to your KiCad project menu, and open up the footprint editor. Click `File → Import → Footprint`, and select the Xiao ESP32C3. Save it using `ctrl + S`. It’ll ask you to select a library to put it in, click new library and name it something like xiao(.pretty).

To program your PCB, use the Arduino IDE and the Neopixels library! Here is a helpful resource to help you get started:
Next, download [this file](https://github.com/Seeed-Studio/OPL_Kicad_Library/blob/master/Seeed%20Studio%20XIAO%20Series%20Library/Seeed_Studio_XIAO_Series.kicad_sym), and put it in your .pretty folder. Open up the schematic editor, click Preferences→ Manage Symbol Libraries → Add Existing Library to Table(Folder Icon) → File you just downloaded.

Once you are in, press the A key on your keyboard. This should open up a menu where you can add add components. Search for the following and add them to your schematic:

- XIAO-ESP32-C3-SMD (x1)
- WS2813B (x6)
- Battery Cell (x2)
- Diode (x2)

### Note on LEDs:

We are using daisy-chainable neopixels. This means that we can link all of the LEDs in series, and then control all of them through a PWM signal from our board. This helps us save a lot on pins and allow for the addition of more LEDs!

![image.png](../public/images/guide3.png)

Now that we have all of our components on our schematic, it should look something like this:

![image.png](../public/images/guide4.png)

Now press **W** on your keyboard, which will allow you to wire your PCB! Click on the pins and move your mouse to wire your components together. Connect your components as follows in the schematic:

LEDS:

![image.png](../public/images/guide5.png)

[Adafruit Neopixel Uberguide](https://learn.adafruit.com/adafruit-neopixel-uberguide/arduino-library-use)
XIAO:

To simulate your code, you can use [Wokwi](https://wokwi.com/projects/new/esp32-c3).
![image.png](../public/images/guide6.png)

Battery:

![image.png](../public/images/guide7.png)

Regulator and Charger(Optional):

![image.png](../public/images/guide7.png)

Now that we are done **wiring** up the PCB, we can start **designing & routing** it!

---

## Submissions & Manufacturing
# **Programming your PCB**

To program your PCB, use the Arduino IDE and the Neopixels library! Here is a helpful resource to help you get started:

https://learn.adafruit.com/adafruit-neopixel-uberguide/arduino-library-use

To simulate your code, you can use [Wokwi](https://wokwi.com/projects/new/esp32-c3)

# Submissions & Manufacturing

Once you are ready to submit, create a PR in **OnBoard** with the Hacky-Holidays tag and submit your PR to this form!

Expand All @@ -62,7 +103,8 @@ Once your PR gets approved and you are ready to order, we will order the PCB for

---

## Additional Resources
EXT.

[General Info](https://www.notion.so/General-Info-153a1dc89099809d86c0fda32bbf66a9?pvs=21)

- [General Info](https://www.notion.so/General-Info-153a1dc89099809d86c0fda32bbf66a9?pvs=21)
- [How to wire up your LEDs](https://www.notion.so/How-to-wire-up-your-LEDs-154a1dc890998077b10aecd282861452?pvs=21)
[How to wire up your LEDs](https://www.notion.so/How-to-wire-up-your-LEDs-154a1dc890998077b10aecd282861452?pvs=21)

0 comments on commit 359bb07

Please sign in to comment.