Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Simplify, update, detail keyboard customization #23

Merged
merged 53 commits into from
Aug 6, 2024
Merged
Show file tree
Hide file tree
Changes from 13 commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
65f72d7
separate daily use and customize
bstiq Aug 1, 2024
b4cac0e
clean up
bstiq Aug 1, 2024
1d1170b
missing link
bstiq Aug 1, 2024
4f4e029
expand wordlist
Aug 1, 2024
60db80d
Update _includes/use_keyboard_chary.md
bstiq Aug 1, 2024
0b7014f
Update .wordlist.txt
bstiq Aug 1, 2024
01908d9
Remove todo
bstiq Aug 1, 2024
60e2ef6
Update compile-firmware.md
bstiq Aug 1, 2024
cfc760a
Update compile-firmware.md
bstiq Aug 1, 2024
300e62a
add userspace info draft
bstiq Aug 2, 2024
3965588
Update compile-firmware.md
bstiq Aug 2, 2024
75e94be
Update compile-firmware.md
bstiq Aug 2, 2024
9de023e
Update compile-firmware.md
bstiq Aug 2, 2024
493873a
remove miryoku mentions
bstiq Aug 2, 2024
d7b336e
Update _includes/use_keyboard.md
bstiq Aug 2, 2024
c439717
Update _includes/use_keyboard.md
bstiq Aug 2, 2024
6976463
Update _includes/use_keyboard_chary.md
bstiq Aug 2, 2024
55894e7
Update fw/compile-firmware.md
bstiq Aug 2, 2024
e3c138b
Update fw/compile-firmware.md
bstiq Aug 2, 2024
b9cad0a
Update .wordlist.txt
bstiq Aug 2, 2024
a2cb693
Update fw/compile-firmware.md
bstiq Aug 2, 2024
a7ecf07
Update compile-firmware.md
bstiq Aug 2, 2024
7d381fa
Update fw/compile-firmware.md
bstiq Aug 2, 2024
4f919be
Merge branch 'master' of https://github.com/bstiq/bstiqbstkbd.github.io
bstiq Aug 2, 2024
766c155
Update compile-firmware.md
bstiq Aug 2, 2024
ca3132c
typo
bstiq Aug 2, 2024
7518806
focus on userspace
bstiq Aug 2, 2024
4ed346a
Update .wordlist.txt
bstiq Aug 2, 2024
4f0fa67
Update fw/compile-firmware.md
bstiq Aug 2, 2024
1df7817
Update fw/compile-firmware.md
bstiq Aug 2, 2024
e97035a
Update fw/compile-firmware.md
bstiq Aug 2, 2024
64c28b0
Update fw/compile-firmware.md
bstiq Aug 2, 2024
423a814
Update .wordlist.txt
bstiq Aug 2, 2024
c8d3449
Merge branch 'master' of https://github.com/bstiq/bstiqbstkbd.github.io
bstiq Aug 2, 2024
e122e82
Update .wordlist.txt
bstiq Aug 2, 2024
1c18d4a
easier to understand wording
bstiq Aug 2, 2024
151afa9
separate github actions and local compile
bstiq Aug 4, 2024
af13aa6
Update .wordlist.txt
bstiq Aug 4, 2024
a92abbb
Update compile-firmware.md
bstiq Aug 4, 2024
6753af6
add lowercase keymap note
bstiq Aug 5, 2024
7222de5
more userspace links
bstiq Aug 5, 2024
5f7a144
clean up links
bstiq Aug 5, 2024
afb5f11
Update .wordlist.txt
bstiq Aug 6, 2024
cf2e742
Update .wordlist.txt
bstiq Aug 6, 2024
2dd92b1
Update fw/compile-firmware.md
bstiq Aug 6, 2024
b74fd6a
add releases link
bstiq Aug 6, 2024
675e0ab
Merge branch 'master' of https://github.com/bstiq/bstiqbstkbd.github.io
bstiq Aug 6, 2024
a19e2f2
update keymap argument
bstiq Aug 6, 2024
a850daf
Update fw/compile-firmware.md
bstiq Aug 6, 2024
ee92bf6
Update fw/compile-firmware.md
bstiq Aug 6, 2024
b9c48ea
Update fw/compile-firmware.md
bstiq Aug 6, 2024
ccf8d75
remove via stuff
bstiq Aug 6, 2024
00c4d8d
Merge branch 'master' of https://github.com/bstiq/bstiqbstkbd.github.io
bstiq Aug 6, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .wordlist.txt
Original file line number Diff line number Diff line change
Expand Up @@ -94,3 +94,6 @@ udev

Singel
LEBASTARD

Alli # keeps getting detected as a word in youtube video id in embed
bstiq marked this conversation as resolved.
Show resolved Hide resolved
upstreaming
bstiq marked this conversation as resolved.
Show resolved Hide resolved
55 changes: 55 additions & 0 deletions _includes/use_keyboard.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Table of contents

1. TOC
{:toc}

# Introduction

Congratulations on successfully building your keyboard!

The Bastard Keyboards come with a range of features, and it's also easy to customize them. On this page you will find additional information on how to use them and make them your own.

# Daily use

## Default keymap

You can find pictures of the default keymaps on the [default keymaps page][keymaps].

Alternatively, you can also plug in your keyboard and visualize the keymap using VIA (see VIA section).

## Miryoku

The 3x5 keyboards (Skeletyl, Charybdis Nano) come flashed with [Miryoku](https://github.com/manna-harbour/miryoku). On its github repository you will find useful information on the different layers available.
bstiq marked this conversation as resolved.
Show resolved Hide resolved

# Customization

For customizing your keyboard, you can:

- use VIA
- use QMK

## Using VIA

All Bastard Keyboards come flashed with VIA. VIA is an additional layer that comes on top of QMK, and comes with a handy graphical interface. While it's limited in features, it removes the need to manage a git repository, the console and a QMK installation.
bstiq marked this conversation as resolved.
Show resolved Hide resolved

You can open the [VIA Web Interface through use.via.app](https://usevia.app/). At the moment, only WebHID-enabled browsers work (eg. Chrome and Chromium-based).
bstiq marked this conversation as resolved.
Show resolved Hide resolved

You can check the following tutorial on how to use it:
{% include youtube.html id="cYICAlliJfU" %}

Through VIA, you can customize:
- the keymap
- macros, layers
- RGB

## Using QMK

This is for advanced users.

For how to compile a custom hardware for your keyboard, take a look at the [how to compile your own firmware page][compile-firmware].

---

[compile-firmware]: {{site.baseurl}}/fw/compile-firmware.html
[keymaps]: {{site.baseurl}}/fw/default-keymaps.html
[flashing]: {{site.baseurl}}/fw/flashing.html
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ The most important ones are on the thumb cluster - it transforms into mouse butt

### Sniping

Sniping **slows down the trackball**. This way, you can move the cursor more precisely.
Sniping **slows down the trackball/trackpad**. This way, you can move the cursor more precisely.

By default, Sniping mode is activated when you hold the `MOUSE + SNIP` keys at the same time.
You can also configure qmk to have it activated automatically.
Expand All @@ -43,11 +43,19 @@ You can also configure qmk to have it activated automatically.

The 3x5 keyboards (Skeletyl, Charybdis Nano) come flashed with [Miryoku](https://github.com/manna-harbour/miryoku). On its github repository you will find useful information on the different layers available.


# Customization

For customizing your keyboard, you can:

- use VIA
- use QMK

## Using VIA

All Bastard Keyboards come flashed with VIA. You can open the [VIA Web Interface through use.via.app](https://usevia.app/). At the moment, only WebHID-enabled browsers work (eg. Chrome and Chromium-based).
All Bastard Keyboards come flashed with VIA. VIA is an additional layer that comes on top of QMK, and comes with a handy graphical interface. While it's limited in features, it removes the need to manage a git repository, the console and a QMK installation.

You can open the [VIA Web Interface through use.via.app](https://usevia.app/). At the moment, only WebHID-enabled browsers work (eg. Chrome and Chromium-based).
bstiq marked this conversation as resolved.
Show resolved Hide resolved

You can check the following tutorial on how to use it:
{% include youtube.html id="cYICAlliJfU" %}
Expand All @@ -59,14 +67,15 @@ Through VIA, you can customize:

## Using QMK

You can find the latest **default images** for all Bastard Keyboards in the release section of the [BastardKB QMK fork](https://github.com/Bastardkb/bastardkb-qmk/releases).
This is for advanced users.

For how to flash your keyboard, take a look at the [how to flash your keyboard page][flashing].
For how to compile a custom hardware for your keyboard, take a look at the [how to compile your own firmware page][compile-firmware].

For **advanced customization of the Charybdis and Charybdis Nano**, take a look at the [customize page][customize].
For **advanced customization of the Charybdis and Charybdis Nano**, take a look at the [customize page][customize-chary].

---

[customize]: {{site.baseurl}}/fw/charybdis-features.html
[customize-chary]: {{site.baseurl}}/fw/charybdis-features.html
[keymaps]: {{site.baseurl}}/fw/default-keymaps.html
[flashing]: {{site.baseurl}}/fw/flashing.html
[flashing]: {{site.baseurl}}/fw/flashing.html
[compile-firmware]: {{site.baseurl}}/fw/compile-firmware.html
4 changes: 2 additions & 2 deletions bg_charybdis/13customize.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
---
layout: default
title: Customizing your keyboard
title: Using your keyboard
nav_order: 13
parent: Build guide - Charybdis
---


{% include customize_keyboard.md %}
{% include use_keyboard_chary.md %}
4 changes: 2 additions & 2 deletions bg_cnano/13customize.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
---
layout: default
title: Customizing your keyboard
title: Using your keyboard
nav_order: 13
parent: Build guide - Charybdis Nano
---


{% include customize_keyboard.md %}
{% include use_keyboard_chary.md %}
9 changes: 9 additions & 0 deletions bg_dilemma/customize.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
---
layout: default
title: Using your Dilemma
nav_order: 99
parent: Build guide - Dilemma
---


{% include use_keyboard_chary.md %}
2 changes: 2 additions & 0 deletions bg_dilemma/intro.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,7 @@ We recommend you start by reading the *required tools* section.

There are written guides, and there are also video guides in the *video guides* section.

For building the Dilemma MAX, just follow the Dilemma instructions - it's the same keyboard, just bigger.

1. TOC
{:toc}
10 changes: 0 additions & 10 deletions bg_dilemma/max_v1.md

This file was deleted.

3 changes: 1 addition & 2 deletions bg_dilemma/v1.md
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,5 @@ Solder in your switches of preference.

You're all done!

Head over to [bstkbd.com/custom](https://bstkbd.com/custom) to customize your keyboard to your needs.
Head over to [Customize your Dilemma firmware][use-dilemma] to customize your keyboard to your needs.

If you need any help with it, make sure to hop on the discord : [bstkbd.com/discord](https://www.bstkbd.com/discord)
6 changes: 4 additions & 2 deletions bg_dilemma/v2.md
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,8 @@ Solder in your switches of preference.

You're all done!

Head over to [bstkbd.com/custom](https://bstkbd.com/custom) to customize your keyboard to your needs.
Head over to [Customize your Dilemma firmware][use-dilemma] to customize your keyboard to your needs.

If you need any help with it, make sure to hop on the discord : [bstkbd.com/discord](https://www.bstkbd.com/discord)
---

[use-dilemma]: {{site.baseurl}}/bg_dilemma/customize.html
4 changes: 2 additions & 2 deletions bg_scylla/13customize.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
---
layout: default
title: Customizing your keyboard
title: Using your keyboard
nav_order: 13
parent: Build guide - Scylla
---


{% include customize_keyboard.md %}
{% include use_keyboard.md %}
4 changes: 2 additions & 2 deletions bg_skeletyl/13customize.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
---
layout: default
title: Customizing your keyboard
title: Using your keyboard
nav_order: 13
parent: Build guide - Skeletyl
---


{% include customize_keyboard.md %}
{% include use_keyboard.md %}
146 changes: 146 additions & 0 deletions fw/compile-firmware.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,146 @@
---
layout: default
title: Compiling your firmware
nav_order: 99
parent: Firmware
---

# Table of contents

1. TOC
{:toc}

# Introduction

The [BastardKB QMK repository](https://github.com/bastardkb/bastardkb-qmk) contains the firmware code and releases for the Bastard Keyboards Charybdis boards.

While that repository is used as primary source of truth for Bastard Keyboards firmwares as it contains the latest changes and improvements, the maintainers aim at upstreaming all those changes to the official [QMK repository](https://github.com/qmk/qmk_firmware).

While the behavioural code is stored on the QMK repository, the keymaps are stored in our [QMK userspace](https://github.com/Bastardkb/qmk_userspace).

Check warning on line 19 in fw/compile-firmware.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (behavioural)

Check warning on line 19 in fw/compile-firmware.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (userspace)
bstiq marked this conversation as resolved.
Show resolved Hide resolved

This page details how to compile your own firmware. Building from source is useful to people who want to customize their keyboard and keymaps beyond what Via offers. This involves using a command-line interface, writing C code, and compiling this code into the final firmware file.

If that seems too complicated, you can also use one of the default releases, or VIA.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Doesn't one include the other? Perhaps "you can also use one of the defalult releases using via".

"default releases" should also link to the releases page.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

added release link. not sure what you mean with the other

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See suggestion below


# Pre-requisites

## Working QMK environment

Make sure you have a functional QMK environment. See [QMK Docs](https://docs.qmk.fm/#/newbs) for details. At this point, **you don't need** to run `qmk setup`.

## BastardKb QMK fork

Clone the BKB QMK repository, using either github desktop or the command line, and switch to the `bkb-master` branch:

```shell
git clone https://github.com/bastardkb/bastardkb-qmk
cd bastardkb-qmk
git checkout origin/bkb-master
bstiq marked this conversation as resolved.
Show resolved Hide resolved
```

Now that you've cloned the repository, `cd` into it and set it as the default local QMK repository. You also need to do this if you had a previous, separate QMK installation.

```shell
qmk config user.qmk_home="$(realpath .)"

Check warning on line 44 in fw/compile-firmware.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (realpath)
```

{: .info }
If you have multiple QMK installations, you will need to manually set the qmk home path again to use the other ones.

## BastardKb userspace

Check warning on line 50 in fw/compile-firmware.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (userspace)

While the QMK repository contains the logic behind the keyboards, the keymaps are in the userspace repository.

Check warning on line 52 in fw/compile-firmware.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (userspace)

In a separate folder, clone the BKB QMK repository, using either github desktop or the command line:


```shell
git clone https://github.com/bastardkb/qmk_userspace
```

Next, `cd` into the repository and enable userspace:

Check warning on line 61 in fw/compile-firmware.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (userspace)

```shell
cd qmk_userspace

Check warning on line 64 in fw/compile-firmware.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (userspace)
qmk config user.overlay_dir="$(realpath .)"

Check warning on line 65 in fw/compile-firmware.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (realpath)
```

## Github actions

// TODO screenshot enable actions workflows

// TODO mroe details, screenshots

Check warning on line 72 in fw/compile-firmware.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (mroe)
bstiq marked this conversation as resolved.
Show resolved Hide resolved
actions tab -- "I understand my workflows, go ahead and enable them"

1. In the GitHub Actions tab, enable workflows
2. Push your changes above to your forked GitHub repository
3. Look at the GitHub Actions for a new actions run
4. Wait for the actions run to complete
5. Inspect the Releases tab on your repository for the latest firmware build

# Compiling with console
bstiq marked this conversation as resolved.
Show resolved Hide resolved

Once in the QMK Userspace repository, compiling a keymap works the same as normal:

Check warning on line 83 in fw/compile-firmware.md

View workflow job for this annotation

GitHub Actions / spellcheck

Unknown word (Userspace)
bstiq marked this conversation as resolved.
Show resolved Hide resolved

```shell
qmk compile -c -kb bastardkb/{keyboard} -km {keymap}
```

## `{keyboard}` argument

`{keyboard}` corresponds to the physical keyboard you are building the firmware for. It can be one of the following:

- `charybdis/4x6`: the 4x6+5 [Charybdis](https://github.com/bastardkb/charybdis/)
- `charybdis/3x5`: the 3x5+3 [Charybdis Nano](https://github.com/bastardkb/charybdis/)
- `charybdis/3x6`: the 3x6+3 [Charybdis Mini](https://github.com/bastardkb/charybdis/)
- `scylla`: the 4x6+5 [Scylla](https://github.com/Bastardkb/Scylla)
- `skeletyl`: the 3x5+3 [Skeletyl](https://github.com/Bastardkb/Skeletyl/)
- `tbkmini`: the 3x6+3 [TBK Mini](https://github.com/Bastardkb/TBK-Mini/)
- `dilemma/3x5_3`: the 3x5+3 [Dilemma](https://github.com/bastardkb/dilemma/)
- `dilemma/4x6_4`: the 4x6+4 [Dilemma Max](https://github.com/bastardkb/dilemma/)

## `{keymap}` argument

All keyboards have a `default` keymap. Most also have a `via` keymap. The latter is already configured to work with [Via](https://usevia.app).
bstiq marked this conversation as resolved.
Show resolved Hide resolved

To build *any* keymap with Via support, simply add the following argument to the command line: `-e VIA_ENABLE=yes`, e.g.:
bstiq marked this conversation as resolved.
Show resolved Hide resolved

```shell
qmk compile -c -kb {keyboard} -km default -e VIA_ENABLE=yes
```

# Compiling with Github Actions

If you clone the BastardKB Userspace repository, it is alredy configured to work with the BastardKB QMK fork.
bstiq marked this conversation as resolved.
Show resolved Hide resolved

If you created your own keymap, you will need to add it to the list of keympaps to be compiled in `qmk.json`, for example:

```shell
{
"userspace_version": "1.0",
"build_targets": [
["bastardkb/charybdis/4x6", "my-keymap"]
]
}
```

We also recommend deleting the other keymaps if you don't use them, as it'll make the action run faster.

# Creating your own keymap

// TODO

# Contributing your own keymap

// TODO

# Flashing your keyboard

Once you compiled your `uf2` image, you can flash your keyboard.

For how to flash your keyboard, take a look at the [how to flash your keyboard page][flashing].


---

[flashing]: {{site.baseurl}}/fw/flashing.html
4 changes: 3 additions & 1 deletion fw/flashing.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@ To flash your new image, you will need to go through a few steps:

Below is detailed the exact procedure to follow. You need to flash either the right side only, or the right and left side separately - this is also detailed below.

# Sourcing your firmware

Sourcing your firmware can be done in a couple ways:

- downloading it from the [release section on github][releases]
Expand Down Expand Up @@ -130,7 +132,7 @@ Unplug the USB connector and connect the other side, and then repeat the procedu
If you use the `QK_BOOT` method, please note that your layout may now be mirrored! This is normal, ignore it and plug the USB back into the right side.

----
[build]: https://github.com/Bastardkb/bastardkb-qmk?tab=readme-ov-file#building-from-source-advanced
[build]: {{site.baseurl}}/fw/compile-firmware.html
[releases]: https://github.com/Bastardkb/bastardkb-qmk/releases
[keymaps]: {{site.baseurl}}/fw/default-keymaps.html
[splitkb-whentoflash]: https://docs.splitkb.com/hc/en-us/articles/360011949679-When-do-I-need-to-flash-my-microcontroller
Loading