-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #26 from ergonautkb/feat/one-s-docs
Add One S docs (without images)
- Loading branch information
Showing
13 changed files
with
473 additions
and
14 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
{ | ||
"className": "display-none", | ||
"label": "Ergonaut One S", | ||
"position": 2, | ||
"link": { | ||
"type": "generated-index", | ||
"description": "Documentation for Ergonaut One S" | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,164 @@ | ||
--- | ||
sidebar_position: 3 | ||
title: Build Guide | ||
--- | ||
|
||
# Ergonaut One S Build Guide | ||
|
||
## Assemble your PCB | ||
|
||
| PCB | | ||
| ----------------------------------- | | ||
|  | | ||
|
||
You can assemble PCB in two different configurations - either with Xiao on "top", or on the "bottom". Pick a configuration based on the variant of the case you would want to use. | ||
|
||
### Case compatibility | ||
|
||
| Xiao position | Modern Case | Classic Case | | ||
| ------------- | ----------- | ------------ | | ||
| Bottom | ✅ | ❌ | | ||
| Top | ❌ | ✅ | | ||
|
||
### Soldering | ||
|
||
#### Xiao | ||
|
||
Before soldering the Xiao, please, apply a **small** amount of solder on the battery pins on the bottom of Xiao. If you applied too much - you can collect the solder to the iron tip with some flux. Xiao shouldn't be skewed on the board! | ||
|
||
 | ||
|
||
1. Position Xiao in its designated place | ||
2. Start by soldering two opposite pins | ||
3. Solder the rest of the pins | ||
4. Flip the board | ||
5. Put some flux in the holes (marked by the red circle in the photo), and fill them with solder (you might want to heat those pins a little longer than usual) | ||
|
||
| Left | Right | | ||
| ------------------------------------- | ------------------------------------- | | ||
|  |  | | ||
|  |  | | ||
|
||
#### Diodes | ||
|
||
If you are building a "Bottom Xiao" configuration, diodes should be on the **SAME** side as Xiao. | ||
If you are building a "Top Xiao" configuration, diodes should be on the **OPPOSITE** side from Xiao. | ||
|
||
Please take note that diodes have polarity. | ||
|
||
 | ||
|
||
| Left | Right | | ||
| ------------------------------------- | ------------------------------------- | | ||
|  |  | | ||
|
||
#### Hotswap Sockets | ||
|
||
If you are building a "Bottom Xiao" configuration, sockets should be on the **SAME** side as Xiao. | ||
If you are building a "Top Xiao" configuration, sockets should be on the **OPPOSITE** side from Xiao. | ||
|
||
| Left | Right | | ||
| ------------------------------------- | ------------------------------------- | | ||
|  |  | | ||
|
||
#### Power Switches | ||
|
||
Power switches are always on the opposite side of Xiao. | ||
|
||
 | ||
|
||
#### Test your soldering | ||
|
||
If you have a multimeter, test for shorts: | ||
|
||
1. Between "-" and "+"; | ||
2. Between GND and 5V on the Xiao; | ||
3. Between GND and 3V3 on the Xiao. | ||
|
||
 | ||
|
||
Then connect the battery, turn on the power switch and verify the voltage between GND and 3V3 is 3.3 volts. | ||
If the voltage is not there, you probably need to re-solder the underside pads. | ||
|
||
If you do not have a multimeter, just proceed with the instructions. | ||
|
||
#### Batteries | ||
|
||
You can choose any side for battery wires soldering, but I suggest using the same side as Xiao. | ||
|
||
Please take note of battery polarity. Positive wire (red) should go to "+", negative wire (black) to "-". | ||
|
||
 | ||
|
||
### Clean up | ||
|
||
Clean your PCB from flux residues. IPA (isopropyl alcohol) with Q-tips should do the trick. | ||
|
||
### Flash firmware | ||
|
||
Now it's a good time to flash firmware to a keyboard. | ||
|
||
1. Download [firmware](https://github.com/ergonautkb/one-zmk-config/releases/latest/download/ergonaut_one_firmware.zip) and unzip it. | ||
2. Repeat for each half: | ||
1. Connect the PCB to the PC via USB-C cable; | ||
2. Press the **RST** button twice - you should see a new USB device; | ||
3. Copy `ergonaut_one_left-seeeduino_xiao_ble-zmk.uf2` for left half or `ergonaut_one_right-seeeduino_xiao_ble-zmk.uf2` for right half to the new USB device. The device will disconnect automatically; | ||
3. Turn ON both halves; | ||
4. Press the **RST** button of both halves SIMULTANEOUSLY to pair them; | ||
5. Try to connect it to the PC via Bluetooth and test that everything works; | ||
6. Turn OFF both halves. | ||
|
||
 | ||
|
||
### Test the PCB | ||
|
||
If you do not have a multimeter, connect the battery on the left half and turn it on. | ||
Verify it shows up as a Bluetooth keyboard. | ||
If it does not and only shows up when connected to USB power, you probably need to re-solder the underside pads. | ||
That is also the likely cause for the right half not connecting on battery and only working when connected to USB power. | ||
|
||
After that, you can optionally verify the matrix. | ||
Connect both halves to your PC and either use tweezers to short each socket or insert and press switches. | ||
Please brace the sockets (with your fingers) when inserting the switches! | ||
|
||
 | ||
|
||
Keep in mind that some positions in the matrix are modifiers and will not do anything when pressed on their own. | ||
A [keyboard tester website](https://www.keyboardtester.com) will work for modifiers, but it will not detect layers. | ||
|
||
Matrix verification can be performed after inserting all the switches into the top case, but it is best done before mounting the bottom. | ||
|
||
## Assemble your case | ||
|
||
Start by inserting the PCB inside the top part of the case. | ||
|
||
 | ||
|
||
Flip the keyboard, and insert some switches while holding the PCB against the top case. This will fix the PCB in place for further build. | ||
|
||
 | ||
|
||
Flip the keyboard again, and insert the bottom part of the case. | ||
|
||
 | ||
|
||
Now the tricky part - you should place hex nuts in the hex slots on the bottom side of the case, and insert screws from the top side of the case. | ||
|
||
**Note: please do not overtighten the screws!** | ||
|
||
| Top | Bottom | | ||
| ------------------------------------ | ------------------------------------ | | ||
|  |  | | ||
|
||
Install rubber bump-ons on the bottom side of the case. | ||
|
||
 | ||
|
||
Now insert the rest of the switches into the case. | ||
|
||
 | ||
|
||
Now put your favorite keycaps, repeat the steps for the second half of the keyboard, turn it on, and enjoy your freshly assembled Ergonaut One! | ||
|
||
 | ||
 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,119 @@ | ||
--- | ||
sidebar_position: 2 | ||
title: Build Preparations | ||
--- | ||
|
||
# Ergonaut One S Build Preparations | ||
|
||
This guide will help you prepare all the necessary tools and materials for a successful Ergonaut One S build. | ||
|
||
## PCB | ||
|
||
<!-- TODO: Add PCB photo  --> | ||
PCB is the core component of Ergonaut One S. | ||
|
||
#### Tools: | ||
|
||
You'd probably need: | ||
|
||
* Soldering iron; | ||
* Solder wire; | ||
* Flux; | ||
* Tweezers; | ||
* Isopropyl Alcohol or other suitable solvent for PCB cleaning; | ||
* Cotton Q-tips or other suitable material for PCB cleaning. | ||
|
||
#### PCB Manufacturing | ||
|
||
If you are brave enough, you can manufacture PCB yourself. | ||
But my suggestion would be to grab a Gerber archive from [Github Releases](https://github.com/ergonautkb/one-s/releases/latest) and order PCBs from any capable PCB manufacturer, like: | ||
* [JLCPCB](https://jlcpcb.com/); | ||
* [PCBWay](https://www.pcbway.com/). | ||
|
||
You are free to choose any desirable PCB specification but keep in mind that all cases are modeled with 1.6mm PCB thickness in mind. | ||
You'd need two PCBs for one kit. | ||
|
||
#### BOM | ||
|
||
| Name | Qty | Links | | ||
| ------------------------------------------------------- | --- | ----------------------------------------------------------------------------------------- | | ||
| Seeeduino XIAO nRF52840 Module | 2 | [Aliexpress](https://aliexpress.com/item/1005004459618789.html) | | ||
| MSK-12C02 SPDT Switch | 2 | [Aliexpress](https://aliexpress.com/item/4000685483225.html) | | ||
| 1N5819 SOD-123 Diode | 36 | [Aliexpress](https://aliexpress.com/item/1005003194674618.html?sku_id=12000024602962922) | | ||
| Gateron KS-27 Hot Swap Socket | 36 | [Aliexpress](https://aliexpress.com/item/1005004128409069.html) | | ||
| Li-Po Battery 601730 With Protection | 2 | Source locally | | ||
| **[OPTIONAL]** JST SH1.0 Horizontal 2 Pin PCB Connector | 2 | [Aliexpress](https://aliexpress.com/item/1005005682408443.html?&sku_id=12000033998015849) | | ||
|
||
## Case | ||
|
||
The case is also an essential part of Ergonaut One S since it provides proper electrical insulation from the environment and provides reliable mounting plates for the switches. | ||
|
||
You can choose to use one of three provided variants of the case: | ||
|
||
* 3D Printed: | ||
* [Modern Case](#3d-printed-modern-case) (Recommended, the easiest to print) | ||
* [Classic Case](#3d-printed-classic-case) | ||
|
||
### Common information for 3D printed cases | ||
|
||
#### Tools: | ||
|
||
You'd probably need: | ||
|
||
* FDM 3D Printer or a friend with a printer; | ||
* **[ONLY FOR CLASSIC CASE]** Scalpel or some other cutting tool to remove included supports; | ||
* **[OPTIONAL]** Deburring tool. | ||
|
||
#### BOM | ||
|
||
You'd need some additional hardware to assemble your case: | ||
|
||
| Name | Qty | Links | | ||
| ----------------------------- | --- | ---------------------------------------------------------------------------------------- | | ||
| M2 8mm Flat Countersunk Screw | 8 | [Aliexpress](https://aliexpress.com/item/32975242274.html?sku_id=66696774380) | | ||
| M2 Hex Nut | 8 | [Aliexpress](https://aliexpress.com/item/1005003994209489.html?sku_id=12000027676602569) | | ||
| Silicone Feet Pads 8mmx2.5mm | 8 | [Aliexpress](https://aliexpress.com/item/32750517847.html) | | ||
|
||
#### Printing | ||
|
||
Grab models [here](https://github.com/ergonautkb/one-s/tree/main/cases/3d). Print with the following settings: | ||
|
||
* Layer height: 0.2mm; | ||
* Extrusion width: 0.4mm; | ||
* No support structures. | ||
|
||
**Note: Classic Case might require support structures if your printer either has no part cooling or bad part cooling.** | ||
|
||
**Note: Please let the part cool off properly before removing it from build plate to reduce the risk of part warping** | ||
|
||
Choose your desired case variant (Classic or Modern) and print four parts: | ||
* Left Top; | ||
* Right Top (model should be mirrored by X axis in slicer); | ||
* Left Bottom; | ||
* Right Bottom (model should be mirrored by X axis in slicer). | ||
|
||
### 3D Printed Modern Case | ||
|
||
| Front | Back | | ||
| ------------------------------------------------------ | ----------------------------------------------------- | | ||
|  |  | | ||
|
||
| Bottom part placement | Top part placement | | ||
| ------------------------------------------------------------ | ------------------------------------------------------------ | | ||
|  |  | | ||
|
||
### 3D Printed Classic Case | ||
|
||
| Front | Back | | ||
| -------------------------------------------------------- | ------------------------------------------------------- | | ||
|  |  | | ||
|
||
**Note: this model contains included bed adhesion-improving supports, which should be removed after print.** | ||
|
||
| Bottom part placement | Top part placement | | ||
| -------------------------------------------------------------- | -------------------------------------------------------------- | | ||
|  |  | | ||
|
||
**Note: After the print don't forget to remove included supports from the top parts. The image below for a reference:** | ||
|
||
 |
Oops, something went wrong.