updated submission info

This commit is contained in:
Alex Ren 2025-02-13 10:41:12 -08:00
parent 3072583cb4
commit 14cb65e90f
11 changed files with 90 additions and 179 deletions

View file

@ -1,4 +1,4 @@
24526660622439184
24540323083309425
Audio_Module
Reverb_BTDR-1H
Digital Reverberation Unit, http://www.belton.co.kr/inc/downfile.php?seq=17&file=pdf (footprint from http://www.uk-electronic.de/PDF/BTDR-1.pdf)
@ -84477,15 +84477,15 @@ SOT-543 SC-107A EMD4
4
Package_TO_SOT_SMD
SOT-553
SOT, 5 Pin (https://www.jedec.org/system/files/docs/MO-293B.pdf), generated with kicad-footprint-generator ipc_gullwing_generator.py
SOT TO_SOT_SMD JEDEC-MO-293-UAAD-1 Texas-DRL-5
SOT553
SOT-553
0
5
5
Package_TO_SOT_SMD
SOT-563
SOT, 6 Pin (https://www.jedec.org/system/files/docs/MO-293B.pdf), generated with kicad-footprint-generator ipc_gullwing_generator.py
SOT TO_SOT_SMD JEDEC-MO-293-UAAD Texas-DRL-6
SOT563
SOT-563
0
6
6
@ -88459,13 +88459,6 @@ LoRa LoRaWAN RAK811
34
34
RF_Module
RAK3172
RAK3172 WisDuo LPWAN Module https://docs.rakwireless.com/product-categories/wisduo/rak3172-module/datasheet/
LoRa LoRaWAN RAK3172
0
32
32
RF_Module
RAK4200
RAK4200 LPWAN Module https://downloads.rakwireless.com/LoRa/RAK4200/Hardware-Specification/RAK4200_Module_Specifications_V1.4.pdf
LoRa LoRaWAN RAK4200
@ -99063,31 +99056,3 @@ Varistor VF
0
2
2
asylum-weather
DHT11
Through hole straight socket strip, 1x03, 2.54mm pitch, single row (from Kicad 4.0.7), script generated
Through hole socket strip THT 1x03 2.54mm single row
0
3
3
asylum-weather
TFT_ST7735_SD
0
12
12
asylum-weather
TP4056
0
6
6
asylum-weather
WEMOS_C3_mini
0
16
16

View file

@ -1,15 +1,66 @@
# Orpheuspad
This is the example macropad for hackpad! Use me as a reference for directory structure.
Orpheuspad is a 4 key macropad with a rotary encoder, an OLED Display. It also has 2 WS2812B Leds, and uses QMK firmware
If you're ready to make a submission, please check the guidelines at hackpad.hackclub.com/submitting
It serves as an example piece/reference for the hackpad YSWS, since it contains an implementation of every common part.
A short explanation would also be great to include
## Features:
- Dual layer acrylic case. looks looks awesome doesn't it??
- 128x32 OLED Display
- EC11 Rotary encoder for whatever you want
- 2 WS2812B RGB LEDs. One for underglow, and one that diffuses throughout the case
- 4 Keys
- [VIA](https://www.caniusevia.com/) support!
## CAD Model:
Everything fits together using 5 M3 Bolts and heatset inserts. 4 for the case, one for the PCB. Also, it has a 5 degree tilt
It has 3 separate printed pieces. The angle, the base where the PCB sits, and the top cover. it also has 2 acrylic plates. One to cover the electronics, the other to hold the switches
<img src=assets/cad.png alt="Schematic" width="500"/>
Made in Fusion360. Nifty
# BOM:
- 4x Cherry MX switches
- 1x EC11 Encoder
- 1x PCB
- 5x Through-hole 1N4148 Diodes
- 2x WS2812B LEDs
## PCB
Here's my PCB! It was made in KiCad. The silkscreen was imported from a Figma image.
Schematic
<img src=assets/schematic.png alt="Schematic" width="300"/>
PCB
<img src=assets/pcb.png alt="Schematic" width="300"/>
I used MX_V2 for the keyswitch footprints. I think in retrospect, I should've added a ground plane
## Firmware Overview
This hackpad uses [QMK](https://qmk.fm/) firmware for everything.
- the rotary encoder changes volume. press to mute
- The 4 keys currently act as macros I dynamically change in VIA.
- The OLED is a cat!! Bongocat!! :3
<img src=assets/bongocat.png alt="Bongo Cat" width="300"/>
I might add more in the future! That's it for now
## BOM:
Here should be everything you need to make this hackpad
- 4x Cherry MX Switches
- 4x DSA Keycaps
- 5x M3x5x4 Heatset inserts
- 3x M3x16mm SHCS Bolts
- 2X M3x12mm SHCS Bolts
- 5x 1N4148 DO-35 Diodes.
- 2x WS2812B LEDs
- 1x 0.91" 128x32 OLED Display
- 1x EC11 Rotary Encoder
- 1x XIAO RP2040
- 1x Case (3 printed parts, 2 laser cut parts)
## Extra stuff
Honestly I'm not quite too sure what to add here. Favourite meme? a joke?? Uhhh you can imagine it
Oh fun fact: I built mine in SF the day before github universe LOL

Binary file not shown.

After

Width:  |  Height:  |  Size: 180 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 300 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 182 KiB

View file

@ -1,8 +0,0 @@
(fp_lib_table
(version 7)
(lib (name "Kailh_PG1353_Solderable")(type "KiCad")(uri "${KIPRJMOD}/libraries/MX_V2/Kailh_PG1353_Solderable.pretty")(options "")(descr ""))
(lib (name "MX_Solderable")(type "KiCad")(uri "${KIPRJMOD}/libraries/MX_V2/MX_Solderable.pretty")(options "")(descr ""))
(lib (name "Seeed Studio XIAO Series Library")(type "KiCad")(uri "${KIPRJMOD}/libraries/OPL_Kicad_Library/Seeed Studio XIAO Series Library")(options "")(descr ""))
(lib (name "Rotary_Encoder")(type "KiCad")(uri "${KIPRJMOD}/libraries/Rotary_Encoder.pretty")(options "")(descr ""))
(lib (name "assets")(type "KiCad")(uri "${KIPRJMOD}/assets")(options "")(descr ""))
)

Binary file not shown.

After

Width:  |  Height:  |  Size: 130 KiB

View file

@ -4,7 +4,6 @@ Finally finished your hackpad? Nice job! Follow along and we're going to make su
- [Structuring your project](#structure)
- [Exporting the production files](#export)
- [Adding the BOM](#bom)
- [Adding README files](#readme)
- [Publishing the design](#publishing)
@ -46,123 +45,57 @@ Nice job on organizing your files! Next, we need to create the manufacturing fil
This is separate from the source files, which are usually a reference to check out & iterate on your design.
Before moving on, create a folder called "production"
### 1) Export your PCB
Depending on your tool of choice, the exact workflow will be different. What you want to do is export your PCB as a set of files called Gerbers, which are basically instructions for the manufacturer to build your PCB. It should be compressed into a .zip file.
The internet will help you out on this one. The end file you get should be named gerbers.zip and contain all the production files in it.
But here is a tiny guide anyways:
First, open up the plugin manager of kicad.
<img src="/docs/v2/plugins.png" className="max-w-96" />
Search for "Fabrication Toolkit", select the one with JLC PCB in it's description. Click install, then "Apply Pending Changes". When it's done installing, close the window.
<img src="/docs/v2/install.png" className="max-w-96" />
Now open back up the PCB editor, you should see a new button at the top right:
<img src="/docs/v2/fab.png" className="max-w-96" />
Press it, then click generate. Now you should have a new folder named production, open it up and you should see files like this:
<img src="/docs/v2/files.png" className="max-w-96" />
The one you are looking for is the .zip, you can delete everything else.
Put it inside the "production" folder
### 2) Export your Case parts
Each individual part of the case should be exported into its respective files:
- If the part is 3D printed, it should be exported into STEP, STP or STL files.
Each individual part of the case should be exported into its respective files. For example, if you have a top, bottom, and middle part, you should have 3 files:
- Top.STEP
- Bottom.STEP
- Middle.STEP
Note: Prefer STEP/STP to STL, since they use math to represent the objects, and thus will produce smoother curves and higher quality prints.
If you can't export them as STEPs, STLs are okay too!
Put it inside a folder called "case"
Put all of these files in the "production" folder as well
### 3) Compile your firmware
This step is going to depend on what you used specifically, for QMK the resulting file should be named firmware.uf2
If you are using KMK, just put the main.py file inside the firmware folder/
If you are using KMK, you'll just have a main.py file.
What you want to search for is how to compile firmware for an rp2040. Good luck!
### 4) Organize it all
Now that you've made all the production files, create a new folder called production and put all the files in there.
<a name="bom"/>
## Adding a BOM
Add a new file inside the root of your project, and call it BOM.txt.
Write what components you need inside! Example:
```
- 1x 128x64 0.96" SSD1306 OLED Display
- 8x SK6812 Mini Neopixels
- 8x Alps MX switches
- 1x Seeed XIAO RP2040
- 2x 4.7kΩ THT resistors
```
Either way, put them in the "production" folder
<a name="readme"/>
## Adding a README
A README is essential to all open-source projects. It allows people to know more about you and your project. You submission should have one!
A README is essential to all open-source projects. It allows people to know more about you and your project without having to dig into every single
You can put absolutely *anything* on it, as it's your page. I recommend talking about:
The README is pretty flexible, but you MUST include the following parts:
- What was your inspiration to make it?
- Hardest challenges faced
- Other fun facts to know
- A screenshot of your overall hackpad
- A screenshot of your schematic
- A screenshot of your PCB
- A screenshot of your case and how it'll fit together
- a BOM for your parts
Every hackpad submission's page will be published on the main hackpad website, so make sure to go submit!
It'll be different for each hackpad, but good examples of what I'm looking for are:
Here is a tiny guide on creating a README.md, be sure to modify your own version!
Start by creating a new file called README.md at the top of your project using any text editor. Any file ending in .md is called a markdown file, it will be parsed by github to create [pretty texts](https://github.com/hackclub/asylum/blob/main/designs/weather_stations/dari_awesome_example/README.md).
Check [here](https://commonmark.org/help/) to learn the basic markdown syntax.
Remember, to make a new line you **must** press enter 2 times!
First please discribe the featurs of your macropad! What did you add? How many leds you have? Do you have any special art on it?
Then please make a part where you introduce your PCB! Write us a little about how you made your PCB. Please also make a table with the pictures of your schematic and pcb:
First, take a screenshot of your macropad. Upload it to the #cdn channel in slack! You should receive a link to the file. (And if #cdn is down, try https://imgbb.com/, you will get a link starting with ibb.co, change it to i.ibb.co then append "/image.png" or "/image.jpg" to the link)
Then add a table of the following format to your README.md:
```
| **Schematic** | **PCB** |
|---------------|---------|
|![](link_to_schematic)|![](link_to_pcb)|
```
While replacing link_to_schematic and link_to_pcb to your links.
Don't forget to add a line stating that you ran DRC and have 0 erors! If you haven't done it, do it now in kicad!
You can showcase your 3D view too :3
After that make a part showcasing your CAD model. Discribe it a bit, then embed a image of it with `![](link_to_image)`.
After that, give us a overview on your firmware!
At the end, copy and paste your BOM please.
Maybe write something funny at the end! Thats up to you!
A good example would be [this, even if it's not for hackpad](https://github.com/hackclub/asylum/blob/main/designs/weather_stations/dari_awesome_example/README.md). Or look at [my readme!](https://github.com/hackclub/hackpad/blob/main/hackpads/cyaopad/README.md)
PS. You might want to license your work, look at [https://choosealicense.com/](https://choosealicense.com/), pick a license and copy then paste the text into a LICENSE.txt file
If you want, you can also add some readme files into your subdirectories, that would be awesome!
- [Orpheuspad example](https://github.com/hackclub/hackpad/blob/main/hackpads/orpheuspad/README.md)
- [My weather staton](https://github.com/hackclub/asylum/blob/main/designs/weather_stations/dari_awesome_example/README.md)
- [Ducc's Fidget Toy](https://github.com/hackclub/hackpad/blob/main/hackpads/Duccs%20Fidget%20Toy/README.md)
- [Cyaopad](https://github.com/hackclub/hackpad/blob/main/hackpads/cyaopad/README.md)
### Make a PR
First, double check your submission against the [Orpheuspad](https://github.com/hackclub/hackpad/tree/main/hackpads/orpheuspad) example to make sure you have the correct structure. Everything should match exactly, except for the filenames.
The directory should almost look like this:
Here's what it should look like
<img src="/docs/v2/tree.png" className="max-w-96" />
<img src="/docs/v2/tree2.png" className="max-w-96" />
If anything is unclear, make sure to ask in #hackpad!
@ -176,33 +109,3 @@ If everything went correctly, your PR will be reviewed (and hopefully approved!)
- Your 3D printed case
For many of you, the firmware may not work the first try. That's okay! Keep working at it until it's fixed; if you send a video in #hackpad showing it working, I'll ship you a free custom hack-club keycap and sticker!
<a name="publishing"/>
## Publishing your project
You received your board, and now want the custom keycaps? You now need to actually publish your project! This involves writing a simple page for it explaining what it is.
First, go to the directory `website/src/pages/submissions`, create a new folder for your submission (Cyaopad for me). Then make a .mdx file that is named after your macropad (Cyaopad.mdx for me).
Copy all the content of the README.md over, but remove the table and put the images on separate lines.
Then open the file `hackpad/website/src/main.tsx` and add a line of the following format at where it says IMPORT YOUR PROJECTS HERE:
```
import CyaoPad from "./pages/submissions/Cyaopad/CyaoPad.mdx"
```
Be sure to change the name to your own.
Then scroll down to almost the bottom of the page, to where it says "Submitting? Great! Do something like this:". Add a new entry in the following format:
```
{
path: "/projects/cyaopad",
element: <DocPage Content={ CyaoPad } SideBar={ SideBar } />
},
```
Be sure to change the name to your own again. Now you should be able to view your site at the adress https://hackpad.hackclub.com/projects/\{yourname\} after your pr is merged.
Your final result should look like this [this](/projects/cyaopad)