Merge remote-tracking branch 'upstream/main' into advantage360
This commit is contained in:
commit
85059ddfe3
291 changed files with 16342 additions and 7839 deletions
68
.github/workflows/build-user-config.yml
vendored
68
.github/workflows/build-user-config.yml
vendored
|
@ -18,8 +18,8 @@ on:
|
||||||
default: "bin"
|
default: "bin"
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
artifact_name:
|
archive_name:
|
||||||
description: 'Artifact output file name'
|
description: 'Archive output file name'
|
||||||
default: 'firmware'
|
default: 'firmware'
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
|
@ -29,21 +29,18 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
name: Fetch Build Keyboards
|
name: Fetch Build Keyboards
|
||||||
outputs:
|
outputs:
|
||||||
matrix: ${{ steps.set-matrix.outputs.matrix }}
|
build_matrix: ${{ env.build_matrix }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
- name: Install yaml2json
|
- name: Install yaml2json
|
||||||
run: python3 -m pip install remarshal
|
run: python3 -m pip install remarshal
|
||||||
|
|
||||||
- name: Fetch Build Matrix
|
- name: Fetch Build Matrix
|
||||||
id: set-matrix
|
|
||||||
run: |
|
run: |
|
||||||
set -x
|
echo "build_matrix=$(yaml2json ${{ inputs.build_matrix_path }} | jq -c .)" >> $GITHUB_ENV
|
||||||
matrix=$(yaml2json ${{ inputs.build_matrix_path }} | jq -c .)
|
yaml2json ${{ inputs.build_matrix_path }} | jq
|
||||||
yaml2json ${{ inputs.build_matrix_path }}
|
|
||||||
echo "::set-output name=matrix::${matrix}"
|
|
||||||
|
|
||||||
build:
|
build:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
@ -53,35 +50,31 @@ jobs:
|
||||||
name: Build
|
name: Build
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix: ${{fromJson(needs.matrix.outputs.matrix)}}
|
matrix: ${{ fromJson(needs.matrix.outputs.build_matrix) }}
|
||||||
steps:
|
steps:
|
||||||
- name: Prepare variables
|
- name: Prepare variables
|
||||||
id: variables
|
shell: sh -x {0}
|
||||||
run: |
|
run: |
|
||||||
set -x
|
|
||||||
if [ -n "${{ matrix.shield }}" ]
|
if [ -n "${{ matrix.shield }}" ]
|
||||||
then
|
then
|
||||||
EXTRA_CMAKE_ARGS="-DSHIELD=${{ matrix.shield }}"
|
echo "extra_cmake_args=-DSHIELD=\"${{ matrix.shield }}\"" >> $GITHUB_ENV
|
||||||
ARTIFACT_NAME="${{ matrix.shield }}-${{ matrix.board }}-zmk"
|
echo "artifact_name=${{ matrix.shield }}-${{ matrix.board }}-zmk" >> $GITHUB_ENV
|
||||||
DISPLAY_NAME="${{ matrix.shield }} - ${{ matrix.board }}"
|
echo "display_name=${{ matrix.shield }} - ${{ matrix.board }}" >> $GITHUB_ENV
|
||||||
else
|
else
|
||||||
EXTRA_CMAKE_ARGS=
|
echo "extra_cmake_args=" >> $GITHUB_ENV
|
||||||
DISPLAY_NAME="${{ matrix.board }}"
|
echo "artifact_name=${{ matrix.board }}-zmk" >> $GITHUB_ENV
|
||||||
ARTIFACT_NAME="${{ matrix.board }}-zmk"
|
echo "display_name=${{ matrix.board }}" >> $GITHUB_ENV
|
||||||
fi
|
fi
|
||||||
echo ::set-output name=extra-cmake-args::${EXTRA_CMAKE_ARGS}
|
echo "zephyr_version=${ZEPHYR_VERSION}" >> $GITHUB_ENV
|
||||||
echo ::set-output name=artifact-name::${ARTIFACT_NAME}
|
|
||||||
echo ::set-output name=display-name::${DISPLAY_NAME}
|
|
||||||
echo ::set-output name=zephyr-version::${ZEPHYR_VERSION}
|
|
||||||
|
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
- name: Cache west modules
|
- name: Cache west modules
|
||||||
uses: actions/cache@v3.0.2
|
uses: actions/cache@v3.0.11
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
env:
|
env:
|
||||||
cache-name: cache-zephyr-${{ steps.variables.outputs.zephyr-version }}-modules
|
cache_name: cache-zephyr-${{ env.zephyr_version }}-modules
|
||||||
with:
|
with:
|
||||||
path: |
|
path: |
|
||||||
modules/
|
modules/
|
||||||
|
@ -89,9 +82,9 @@ jobs:
|
||||||
zephyr/
|
zephyr/
|
||||||
bootloader/
|
bootloader/
|
||||||
zmk/
|
zmk/
|
||||||
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/west.yml', '**/build.yaml') }}
|
key: ${{ runner.os }}-build-${{ env.cache_name }}-${{ hashFiles('**/west.yml', '**/build.yaml') }}
|
||||||
restore-keys: |
|
restore-keys: |
|
||||||
${{ runner.os }}-build-${{ env.cache-name }}-
|
${{ runner.os }}-build-${{ env.cache_name }}-
|
||||||
${{ runner.os }}-build-
|
${{ runner.os }}-build-
|
||||||
${{ runner.os }}-
|
${{ runner.os }}-
|
||||||
|
|
||||||
|
@ -104,28 +97,27 @@ jobs:
|
||||||
- name: West Zephyr export
|
- name: West Zephyr export
|
||||||
run: west zephyr-export
|
run: west zephyr-export
|
||||||
|
|
||||||
- name: West Build (${{ steps.variables.outputs.display-name }})
|
- name: West Build (${{ env.display_name }})
|
||||||
run: |
|
shell: sh -x {0}
|
||||||
set -x
|
run: west build -s zmk/app -b ${{ matrix.board }} -- -DZMK_CONFIG=${GITHUB_WORKSPACE}/${{ inputs.config_path }} ${{ env.extra_cmake_args }} ${{ matrix.cmake-args }}
|
||||||
west build -s zmk/app -b ${{ matrix.board }} -- -DZMK_CONFIG=${GITHUB_WORKSPACE}/${{ inputs.config_path }} ${{ steps.variables.outputs.extra-cmake-args }} ${{ matrix.cmake-args }}
|
|
||||||
|
|
||||||
- name: ${{ steps.variables.outputs.display-name }} Kconfig file
|
- name: ${{ env.display_name }} Kconfig file
|
||||||
run: grep -v -e "^#" -e "^$" build/zephyr/.config | sort
|
run: grep -v -e "^#" -e "^$" build/zephyr/.config | sort
|
||||||
|
|
||||||
- name: Rename artifacts
|
- name: Rename artifacts
|
||||||
|
shell: sh -x {0}
|
||||||
run: |
|
run: |
|
||||||
set -x
|
|
||||||
mkdir build/artifacts
|
mkdir build/artifacts
|
||||||
if [ -f build/zephyr/zmk.uf2 ]
|
if [ -f build/zephyr/zmk.uf2 ]
|
||||||
then
|
then
|
||||||
cp build/zephyr/zmk.uf2 "build/artifacts/${{ steps.variables.outputs.artifact-name }}.uf2"
|
cp build/zephyr/zmk.uf2 "build/artifacts/${{ env.artifact_name }}.uf2"
|
||||||
elif [ -f build/zephyr/zmk.${{ inputs.fallback_binary }} ]
|
elif [ -f build/zephyr/zmk.${{ inputs.fallback_binary }} ]
|
||||||
then
|
then
|
||||||
cp build/zephyr/zmk.${{ inputs.fallback_binary }} "build/artifacts/${{ steps.variables.outputs.artifact-name }}.${{ inputs.fallback_binary }}"
|
cp build/zephyr/zmk.${{ inputs.fallback_binary }} "build/artifacts/${{ env.artifact_name }}.${{ inputs.fallback_binary }}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- name: Archive (${{ steps.variables.outputs.display-name }})
|
- name: Archive (${{ env.display_name }})
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.artifact_name }}
|
name: ${{ inputs.archive_name }}
|
||||||
path: build/artifacts
|
path: build/artifacts
|
||||||
|
|
37
.github/workflows/build.yml
vendored
37
.github/workflows/build.yml
vendored
|
@ -10,7 +10,7 @@ on:
|
||||||
- ".github/workflows/build.yml"
|
- ".github/workflows/build.yml"
|
||||||
- "app/**"
|
- "app/**"
|
||||||
schedule:
|
schedule:
|
||||||
- cron: '22 4 * * *'
|
- cron: "22 4 * * *"
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
|
@ -24,7 +24,7 @@ jobs:
|
||||||
include: ${{ fromJSON(needs.compile-matrix.outputs.include-list) }}
|
include: ${{ fromJSON(needs.compile-matrix.outputs.include-list) }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Cache west modules
|
- name: Cache west modules
|
||||||
uses: actions/cache@v3.0.2
|
uses: actions/cache@v3.0.2
|
||||||
env:
|
env:
|
||||||
|
@ -35,11 +35,11 @@ jobs:
|
||||||
tools/
|
tools/
|
||||||
zephyr/
|
zephyr/
|
||||||
bootloader/
|
bootloader/
|
||||||
key: 4-${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('app/west.yml') }}
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('app/west.yml') }}
|
||||||
restore-keys: |
|
restore-keys: |
|
||||||
4-${{ runner.os }}-build-${{ env.cache-name }}-
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
4-${{ runner.os }}-build-
|
${{ runner.os }}-build-
|
||||||
4-${{ runner.os }}-
|
${{ runner.os }}-
|
||||||
timeout-minutes: 2
|
timeout-minutes: 2
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
- name: Initialize workspace (west init)
|
- name: Initialize workspace (west init)
|
||||||
|
@ -51,7 +51,7 @@ jobs:
|
||||||
- name: Use Node.js
|
- name: Use Node.js
|
||||||
uses: actions/setup-node@v2
|
uses: actions/setup-node@v2
|
||||||
with:
|
with:
|
||||||
node-version: '14.x'
|
node-version: "14.x"
|
||||||
- name: Install @actions/artifact
|
- name: Install @actions/artifact
|
||||||
run: npm install @actions/artifact
|
run: npm install @actions/artifact
|
||||||
- name: Build and upload artifacts
|
- name: Build and upload artifacts
|
||||||
|
@ -71,7 +71,7 @@ jobs:
|
||||||
|
|
||||||
for (const shieldArgs of buildShieldArgs) {
|
for (const shieldArgs of buildShieldArgs) {
|
||||||
try {
|
try {
|
||||||
const output = execSync(`west build -s app -p -b ${{ matrix.board }} -- ${shieldArgs.shield ? '-DSHIELD=' + shieldArgs.shield : ''} ${shieldArgs['cmake-args'] || ''}`);
|
const output = execSync(`west build -s app -p -b ${{ matrix.board }} -- ${shieldArgs.shield ? '-DSHIELD="' + shieldArgs.shield + '"' : ''} ${shieldArgs['cmake-args'] || ''}`);
|
||||||
|
|
||||||
console.log(`::group::${{ matrix.board}} ${shieldArgs.shield} Build`)
|
console.log(`::group::${{ matrix.board}} ${shieldArgs.shield} Build`)
|
||||||
console.log(output.toString());
|
console.log(output.toString());
|
||||||
|
@ -151,11 +151,11 @@ jobs:
|
||||||
core-include: ${{ steps.core-list.outputs.result }}
|
core-include: ${{ steps.core-list.outputs.result }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Use Node.js
|
- name: Use Node.js
|
||||||
uses: actions/setup-node@v2
|
uses: actions/setup-node@v2
|
||||||
with:
|
with:
|
||||||
node-version: '14.x'
|
node-version: "14.x"
|
||||||
- name: Install js-yaml
|
- name: Install js-yaml
|
||||||
run: npm install js-yaml
|
run: npm install js-yaml
|
||||||
- uses: actions/github-script@v4
|
- uses: actions/github-script@v4
|
||||||
|
@ -180,11 +180,11 @@ jobs:
|
||||||
boards-include: ${{ steps.boards-list.outputs.result }}
|
boards-include: ${{ steps.boards-list.outputs.result }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Use Node.js
|
- name: Use Node.js
|
||||||
uses: actions/setup-node@v2
|
uses: actions/setup-node@v2
|
||||||
with:
|
with:
|
||||||
node-version: '14.x'
|
node-version: "14.x"
|
||||||
- name: Install js-yaml
|
- name: Install js-yaml
|
||||||
run: npm install js-yaml
|
run: npm install js-yaml
|
||||||
- uses: actions/github-script@v4
|
- uses: actions/github-script@v4
|
||||||
|
@ -246,6 +246,9 @@ jobs:
|
||||||
return hm.requires.flatMap(i =>
|
return hm.requires.flatMap(i =>
|
||||||
metadata.interconnects[i].boards.flatMap(b => boardAndShield(b, hm))
|
metadata.interconnects[i].boards.flatMap(b => boardAndShield(b, hm))
|
||||||
);
|
);
|
||||||
|
} else {
|
||||||
|
console.warn("Unhandled shield without keys");
|
||||||
|
return [];
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "interconnect":
|
case "interconnect":
|
||||||
|
@ -304,11 +307,11 @@ jobs:
|
||||||
organized-metadata: ${{ steps.organize-metadata.outputs.result }}
|
organized-metadata: ${{ steps.organize-metadata.outputs.result }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Use Node.js
|
- name: Use Node.js
|
||||||
uses: actions/setup-node@v2
|
uses: actions/setup-node@v2
|
||||||
with:
|
with:
|
||||||
node-version: '14.x'
|
node-version: "14.x"
|
||||||
- name: Install js-yaml
|
- name: Install js-yaml
|
||||||
run: npm install js-yaml
|
run: npm install js-yaml
|
||||||
- name: Aggregate Metadata
|
- name: Aggregate Metadata
|
||||||
|
@ -326,7 +329,7 @@ jobs:
|
||||||
yaml.loadAll(fs.readFileSync(f, "utf8"))
|
yaml.loadAll(fs.readFileSync(f, "utf8"))
|
||||||
);
|
);
|
||||||
|
|
||||||
return JSON.stringify(aggregated).replace(/\\/g,"\\\\");
|
return JSON.stringify(aggregated).replace(/\\/g,"\\\\").replace(/`/g,"\\`");
|
||||||
result-encoding: string
|
result-encoding: string
|
||||||
|
|
||||||
- name: Organize Metadata
|
- name: Organize Metadata
|
||||||
|
@ -373,7 +376,7 @@ jobs:
|
||||||
},
|
},
|
||||||
{ onboard: [], interconnects: {} });
|
{ onboard: [], interconnects: {} });
|
||||||
|
|
||||||
return JSON.stringify(grouped).replace(/\\/g,"\\\\");
|
return JSON.stringify(grouped).replace(/\\/g,"\\\\").replace(/`/g,"\\`");
|
||||||
result-encoding: string
|
result-encoding: string
|
||||||
get-changed-files:
|
get-changed-files:
|
||||||
if: ${{ github.event_name != 'schedule' }}
|
if: ${{ github.event_name != 'schedule' }}
|
||||||
|
@ -386,7 +389,7 @@ jobs:
|
||||||
- uses: Ana06/get-changed-files@v2.0.0
|
- uses: Ana06/get-changed-files@v2.0.0
|
||||||
id: changed-files
|
id: changed-files
|
||||||
with:
|
with:
|
||||||
format: 'json'
|
format: "json"
|
||||||
- uses: actions/github-script@v4
|
- uses: actions/github-script@v4
|
||||||
id: board-changes
|
id: board-changes
|
||||||
with:
|
with:
|
||||||
|
|
2
.github/workflows/clang-format-lint.yml
vendored
2
.github/workflows/clang-format-lint.yml
vendored
|
@ -22,7 +22,7 @@ jobs:
|
||||||
build:
|
build:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- uses: DoozyX/clang-format-lint-action@v0.13
|
- uses: DoozyX/clang-format-lint-action@v0.13
|
||||||
with:
|
with:
|
||||||
source: "./app"
|
source: "./app"
|
||||||
|
|
6
.github/workflows/doc-checks.yml
vendored
6
.github/workflows/doc-checks.yml
vendored
|
@ -14,7 +14,7 @@ jobs:
|
||||||
lint:
|
lint:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- uses: bahmutov/npm-install@v1
|
- uses: bahmutov/npm-install@v1
|
||||||
with:
|
with:
|
||||||
working-directory: docs
|
working-directory: docs
|
||||||
|
@ -24,7 +24,7 @@ jobs:
|
||||||
prettier:
|
prettier:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- uses: bahmutov/npm-install@v1
|
- uses: bahmutov/npm-install@v1
|
||||||
with:
|
with:
|
||||||
working-directory: docs
|
working-directory: docs
|
||||||
|
@ -34,7 +34,7 @@ jobs:
|
||||||
typecheck:
|
typecheck:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- uses: bahmutov/npm-install@v1
|
- uses: bahmutov/npm-install@v1
|
||||||
with:
|
with:
|
||||||
working-directory: docs
|
working-directory: docs
|
||||||
|
|
|
@ -18,8 +18,8 @@ jobs:
|
||||||
check-metadata-format:
|
check-metadata-format:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- uses: bahmutov/npm-install@v1
|
- uses: bahmutov/npm-install@v1
|
||||||
with:
|
with:
|
||||||
working-directory: app
|
working-directory: app
|
||||||
|
@ -31,7 +31,7 @@ jobs:
|
||||||
container:
|
container:
|
||||||
image: docker.io/zmkfirmware/zmk-dev-arm:3.0
|
image: docker.io/zmkfirmware/zmk-dev-arm:3.0
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: pip install -r app/scripts/requirements.txt
|
run: pip install -r app/scripts/requirements.txt
|
||||||
- name: West init
|
- name: West init
|
||||||
|
|
12
.github/workflows/test.yml
vendored
12
.github/workflows/test.yml
vendored
|
@ -19,7 +19,7 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Find test directories
|
- name: Find test directories
|
||||||
id: test-dirs
|
id: test-dirs
|
||||||
run: |
|
run: |
|
||||||
|
@ -36,7 +36,7 @@ jobs:
|
||||||
image: docker.io/zmkfirmware/zmk-build-arm:3.0
|
image: docker.io/zmkfirmware/zmk-build-arm:3.0
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Cache west modules
|
- name: Cache west modules
|
||||||
uses: actions/cache@v3.0.2
|
uses: actions/cache@v3.0.2
|
||||||
env:
|
env:
|
||||||
|
@ -47,11 +47,11 @@ jobs:
|
||||||
tools/
|
tools/
|
||||||
zephyr/
|
zephyr/
|
||||||
bootloader/
|
bootloader/
|
||||||
key: 4-${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('app/west.yml') }}
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('app/west.yml') }}
|
||||||
restore-keys: |
|
restore-keys: |
|
||||||
4-${{ runner.os }}-build-${{ env.cache-name }}-
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
4-${{ runner.os }}-build-
|
${{ runner.os }}-build-
|
||||||
4-${{ runner.os }}-
|
${{ runner.os }}-
|
||||||
timeout-minutes: 2
|
timeout-minutes: 2
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
- name: Initialize workspace (west init)
|
- name: Initialize workspace (west init)
|
||||||
|
|
|
@ -47,13 +47,13 @@ if ((NOT CONFIG_ZMK_SPLIT) OR CONFIG_ZMK_SPLIT_ROLE_CENTRAL)
|
||||||
target_sources(app PRIVATE src/behaviors/behavior_momentary_layer.c)
|
target_sources(app PRIVATE src/behaviors/behavior_momentary_layer.c)
|
||||||
target_sources(app PRIVATE src/behaviors/behavior_mod_morph.c)
|
target_sources(app PRIVATE src/behaviors/behavior_mod_morph.c)
|
||||||
target_sources(app PRIVATE src/behaviors/behavior_outputs.c)
|
target_sources(app PRIVATE src/behaviors/behavior_outputs.c)
|
||||||
target_sources(app PRIVATE src/behaviors/behavior_tap_dance.c)
|
|
||||||
target_sources(app PRIVATE src/behaviors/behavior_toggle_layer.c)
|
target_sources(app PRIVATE src/behaviors/behavior_toggle_layer.c)
|
||||||
target_sources(app PRIVATE src/behaviors/behavior_to_layer.c)
|
target_sources(app PRIVATE src/behaviors/behavior_to_layer.c)
|
||||||
target_sources(app PRIVATE src/behaviors/behavior_transparent.c)
|
target_sources(app PRIVATE src/behaviors/behavior_transparent.c)
|
||||||
target_sources(app PRIVATE src/behaviors/behavior_none.c)
|
target_sources(app PRIVATE src/behaviors/behavior_none.c)
|
||||||
target_sources(app PRIVATE src/behaviors/behavior_sensor_rotate_key_press.c)
|
target_sources(app PRIVATE src/behaviors/behavior_sensor_rotate_key_press.c)
|
||||||
target_sources(app PRIVATE src/combo.c)
|
target_sources(app PRIVATE src/combo.c)
|
||||||
|
target_sources(app PRIVATE src/behaviors/behavior_tap_dance.c)
|
||||||
target_sources(app PRIVATE src/behavior_queue.c)
|
target_sources(app PRIVATE src/behavior_queue.c)
|
||||||
target_sources(app PRIVATE src/conditional_layer.c)
|
target_sources(app PRIVATE src/conditional_layer.c)
|
||||||
target_sources(app PRIVATE src/endpoints.c)
|
target_sources(app PRIVATE src/endpoints.c)
|
||||||
|
|
20
app/Kconfig
20
app/Kconfig
|
@ -25,6 +25,18 @@ config USB_DEVICE_PID
|
||||||
config USB_DEVICE_MANUFACTURER
|
config USB_DEVICE_MANUFACTURER
|
||||||
default "ZMK Project"
|
default "ZMK Project"
|
||||||
|
|
||||||
|
config BT_DIS_PNP_VID
|
||||||
|
default 0x1D50
|
||||||
|
|
||||||
|
config BT_DIS_PNP_PID
|
||||||
|
default 0x615E
|
||||||
|
|
||||||
|
config BT_DIS_MODEL
|
||||||
|
default ZMK_KEYBOARD_NAME
|
||||||
|
|
||||||
|
config BT_DIS_MANUF
|
||||||
|
default "ZMK Project"
|
||||||
|
|
||||||
menu "HID"
|
menu "HID"
|
||||||
|
|
||||||
choice ZMK_HID_REPORT_TYPE
|
choice ZMK_HID_REPORT_TYPE
|
||||||
|
@ -343,6 +355,14 @@ config ZMK_BEHAVIOR_KEY_TOGGLE
|
||||||
bool
|
bool
|
||||||
default $(dt_compat_enabled,$(DT_COMPAT_ZMK_BEHAVIOR_KEY_TOGGLE))
|
default $(dt_compat_enabled,$(DT_COMPAT_ZMK_BEHAVIOR_KEY_TOGGLE))
|
||||||
|
|
||||||
|
config ZMK_MACRO_DEFAULT_WAIT_MS
|
||||||
|
int "Default time to wait (in milliseconds) before triggering the next behavior in macros"
|
||||||
|
default 15
|
||||||
|
|
||||||
|
config ZMK_MACRO_DEFAULT_TAP_MS
|
||||||
|
int "Default time to wait (in milliseconds) between the press and release events of a tapped behavior in macros"
|
||||||
|
default 30
|
||||||
|
|
||||||
endmenu
|
endmenu
|
||||||
|
|
||||||
menu "Advanced"
|
menu "Advanced"
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
# Copyright (c) 2022 The ZMK Contributors
|
# Copyright (c) 2022 The ZMK Contributors
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
# Uncomment these lines below to enable encoders.
|
||||||
|
# CONFIG_EC11=y
|
||||||
|
# CONFIG_EC11_TRIGGER_GLOBAL_THREAD=y
|
||||||
|
|
||||||
# Uncomment the line below to enable RGB.
|
# Uncomment the line below to enable RGB.
|
||||||
# CONFIG_ZMK_RGB_UNDERGLOW=y
|
# CONFIG_ZMK_RGB_UNDERGLOW=y
|
||||||
|
|
9
app/boards/arm/blackpill_f401ce/blackpill_f401ce.zmk.yml
Normal file
9
app/boards/arm/blackpill_f401ce/blackpill_f401ce.zmk.yml
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
file_format: "1"
|
||||||
|
id: blackpill_f401ce
|
||||||
|
name: BlackPill F401CE
|
||||||
|
type: board
|
||||||
|
arch: arm
|
||||||
|
outputs:
|
||||||
|
- usb
|
||||||
|
url: https://github.com/WeActStudio/WeActStudio.MiniSTM32F4x1
|
||||||
|
exposes: [blackpill]
|
9
app/boards/arm/blackpill_f411ce/blackpill_f411ce.zmk.yml
Normal file
9
app/boards/arm/blackpill_f411ce/blackpill_f411ce.zmk.yml
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
file_format: "1"
|
||||||
|
id: blackpill_f411ce
|
||||||
|
name: BlackPill F411CE
|
||||||
|
type: board
|
||||||
|
arch: arm
|
||||||
|
outputs:
|
||||||
|
- usb
|
||||||
|
url: https://github.com/WeActStudio/WeActStudio.MiniSTM32F4x1
|
||||||
|
exposes: [blackpill]
|
60
app/boards/arm/corneish_zen/CMakeLists.txt
Normal file
60
app/boards/arm/corneish_zen/CMakeLists.txt
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
if(CONFIG_ZMK_DISPLAY)
|
||||||
|
target_sources_ifdef(CONFIG_CUSTOM_WIDGET_BATTERY_STATUS app PRIVATE widgets/battery_status.c)
|
||||||
|
target_sources_ifdef(CONFIG_CUSTOM_WIDGET_OUTPUT_STATUS app PRIVATE widgets/output_status.c)
|
||||||
|
target_sources_ifdef(CONFIG_CUSTOM_WIDGET_LAYER_STATUS app PRIVATE widgets/layer_status.c)
|
||||||
|
target_sources_ifdef(CONFIG_CUSTOM_WIDGET_PERIPHERAL_STATUS app PRIVATE widgets/peripheral_status.c)
|
||||||
|
|
||||||
|
add_subdirectory_ifdef(CONFIG_ZMK_DISPLAY_STATUS_SCREEN_CUSTOM widgets/icons)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
zephyr_library()
|
||||||
|
|
||||||
|
if(CONFIG_ZMK_DISPLAY)
|
||||||
|
if(CONFIG_CUSTOM_WIDGET_BATTERY_STATUS)
|
||||||
|
zephyr_library_sources(widgets/icons/batt_100.c)
|
||||||
|
zephyr_library_sources(widgets/icons/batt_100_chg.c)
|
||||||
|
zephyr_library_sources(widgets/icons/batt_75.c)
|
||||||
|
zephyr_library_sources(widgets/icons/batt_75_chg.c)
|
||||||
|
zephyr_library_sources(widgets/icons/batt_50.c)
|
||||||
|
zephyr_library_sources(widgets/icons/batt_50_chg.c)
|
||||||
|
zephyr_library_sources(widgets/icons/batt_25.c)
|
||||||
|
zephyr_library_sources(widgets/icons/batt_25_chg.c)
|
||||||
|
zephyr_library_sources(widgets/icons/batt_5.c)
|
||||||
|
zephyr_library_sources(widgets/icons/batt_5_chg.c)
|
||||||
|
zephyr_library_sources(widgets/icons/batt_0.c)
|
||||||
|
zephyr_library_sources(widgets/icons/batt_0_chg.c)
|
||||||
|
endif()
|
||||||
|
if(CONFIG_CUSTOM_WIDGET_PERIPHERAL_STATUS)
|
||||||
|
zephyr_library_sources(widgets/icons/bluetooth_advertising.c)
|
||||||
|
zephyr_library_sources(widgets/icons/bluetooth_connected_right.c)
|
||||||
|
zephyr_library_sources(widgets/icons/bluetooth_disconnected_right.c)
|
||||||
|
endif()
|
||||||
|
if(CONFIG_CUSTOM_WIDGET_OUTPUT_STATUS)
|
||||||
|
zephyr_library_sources(widgets/icons/USB_connected.c)
|
||||||
|
zephyr_library_sources(widgets/icons/bluetooth_connected_1.c)
|
||||||
|
zephyr_library_sources(widgets/icons/bluetooth_connected_2.c)
|
||||||
|
zephyr_library_sources(widgets/icons/bluetooth_connected_3.c)
|
||||||
|
zephyr_library_sources(widgets/icons/bluetooth_connected_4.c)
|
||||||
|
zephyr_library_sources(widgets/icons/bluetooth_connected_5.c)
|
||||||
|
zephyr_library_sources(widgets/icons/bluetooth_advertising_1.c)
|
||||||
|
zephyr_library_sources(widgets/icons/bluetooth_advertising_2.c)
|
||||||
|
zephyr_library_sources(widgets/icons/bluetooth_advertising_3.c)
|
||||||
|
zephyr_library_sources(widgets/icons/bluetooth_advertising_4.c)
|
||||||
|
zephyr_library_sources(widgets/icons/bluetooth_advertising_5.c)
|
||||||
|
zephyr_library_sources(widgets/icons/bluetooth_disconnected_right.c)
|
||||||
|
endif()
|
||||||
|
if(CONFIG_CUSTOM_WIDGET_LAYER_STATUS)
|
||||||
|
zephyr_library_sources(widgets/icons/layers.c)
|
||||||
|
zephyr_library_sources(widgets/icons/layers2.c)
|
||||||
|
endif()
|
||||||
|
if(CONFIG_BOARD_CORNEISH_ZEN_V2_RIGHT)
|
||||||
|
zephyr_library_sources(widgets/icons/zenlogo.c)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
zephyr_library_include_directories(${ZEPHYR_LVGL_MODULE_DIR})
|
||||||
|
zephyr_library_include_directories(${ZEPHYR_BASE}/lib/gui/lvgl/)
|
||||||
|
zephyr_library_sources_ifdef(CONFIG_ZMK_DISPLAY custom_status_screen.c)
|
||||||
|
zephyr_library_sources(${ZEPHYR_BASE}/misc/empty_file.c)
|
||||||
|
zephyr_library_include_directories(${CMAKE_SOURCE_DIR}/include)
|
||||||
|
zephyr_library_include_directories(${ZEPHYR_BASE}/drivers)
|
12
app/boards/arm/corneish_zen/Kconfig.board
Normal file
12
app/boards/arm/corneish_zen/Kconfig.board
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
#
|
||||||
|
# Copyright (c) 2022 Darryl deHaan
|
||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
#
|
||||||
|
|
||||||
|
config BOARD_CORNEISH_ZEN_V2_LEFT
|
||||||
|
bool "corneish zen left v2"
|
||||||
|
depends on SOC_NRF52840_QIAA
|
||||||
|
|
||||||
|
config BOARD_CORNEISH_ZEN_V2_RIGHT
|
||||||
|
bool "corneish zen right v2"
|
||||||
|
depends on SOC_NRF52840_QIAA
|
81
app/boards/arm/corneish_zen/Kconfig.defconfig
Normal file
81
app/boards/arm/corneish_zen/Kconfig.defconfig
Normal file
|
@ -0,0 +1,81 @@
|
||||||
|
#
|
||||||
|
# Copyright (c) 2022 Darryl deHaan
|
||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
#
|
||||||
|
|
||||||
|
if BOARD_CORNEISH_ZEN_V2_LEFT
|
||||||
|
|
||||||
|
config ZMK_KEYBOARD_NAME
|
||||||
|
default "Corne-ish Zen"
|
||||||
|
|
||||||
|
config ZMK_SPLIT_ROLE_CENTRAL
|
||||||
|
default y
|
||||||
|
|
||||||
|
endif # BOARD_CORNEISH_ZEN_V2_LEFT
|
||||||
|
|
||||||
|
|
||||||
|
if BOARD_CORNEISH_ZEN_V2_LEFT || BOARD_CORNEISH_ZEN_V2_RIGHT
|
||||||
|
|
||||||
|
config BOARD
|
||||||
|
default "corneish_zen"
|
||||||
|
|
||||||
|
config ZMK_SPLIT
|
||||||
|
default y
|
||||||
|
|
||||||
|
config BT_CTLR
|
||||||
|
default BT
|
||||||
|
|
||||||
|
config ZMK_BLE
|
||||||
|
default y
|
||||||
|
|
||||||
|
config ZMK_USB
|
||||||
|
default y
|
||||||
|
|
||||||
|
if USB
|
||||||
|
|
||||||
|
config USB_NRFX
|
||||||
|
default y
|
||||||
|
|
||||||
|
config USB_DEVICE_STACK
|
||||||
|
default y
|
||||||
|
|
||||||
|
endif # USB
|
||||||
|
|
||||||
|
config ZMK_DISPLAY
|
||||||
|
select LVGL_USE_CONT
|
||||||
|
select LVGL_FONT_MONTSERRAT_26
|
||||||
|
select LVGL_FONT_MONTSERRAT_20
|
||||||
|
select LVGL_FONT_MONTSERRAT_16
|
||||||
|
select LVGL_USE_LABEL
|
||||||
|
select LVGL_USE_IMG
|
||||||
|
|
||||||
|
choice ZMK_DISPLAY_STATUS_SCREEN
|
||||||
|
default ZMK_DISPLAY_STATUS_SCREEN_CUSTOM
|
||||||
|
endchoice
|
||||||
|
|
||||||
|
if ZMK_DISPLAY
|
||||||
|
|
||||||
|
config SPI
|
||||||
|
default y
|
||||||
|
|
||||||
|
config IL0323
|
||||||
|
default y
|
||||||
|
|
||||||
|
config ZMK_DISPLAY_BLANK_ON_IDLE
|
||||||
|
default n
|
||||||
|
|
||||||
|
endif # ZMK_DISPLAY
|
||||||
|
|
||||||
|
menuconfig CUSTOM_WIDGET_BATTERY_STATUS
|
||||||
|
bool "custom battery status widget"
|
||||||
|
|
||||||
|
menuconfig CUSTOM_WIDGET_OUTPUT_STATUS
|
||||||
|
bool "custom output status widget"
|
||||||
|
|
||||||
|
menuconfig CUSTOM_WIDGET_LAYER_STATUS
|
||||||
|
bool "custom layer status widget"
|
||||||
|
|
||||||
|
menuconfig CUSTOM_WIDGET_PERIPHERAL_STATUS
|
||||||
|
bool "custom peripheral status widget"
|
||||||
|
|
||||||
|
endif # BOARD_CORNEISH_ZEN_V2_LEFT || BOARD_CORNEISH_ZEN_V2_RIGHT
|
5
app/boards/arm/corneish_zen/board.cmake
Normal file
5
app/boards/arm/corneish_zen/board.cmake
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
board_runner_args(nrfjprog "--nrf-family=NRF52" "--softreset")
|
||||||
|
include(${ZEPHYR_BASE}/boards/common/blackmagicprobe.board.cmake)
|
||||||
|
include(${ZEPHYR_BASE}/boards/common/nrfjprog.board.cmake)
|
5
app/boards/arm/corneish_zen/corneish_zen.conf
Normal file
5
app/boards/arm/corneish_zen/corneish_zen.conf
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
# Go to sleep after one hour (1*60*60*1000ms)
|
||||||
|
CONFIG_ZMK_IDLE_SLEEP_TIMEOUT=3600000
|
||||||
|
|
||||||
|
# Turn on logging, and set ZMK logging to debug output
|
||||||
|
# CONFIG_ZMK_USB_LOGGING=y
|
126
app/boards/arm/corneish_zen/corneish_zen.dtsi
Normal file
126
app/boards/arm/corneish_zen/corneish_zen.dtsi
Normal file
|
@ -0,0 +1,126 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
#include <nordic/nrf52840_qiaa.dtsi>
|
||||||
|
|
||||||
|
#include <dt-bindings/zmk/matrix_transform.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "corneish_zen_v2";
|
||||||
|
compatible = "corneish_zen_v2";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
zephyr,code-partition = &code_partition;
|
||||||
|
zephyr,sram = &sram0;
|
||||||
|
zephyr,flash = &flash0;
|
||||||
|
zmk,kscan = &kscan0;
|
||||||
|
zmk,display = &epd;
|
||||||
|
zmk,battery = &vbatt;
|
||||||
|
zephyr,console = &cdc_acm_uart;
|
||||||
|
};
|
||||||
|
|
||||||
|
default_transform: keymap_transform_0 {
|
||||||
|
compatible = "zmk,matrix-transform";
|
||||||
|
columns = <12>;
|
||||||
|
rows = <4>;
|
||||||
|
|
||||||
|
// | SW1 | SW2 | SW3 | SW4 | SW5 | SW6 | | SW6 | SW5 | SW4 | SW3 | SW2 | SW1 |
|
||||||
|
// | SW7 | SW8 | SW9 | SW10 | SW11 | SW12 | | SW12 | SW11 | SW10 | SW9 | SW8 | SW7 |
|
||||||
|
// | SW13 | SW14 | SW15 | SW16 | SW17 | SW18 | | SW18 | SW17 | SW16 | SW15 | SW14 | SW13 |
|
||||||
|
// | SW19 | SW20 | SW21 | | SW21 | SW20 | SW19 |
|
||||||
|
map = <
|
||||||
|
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11)
|
||||||
|
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11)
|
||||||
|
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11)
|
||||||
|
RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8)
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
|
five_column_transform: keymap_transform_1 {
|
||||||
|
compatible = "zmk,matrix-transform";
|
||||||
|
columns = <10>;
|
||||||
|
rows = <4>;
|
||||||
|
|
||||||
|
// | SW2 | SW3 | SW4 | SW5 | SW6 | | SW6 | SW5 | SW4 | SW3 | SW2 |
|
||||||
|
// | SW8 | SW9 | SW10 | SW11 | SW12 | | SW12 | SW11 | SW10 | SW9 | SW8 |
|
||||||
|
// | SW14 | SW15 | SW16 | SW17 | SW18 | | SW18 | SW17 | SW16 | SW15 | SW14 |
|
||||||
|
// | SW19 | SW20 | SW21 | | SW21 | SW20 | SW19 |
|
||||||
|
map = <
|
||||||
|
RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10)
|
||||||
|
RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10)
|
||||||
|
RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10)
|
||||||
|
RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8)
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
&adc {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpiote {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbd {
|
||||||
|
status = "okay";
|
||||||
|
cdc_acm_uart: cdc_acm_uart {
|
||||||
|
compatible = "zephyr,cdc-acm-uart";
|
||||||
|
label = "CDC_ACM_0";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&flash0 {
|
||||||
|
/*
|
||||||
|
* For more information, see:
|
||||||
|
* http://docs.zephyrproject.org/latest/devices/dts/flash_partitions.html
|
||||||
|
*/
|
||||||
|
partitions {
|
||||||
|
compatible = "fixed-partitions";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
|
||||||
|
sd_partition: partition@0 {
|
||||||
|
label = "softdevice";
|
||||||
|
reg = <0x00000000 0x00026000>;
|
||||||
|
};
|
||||||
|
code_partition: partition@26000 {
|
||||||
|
label = "code_partition";
|
||||||
|
reg = <0x00026000 0x000c6000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The flash starting at 0x000ec000 and ending at
|
||||||
|
* 0x000f3fff is reserved for use by the application.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Storage partition will be used by FCB/LittleFS/NVS
|
||||||
|
* if enabled.
|
||||||
|
*/
|
||||||
|
storage_partition: partition@ec000 {
|
||||||
|
label = "storage";
|
||||||
|
reg = <0x000ec000 0x00008000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
boot_partition: partition@f4000 {
|
||||||
|
label = "adafruit_boot";
|
||||||
|
reg = <0x000f4000 0x0000c000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
67
app/boards/arm/corneish_zen/corneish_zen.keymap
Normal file
67
app/boards/arm/corneish_zen/corneish_zen.keymap
Normal file
|
@ -0,0 +1,67 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <behaviors.dtsi>
|
||||||
|
#include <dt-bindings/zmk/keys.h>
|
||||||
|
#include <dt-bindings/zmk/bt.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
chosen {
|
||||||
|
zmk,matrix_transform = &default_transform;
|
||||||
|
//zmk,matrix_transform = &five_column_transform;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
/ {
|
||||||
|
keymap {
|
||||||
|
compatible = "zmk,keymap";
|
||||||
|
|
||||||
|
default_layer {
|
||||||
|
label = "QWERTY";
|
||||||
|
// -----------------------------------------------------------------------------------------
|
||||||
|
// | TAB | Q | W | E | R | T | | Y | U | I | O | P | BKSP |
|
||||||
|
// | CTRL | A | S | D | F | G | | H | J | K | L | ; | ' |
|
||||||
|
// | SHFT | Z | X | C | V | B | | N | M | , | . | / | ESC |
|
||||||
|
// | GUI | LWR | SPC | | ENT | RSE | ALT |
|
||||||
|
bindings = <
|
||||||
|
&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp BSPC
|
||||||
|
&kp LCTRL &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT
|
||||||
|
&kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp ESC
|
||||||
|
&kp LGUI &mo 1 &kp SPACE &kp RET &mo 2 &kp RALT
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
lower_layer {
|
||||||
|
label = "NUMBER";
|
||||||
|
// -----------------------------------------------------------------------------------------
|
||||||
|
// | TAB | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BKSP |
|
||||||
|
// | BTCLR| BT1 | BT2 | BT3 | BT4 | BT5 | | LFT | DWN | UP | RGT | | |
|
||||||
|
// | SHFT | | | | | | | | | | | | |
|
||||||
|
// | GUI | | SPC | | ENT | | ALT |
|
||||||
|
bindings = <
|
||||||
|
&kp TAB &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp BSPC
|
||||||
|
&bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &kp LEFT &kp DOWN &kp UP &kp RIGHT &trans &trans
|
||||||
|
&kp LSHFT &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
|
||||||
|
&kp LGUI &trans &kp SPACE &kp RET &trans &kp RALT
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
|
raise_layer {
|
||||||
|
label = "SYMBOL";
|
||||||
|
// -----------------------------------------------------------------------------------------
|
||||||
|
// | TAB | ! | @ | # | $ | % | | ^ | & | * | ( | ) | BKSP |
|
||||||
|
// | CTRL | | | | | | | - | = | [ | ] | \ | ` |
|
||||||
|
// | SHFT | | | | | | | _ | + | { | } | "|" | ~ |
|
||||||
|
// | GUI | | SPC | | ENT | | ALT |
|
||||||
|
bindings = <
|
||||||
|
&kp TAB &kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &kp CARET &kp AMPS &kp KP_MULTIPLY &kp LPAR &kp RPAR &kp BSPC
|
||||||
|
&kp LCTRL &trans &trans &trans &trans &trans &kp MINUS &kp EQUAL &kp LBKT &kp RBKT &kp BSLH &kp GRAVE
|
||||||
|
&kp LSHFT &trans &trans &trans &trans &trans &kp UNDER &kp PLUS &kp LBRC &kp RBRC &kp PIPE &kp TILDE
|
||||||
|
&kp LGUI &trans &kp SPACE &kp RET &trans &kp RALT
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
20
app/boards/arm/corneish_zen/corneish_zen.yaml
Normal file
20
app/boards/arm/corneish_zen/corneish_zen.yaml
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
identifier: corne-ish_zen_v2
|
||||||
|
name: Corne-ish Zen v2
|
||||||
|
url: https://lowprokb.ca/collections/keyboards/products/corne-ish-zen
|
||||||
|
type: mcu
|
||||||
|
arch: arm
|
||||||
|
toolchain:
|
||||||
|
- zephyr
|
||||||
|
- gnuarmemb
|
||||||
|
- xtools
|
||||||
|
ram: 40
|
||||||
|
supported:
|
||||||
|
- adc
|
||||||
|
- usb_device
|
||||||
|
- ble
|
||||||
|
- ieee802154
|
||||||
|
- pwm
|
||||||
|
- watchdog
|
||||||
|
- gpio
|
||||||
|
- i2c
|
||||||
|
- spi
|
20
app/boards/arm/corneish_zen/corneish_zen_v2.yaml
Normal file
20
app/boards/arm/corneish_zen/corneish_zen_v2.yaml
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
identifier: corneish_zen_v2
|
||||||
|
name: Corne-ish Zen v2
|
||||||
|
type: keyboard
|
||||||
|
arch: arm
|
||||||
|
toolchain:
|
||||||
|
- zephyr
|
||||||
|
- gnuarmemb
|
||||||
|
- xtools
|
||||||
|
supported:
|
||||||
|
- gpio
|
||||||
|
- i2c
|
||||||
|
- counter
|
||||||
|
- spi
|
||||||
|
- usb_device
|
||||||
|
- lsm303dlhc
|
||||||
|
- nvs
|
||||||
|
- can
|
||||||
|
- kscan
|
||||||
|
- ble
|
||||||
|
- adc
|
15
app/boards/arm/corneish_zen/corneish_zen_v2.zmk.yml
Normal file
15
app/boards/arm/corneish_zen/corneish_zen_v2.zmk.yml
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
file_format: "1"
|
||||||
|
id: corneish_zen_v2
|
||||||
|
name: Corneish Zen v2
|
||||||
|
url: https://lowprokb.ca/collections/keyboards/products/corne-ish-zen
|
||||||
|
type: board
|
||||||
|
arch: arm
|
||||||
|
features:
|
||||||
|
- keys
|
||||||
|
- display
|
||||||
|
outputs:
|
||||||
|
- usb
|
||||||
|
- ble
|
||||||
|
siblings:
|
||||||
|
- corneish_zen_v2_left
|
||||||
|
- corneish_zen_v2_right
|
78
app/boards/arm/corneish_zen/corneish_zen_v2_left.dts
Normal file
78
app/boards/arm/corneish_zen/corneish_zen_v2_left.dts
Normal file
|
@ -0,0 +1,78 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "corneish_zen.dtsi"
|
||||||
|
|
||||||
|
/{
|
||||||
|
chosen {
|
||||||
|
zephyr,display = &epd;
|
||||||
|
zmk,battery = &vbatt;
|
||||||
|
};
|
||||||
|
|
||||||
|
kscan0: kscan {
|
||||||
|
compatible = "zmk,kscan-gpio-matrix";
|
||||||
|
label = "KSCAN";
|
||||||
|
|
||||||
|
diode-direction = "col2row";
|
||||||
|
row-gpios
|
||||||
|
= <&gpio0 19 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
, <&gpio0 4 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
, <&gpio0 31 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
, <&gpio0 30 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
;
|
||||||
|
|
||||||
|
col-gpios
|
||||||
|
= <&gpio0 21 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpio0 23 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpio0 12 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpio1 9 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpio0 7 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpio0 5 GPIO_ACTIVE_HIGH>
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
blue_led: led_0 {
|
||||||
|
gpios = <&gpio0 16 GPIO_ACTIVE_HIGH>;
|
||||||
|
label = "Blue LED";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vbatt: vbatt {
|
||||||
|
compatible = "zmk,battery-voltage-divider";
|
||||||
|
label = "BATTERY";
|
||||||
|
io-channels = <&adc 0>;
|
||||||
|
output-ohms = <1960000>;
|
||||||
|
full-ohms = <(1960000 + 810000)>;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
&spi0 {
|
||||||
|
status = "okay";
|
||||||
|
compatible = "nordic,nrf-spim";
|
||||||
|
sck-pin = <27>;
|
||||||
|
mosi-pin = <8>;
|
||||||
|
miso-pin = <22>;
|
||||||
|
cs-gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
|
||||||
|
|
||||||
|
epd: il0323@0 {
|
||||||
|
compatible = "gooddisplay,il0323";
|
||||||
|
reg = <0>;
|
||||||
|
label = "DISPLAY";
|
||||||
|
width = <80>;
|
||||||
|
height = <128>;
|
||||||
|
spi-max-frequency = <4000000>;
|
||||||
|
dc-gpios = <&gpio0 11 GPIO_ACTIVE_LOW>;
|
||||||
|
busy-gpios = <&gpio0 25 GPIO_ACTIVE_LOW>;
|
||||||
|
reset-gpios = <&gpio0 24 GPIO_ACTIVE_LOW>;
|
||||||
|
pwr = [03 00 26 26];
|
||||||
|
cdi = <0xd2>;
|
||||||
|
tcon = <0x22>;
|
||||||
|
};
|
||||||
|
};
|
91
app/boards/arm/corneish_zen/corneish_zen_v2_left_defconfig
Normal file
91
app/boards/arm/corneish_zen/corneish_zen_v2_left_defconfig
Normal file
|
@ -0,0 +1,91 @@
|
||||||
|
#
|
||||||
|
# Copyright (c) 2022 Darryl deHaan
|
||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
#
|
||||||
|
|
||||||
|
CONFIG_SOC_SERIES_NRF52X=y
|
||||||
|
CONFIG_SOC_NRF52840_QIAA=y
|
||||||
|
CONFIG_BOARD_CORNEISH_ZEN_V2_LEFT=y
|
||||||
|
CONFIG_ZMK_SPLIT=y
|
||||||
|
CONFIG_ZMK_SLEEP=y
|
||||||
|
CONFIG_ZMK_DISPLAY=y
|
||||||
|
|
||||||
|
# Enable MPU
|
||||||
|
CONFIG_ARM_MPU=y
|
||||||
|
|
||||||
|
# enable GPIO
|
||||||
|
CONFIG_GPIO=y
|
||||||
|
|
||||||
|
# Enable SPI
|
||||||
|
CONFIG_SPI=y
|
||||||
|
CONFIG_SPI_NRFX=y
|
||||||
|
|
||||||
|
# Enable writing to flash
|
||||||
|
CONFIG_USE_DT_CODE_PARTITION=y
|
||||||
|
CONFIG_BUILD_OUTPUT_UF2=y
|
||||||
|
CONFIG_MPU_ALLOW_FLASH_WRITE=y
|
||||||
|
CONFIG_NVS=y
|
||||||
|
CONFIG_SETTINGS_NVS=y
|
||||||
|
CONFIG_FLASH=y
|
||||||
|
CONFIG_FLASH_PAGE_LAYOUT=y
|
||||||
|
CONFIG_FLASH_MAP=y
|
||||||
|
|
||||||
|
# Enable 32kHz crystal
|
||||||
|
CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y
|
||||||
|
CONFIG_CLOCK_CONTROL_NRF_K32SRC_30PPM=y
|
||||||
|
|
||||||
|
# enable display drivers
|
||||||
|
CONFIG_ZMK_DISPLAY_WORK_QUEUE_DEDICATED=y
|
||||||
|
CONFIG_ZMK_DISPLAY_DEDICATED_THREAD_STACK_SIZE=2048
|
||||||
|
CONFIG_SSD1306=n
|
||||||
|
CONFIG_IL0323=y
|
||||||
|
CONFIG_LVGL_BITS_PER_PIXEL=1
|
||||||
|
CONFIG_LVGL_COLOR_DEPTH_1=y
|
||||||
|
CONFIG_LVGL_DPI=145
|
||||||
|
CONFIG_LVGL_VDB_SIZE=100
|
||||||
|
CONFIG_LVGL_USE_THEME_MONO=y
|
||||||
|
CONFIG_LVGL_THEME_DEFAULT_COLOR_PRIMARY_RED=n
|
||||||
|
CONFIG_LVGL_THEME_DEFAULT_COLOR_SECONDARY_RED=n
|
||||||
|
CONFIG_LVGL_THEME_DEFAULT_COLOR_PRIMARY_BLACK=y
|
||||||
|
CONFIG_LVGL_THEME_DEFAULT_COLOR_SECONDARY_WHITE=y
|
||||||
|
CONFIG_LVGL_THEME_DEFAULT_FONT_SMALL_MONTSERRAT_16=y
|
||||||
|
CONFIG_LVGL_THEME_DEFAULT_FONT_NORMAL_MONTSERRAT_26=y
|
||||||
|
|
||||||
|
# custom status screens
|
||||||
|
CONFIG_ZMK_DISPLAY_STATUS_SCREEN_CUSTOM=y
|
||||||
|
CONFIG_ZMK_DISPLAY_STATUS_SCREEN_BUILT_IN=n
|
||||||
|
CONFIG_CUSTOM_WIDGET_BATTERY_STATUS=y
|
||||||
|
CONFIG_ZMK_WIDGET_BATTERY_STATUS=n
|
||||||
|
CONFIG_CUSTOM_WIDGET_OUTPUT_STATUS=y
|
||||||
|
CONFIG_ZMK_WIDGET_OUTPUT_STATUS=n
|
||||||
|
CONFIG_CUSTOM_WIDGET_LAYER_STATUS=y
|
||||||
|
CONFIG_ZMK_WIDGET_LAYER_STATUS=n
|
||||||
|
|
||||||
|
# Turn on logging, and set ZMK logging to debug output
|
||||||
|
#CONFIG_LOG=y
|
||||||
|
#CONFIG_ZMK_USB_LOGGING=y
|
||||||
|
#CONFIG_ZMK_LOG_LEVEL_DBG=y
|
||||||
|
#CONFIG_LOG_BUFFER_SIZE=65536
|
||||||
|
#CONFIG_LOG_STRDUP_BUF_COUNT=160
|
||||||
|
#CONFIG_I2C_LOG_LEVEL_DBG=y
|
||||||
|
#CONFIG_SPI_LOG_LEVEL_DBG=y
|
||||||
|
#CONFIG_DISPLAY_LOG_LEVEL_DBG=y
|
||||||
|
#CONFIG_LVGL_LOG_LEVEL_DBG=y
|
||||||
|
#CONFIG_LVGL_USE_DEBUG=y
|
||||||
|
#CONFIG_SENSOR_LOG_LEVEL_DBG=y
|
||||||
|
|
||||||
|
# Turn on USB CDC ACM device
|
||||||
|
CONFIG_USB_DEVICE_STACK=y
|
||||||
|
CONFIG_USB_CDC_ACM=y
|
||||||
|
CONFIG_USB_CDC_ACM_RINGBUF_SIZE=1024
|
||||||
|
|
||||||
|
# Enable serial console
|
||||||
|
CONFIG_SERIAL=y
|
||||||
|
CONFIG_CONSOLE=y
|
||||||
|
CONFIG_UART_INTERRUPT_DRIVEN=y
|
||||||
|
CONFIG_UART_LINE_CTRL=y
|
||||||
|
|
||||||
|
# Enable USB UART
|
||||||
|
CONFIG_UART_CONSOLE=y
|
||||||
|
|
||||||
|
|
86
app/boards/arm/corneish_zen/corneish_zen_v2_right.dts
Normal file
86
app/boards/arm/corneish_zen/corneish_zen_v2_right.dts
Normal file
|
@ -0,0 +1,86 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "corneish_zen.dtsi"
|
||||||
|
|
||||||
|
/{
|
||||||
|
chosen {
|
||||||
|
zephyr,display = &epd;
|
||||||
|
zmk,battery = &vbatt;
|
||||||
|
};
|
||||||
|
|
||||||
|
kscan0: kscan {
|
||||||
|
compatible = "zmk,kscan-gpio-matrix";
|
||||||
|
label = "KSCAN";
|
||||||
|
|
||||||
|
diode-direction = "col2row";
|
||||||
|
row-gpios
|
||||||
|
= <&gpio0 22 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
, <&gpio1 0 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
, <&gpio1 3 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
, <&gpio1 1 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
;
|
||||||
|
|
||||||
|
col-gpios
|
||||||
|
= <&gpio0 19 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpio0 21 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpio0 23 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpio0 12 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpio1 9 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpio0 7 GPIO_ACTIVE_HIGH>
|
||||||
|
;
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
blue_led: led_0 {
|
||||||
|
gpios = <&gpio0 26 GPIO_ACTIVE_HIGH>;
|
||||||
|
label = "Blue LED";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vbatt: vbatt {
|
||||||
|
compatible = "zmk,battery-voltage-divider";
|
||||||
|
label = "BATTERY";
|
||||||
|
io-channels = <&adc 0>;
|
||||||
|
output-ohms = <1960000>;
|
||||||
|
full-ohms = <(1960000 + 810000)>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&default_transform {
|
||||||
|
col-offset = <6>;
|
||||||
|
};
|
||||||
|
&five_column_transform {
|
||||||
|
col-offset = <6>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&spi0 {
|
||||||
|
status = "okay";
|
||||||
|
compatible = "nordic,nrf-spim";
|
||||||
|
sck-pin = <20>;
|
||||||
|
mosi-pin = <24>;
|
||||||
|
miso-pin = <27>;
|
||||||
|
cs-gpios = <&gpio0 17 GPIO_ACTIVE_LOW>;
|
||||||
|
|
||||||
|
epd: il0323@0 {
|
||||||
|
compatible = "gooddisplay,il0323";
|
||||||
|
reg = <0>;
|
||||||
|
label = "DISPLAY";
|
||||||
|
width = <80>;
|
||||||
|
height = <128>;
|
||||||
|
spi-max-frequency = <4000000>;
|
||||||
|
dc-gpios = <&gpio0 15 GPIO_ACTIVE_LOW>;
|
||||||
|
busy-gpios = <&gpio0 14 GPIO_ACTIVE_LOW>;
|
||||||
|
reset-gpios = <&gpio0 25 GPIO_ACTIVE_LOW>;
|
||||||
|
pwr = [03 00 26 26];
|
||||||
|
//softstart = [17 17 17 17];
|
||||||
|
cdi = <0xd2>;
|
||||||
|
tcon = <0x22>;
|
||||||
|
};
|
||||||
|
};
|
83
app/boards/arm/corneish_zen/corneish_zen_v2_right_defconfig
Normal file
83
app/boards/arm/corneish_zen/corneish_zen_v2_right_defconfig
Normal file
|
@ -0,0 +1,83 @@
|
||||||
|
#
|
||||||
|
# Copyright (c) 2022 Darryl deHaan
|
||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
#
|
||||||
|
|
||||||
|
CONFIG_SOC_SERIES_NRF52X=y
|
||||||
|
CONFIG_SOC_NRF52840_QIAA=y
|
||||||
|
CONFIG_BOARD_CORNEISH_ZEN_V2_RIGHT=y
|
||||||
|
CONFIG_ZMK_SPLIT=y
|
||||||
|
CONFIG_ZMK_SLEEP=y
|
||||||
|
CONFIG_ZMK_DISPLAY=y
|
||||||
|
|
||||||
|
# Enable MPU
|
||||||
|
CONFIG_ARM_MPU=y
|
||||||
|
|
||||||
|
# enable GPIO
|
||||||
|
CONFIG_GPIO=y
|
||||||
|
|
||||||
|
# Enable SPI
|
||||||
|
CONFIG_SPI=y
|
||||||
|
CONFIG_SPI_NRFX=y
|
||||||
|
|
||||||
|
# Enable writing to flash
|
||||||
|
CONFIG_USE_DT_CODE_PARTITION=y
|
||||||
|
CONFIG_BUILD_OUTPUT_UF2=y
|
||||||
|
CONFIG_MPU_ALLOW_FLASH_WRITE=y
|
||||||
|
CONFIG_NVS=y
|
||||||
|
CONFIG_SETTINGS_NVS=y
|
||||||
|
CONFIG_FLASH=y
|
||||||
|
CONFIG_FLASH_PAGE_LAYOUT=y
|
||||||
|
CONFIG_FLASH_MAP=y
|
||||||
|
|
||||||
|
# Enable 32kHz crystal
|
||||||
|
CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y
|
||||||
|
CONFIG_CLOCK_CONTROL_NRF_K32SRC_30PPM=y
|
||||||
|
|
||||||
|
# enable display drivers
|
||||||
|
CONFIG_ZMK_DISPLAY_WORK_QUEUE_DEDICATED=y
|
||||||
|
CONFIG_ZMK_DISPLAY_DEDICATED_THREAD_STACK_SIZE=2048
|
||||||
|
CONFIG_SSD1306=n
|
||||||
|
CONFIG_IL0323=y
|
||||||
|
CONFIG_LVGL_BITS_PER_PIXEL=1
|
||||||
|
CONFIG_LVGL_COLOR_DEPTH_1=y
|
||||||
|
CONFIG_LVGL_DPI=145
|
||||||
|
CONFIG_LVGL_VDB_SIZE=100
|
||||||
|
CONFIG_LVGL_USE_THEME_MONO=y
|
||||||
|
CONFIG_LVGL_THEME_DEFAULT_COLOR_PRIMARY_RED=n
|
||||||
|
CONFIG_LVGL_THEME_DEFAULT_COLOR_SECONDARY_RED=n
|
||||||
|
CONFIG_LVGL_THEME_DEFAULT_COLOR_PRIMARY_BLACK=y
|
||||||
|
CONFIG_LVGL_THEME_DEFAULT_COLOR_SECONDARY_WHITE=y
|
||||||
|
CONFIG_LVGL_THEME_DEFAULT_FONT_SMALL_MONTSERRAT_16=y
|
||||||
|
CONFIG_LVGL_THEME_DEFAULT_FONT_NORMAL_MONTSERRAT_26=y
|
||||||
|
|
||||||
|
# custom status screens
|
||||||
|
CONFIG_ZMK_DISPLAY_STATUS_SCREEN_CUSTOM=y
|
||||||
|
CONFIG_ZMK_DISPLAY_STATUS_SCREEN_BUILT_IN=n
|
||||||
|
CONFIG_CUSTOM_WIDGET_BATTERY_STATUS=y
|
||||||
|
CONFIG_ZMK_WIDGET_BATTERY_STATUS=n
|
||||||
|
CONFIG_CUSTOM_WIDGET_PERIPHERAL_STATUS=y
|
||||||
|
CONFIG_ZMK_WIDGET_PERIPHERAL_STATUS=n
|
||||||
|
|
||||||
|
# Turn on logging, and set ZMK logging to debug output
|
||||||
|
#CONFIG_LOG=y
|
||||||
|
#CONFIG_LOG_PROCESS_THREAD_STARTUP_DELAY_MS=8000
|
||||||
|
#CONFIG_ZMK_USB_LOGGING=y
|
||||||
|
#CONFIG_ZMK_LOG_LEVEL_DBG=y
|
||||||
|
#CONFIG_LOG_BUFFER_SIZE=20000
|
||||||
|
#CONFIG_LOG_STRDUP_BUF_COUNT=60
|
||||||
|
#CONFIG_I2C_LOG_LEVEL_DBG=y
|
||||||
|
#CONFIG_SPI_LOG_LEVEL_DBG=y
|
||||||
|
#CONFIG_DISPLAY_LOG_LEVEL_DBG=y
|
||||||
|
#CONFIG_LVGL_LOG_LEVEL_DBG=y
|
||||||
|
#CONFIG_LVGL_USE_DEBUG=y
|
||||||
|
#CONFIG_SENSOR_LOG_LEVEL_DBG=y
|
||||||
|
|
||||||
|
# Enable serial console
|
||||||
|
CONFIG_SERIAL=y
|
||||||
|
CONFIG_CONSOLE=y
|
||||||
|
CONFIG_UART_INTERRUPT_DRIVEN=y
|
||||||
|
CONFIG_UART_LINE_CTRL=y
|
||||||
|
|
||||||
|
# Enable USB UART
|
||||||
|
CONFIG_UART_CONSOLE=y
|
85
app/boards/arm/corneish_zen/custom_status_screen.c
Normal file
85
app/boards/arm/corneish_zen/custom_status_screen.c
Normal file
|
@ -0,0 +1,85 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "widgets/battery_status.h"
|
||||||
|
#include "widgets/peripheral_status.h"
|
||||||
|
#include "widgets/output_status.h"
|
||||||
|
#include "widgets/layer_status.h"
|
||||||
|
#include "custom_status_screen.h"
|
||||||
|
|
||||||
|
#include <logging/log.h>
|
||||||
|
LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
|
||||||
|
|
||||||
|
LV_IMG_DECLARE(zenlogo);
|
||||||
|
LV_IMG_DECLARE(layers2);
|
||||||
|
|
||||||
|
#if IS_ENABLED(CONFIG_CUSTOM_WIDGET_BATTERY_STATUS)
|
||||||
|
static struct zmk_widget_battery_status battery_status_widget;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if IS_ENABLED(CONFIG_CUSTOM_WIDGET_OUTPUT_STATUS)
|
||||||
|
static struct zmk_widget_output_status output_status_widget;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if IS_ENABLED(CONFIG_CUSTOM_WIDGET_PERIPHERAL_STATUS)
|
||||||
|
static struct zmk_widget_peripheral_status peripheral_status_widget;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if IS_ENABLED(CONFIG_CUSTOM_WIDGET_LAYER_STATUS)
|
||||||
|
static struct zmk_widget_layer_status layer_status_widget;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
lv_obj_t *zmk_display_status_screen() {
|
||||||
|
|
||||||
|
lv_obj_t *screen;
|
||||||
|
screen = lv_obj_create(NULL, NULL);
|
||||||
|
|
||||||
|
#if IS_ENABLED(CONFIG_CUSTOM_WIDGET_BATTERY_STATUS)
|
||||||
|
zmk_widget_battery_status_init(&battery_status_widget, screen);
|
||||||
|
lv_obj_align(zmk_widget_battery_status_obj(&battery_status_widget), NULL, LV_ALIGN_IN_TOP_MID,
|
||||||
|
0, 2);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if IS_ENABLED(CONFIG_CUSTOM_WIDGET_OUTPUT_STATUS)
|
||||||
|
zmk_widget_output_status_init(&output_status_widget, screen);
|
||||||
|
lv_obj_align(zmk_widget_output_status_obj(&output_status_widget), NULL, LV_ALIGN_IN_TOP_MID, 0,
|
||||||
|
41);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if IS_ENABLED(CONFIG_CUSTOM_WIDGET_PERIPHERAL_STATUS)
|
||||||
|
zmk_widget_peripheral_status_init(&peripheral_status_widget, screen);
|
||||||
|
lv_obj_align(zmk_widget_peripheral_status_obj(&peripheral_status_widget), NULL,
|
||||||
|
LV_ALIGN_IN_TOP_MID, 0, 41);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if IS_ENABLED(CONFIG_CUSTOM_WIDGET_LAYER_STATUS)
|
||||||
|
zmk_widget_layer_status_init(&layer_status_widget, screen);
|
||||||
|
lv_obj_set_style_local_text_font(zmk_widget_layer_status_obj(&layer_status_widget),
|
||||||
|
LV_LABEL_PART_MAIN, LV_STATE_DEFAULT,
|
||||||
|
lv_theme_get_font_small());
|
||||||
|
lv_obj_align(zmk_widget_layer_status_obj(&layer_status_widget), NULL, LV_ALIGN_IN_BOTTOM_MID, 0,
|
||||||
|
-5);
|
||||||
|
|
||||||
|
lv_obj_t *LayersHeading;
|
||||||
|
LayersHeading = lv_img_create(screen, NULL);
|
||||||
|
lv_obj_align(LayersHeading, NULL, LV_ALIGN_IN_BOTTOM_MID, 8, 5);
|
||||||
|
lv_img_set_src(LayersHeading, &layers2);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if !IS_ENABLED(CONFIG_ZMK_SPLIT_ROLE_CENTRAL)
|
||||||
|
lv_obj_t *zenlogo_icon;
|
||||||
|
zenlogo_icon = lv_img_create(screen, NULL);
|
||||||
|
lv_img_set_src(zenlogo_icon, &zenlogo);
|
||||||
|
lv_obj_align(zenlogo_icon, NULL, LV_ALIGN_IN_BOTTOM_MID, 2, -5);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// lv_task_handler();
|
||||||
|
lv_refr_now(NULL);
|
||||||
|
// display_blanking_off(display_dev);
|
||||||
|
|
||||||
|
return screen;
|
||||||
|
}
|
12
app/boards/arm/corneish_zen/custom_status_screen.h
Normal file
12
app/boards/arm/corneish_zen/custom_status_screen.h
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
lv_obj_t *zmk_display_status_screen();
|
97
app/boards/arm/corneish_zen/widgets/battery_status.c
Normal file
97
app/boards/arm/corneish_zen/widgets/battery_status.c
Normal file
|
@ -0,0 +1,97 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <kernel.h>
|
||||||
|
#include <bluetooth/services/bas.h>
|
||||||
|
|
||||||
|
#include <logging/log.h>
|
||||||
|
LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
|
||||||
|
|
||||||
|
#include <zmk/display.h>
|
||||||
|
#include "battery_status.h"
|
||||||
|
#include <src/lv_themes/lv_theme.h>
|
||||||
|
#include <zmk/usb.h>
|
||||||
|
#include <zmk/events/usb_conn_state_changed.h>
|
||||||
|
#include <zmk/event_manager.h>
|
||||||
|
#include <zmk/events/battery_state_changed.h>
|
||||||
|
|
||||||
|
static sys_slist_t widgets = SYS_SLIST_STATIC_INIT(&widgets);
|
||||||
|
|
||||||
|
struct battery_status_state {
|
||||||
|
uint8_t level;
|
||||||
|
#if IS_ENABLED(CONFIG_USB_DEVICE_STACK)
|
||||||
|
bool usb_present;
|
||||||
|
#endif
|
||||||
|
};
|
||||||
|
|
||||||
|
LV_IMG_DECLARE(batt_100);
|
||||||
|
LV_IMG_DECLARE(batt_100_chg);
|
||||||
|
LV_IMG_DECLARE(batt_75);
|
||||||
|
LV_IMG_DECLARE(batt_75_chg);
|
||||||
|
LV_IMG_DECLARE(batt_50);
|
||||||
|
LV_IMG_DECLARE(batt_50_chg);
|
||||||
|
LV_IMG_DECLARE(batt_25);
|
||||||
|
LV_IMG_DECLARE(batt_25_chg);
|
||||||
|
LV_IMG_DECLARE(batt_5);
|
||||||
|
LV_IMG_DECLARE(batt_5_chg);
|
||||||
|
LV_IMG_DECLARE(batt_0);
|
||||||
|
LV_IMG_DECLARE(batt_0_chg);
|
||||||
|
|
||||||
|
static void set_battery_symbol(lv_obj_t *icon, struct battery_status_state state) {
|
||||||
|
uint8_t level = state.level;
|
||||||
|
|
||||||
|
#if IS_ENABLED(CONFIG_USB_DEVICE_STACK)
|
||||||
|
if (level > 95) {
|
||||||
|
lv_img_set_src(icon, state.usb_present ? &batt_100_chg : &batt_100);
|
||||||
|
} else if (level > 74) {
|
||||||
|
lv_img_set_src(icon, state.usb_present ? &batt_75_chg : &batt_75);
|
||||||
|
} else if (level > 49) {
|
||||||
|
lv_img_set_src(icon, state.usb_present ? &batt_50_chg : &batt_50);
|
||||||
|
} else if (level > 24) {
|
||||||
|
lv_img_set_src(icon, state.usb_present ? &batt_25_chg : &batt_25);
|
||||||
|
} else if (level > 5) {
|
||||||
|
lv_img_set_src(icon, state.usb_present ? &batt_5_chg : &batt_5);
|
||||||
|
} else {
|
||||||
|
lv_img_set_src(icon, state.usb_present ? &batt_0_chg : &batt_0);
|
||||||
|
}
|
||||||
|
#endif /* IS_ENABLED(CONFIG_USB_DEVICE_STACK) */
|
||||||
|
}
|
||||||
|
|
||||||
|
void battery_status_update_cb(struct battery_status_state state) {
|
||||||
|
struct zmk_widget_battery_status *widget;
|
||||||
|
SYS_SLIST_FOR_EACH_CONTAINER(&widgets, widget, node) { set_battery_symbol(widget->obj, state); }
|
||||||
|
}
|
||||||
|
|
||||||
|
static struct battery_status_state battery_status_get_state(const zmk_event_t *eh) {
|
||||||
|
return (struct battery_status_state) {
|
||||||
|
.level = bt_bas_get_battery_level(),
|
||||||
|
#if IS_ENABLED(CONFIG_USB_DEVICE_STACK)
|
||||||
|
.usb_present = zmk_usb_is_powered(),
|
||||||
|
#endif /* IS_ENABLED(CONFIG_USB_DEVICE_STACK) */
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
ZMK_DISPLAY_WIDGET_LISTENER(widget_battery_status, struct battery_status_state,
|
||||||
|
battery_status_update_cb, battery_status_get_state)
|
||||||
|
|
||||||
|
ZMK_SUBSCRIPTION(widget_battery_status, zmk_battery_state_changed);
|
||||||
|
#if IS_ENABLED(CONFIG_USB_DEVICE_STACK)
|
||||||
|
ZMK_SUBSCRIPTION(widget_battery_status, zmk_usb_conn_state_changed);
|
||||||
|
#endif /* IS_ENABLED(CONFIG_USB_DEVICE_STACK) */
|
||||||
|
|
||||||
|
int zmk_widget_battery_status_init(struct zmk_widget_battery_status *widget, lv_obj_t *parent) {
|
||||||
|
widget->obj = lv_img_create(parent, NULL);
|
||||||
|
|
||||||
|
sys_slist_append(&widgets, &widget->node);
|
||||||
|
widget_battery_status_init();
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
lv_obj_t *zmk_widget_battery_status_obj(struct zmk_widget_battery_status *widget) {
|
||||||
|
return widget->obj;
|
||||||
|
}
|
20
app/boards/arm/corneish_zen/widgets/battery_status.h
Normal file
20
app/boards/arm/corneish_zen/widgets/battery_status.h
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#include <kernel.h>
|
||||||
|
|
||||||
|
struct zmk_widget_battery_status {
|
||||||
|
sys_snode_t node;
|
||||||
|
lv_obj_t *obj;
|
||||||
|
};
|
||||||
|
|
||||||
|
int zmk_widget_battery_status_init(struct zmk_widget_battery_status *widget, lv_obj_t *parent);
|
||||||
|
lv_obj_t *zmk_widget_battery_status_obj(struct zmk_widget_battery_status *widget);
|
4
app/boards/arm/corneish_zen/widgets/icons/CMakeLists.txt
Normal file
4
app/boards/arm/corneish_zen/widgets/icons/CMakeLists.txt
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
#
|
||||||
|
# Copyright (c) 2022 Darryl deHaan
|
||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
#
|
41
app/boards/arm/corneish_zen/widgets/icons/USB_connected.c
Normal file
41
app/boards/arm/corneish_zen/widgets/icons/USB_connected.c
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_USB_CONNECTED
|
||||||
|
#define LV_ATTRIBUTE_IMG_USB_CONNECTED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_USB_CONNECTED uint8_t USB_connected_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xc0, 0x00, 0x3f,
|
||||||
|
0xff, 0xff, 0xc0, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x01, 0xff, 0xff, 0xff, 0x80, 0x03, 0xff, 0xff,
|
||||||
|
0xff, 0xfe, 0x07, 0xff, 0xff, 0xff, 0xff, 0x07, 0x1e, 0x30, 0x38, 0x07, 0x0f, 0x1c, 0x20, 0x38,
|
||||||
|
0x07, 0x0f, 0x1c, 0x47, 0x10, 0xc3, 0x3e, 0x1c, 0x43, 0xf1, 0xc7, 0x7e, 0x3c, 0x60, 0x70, 0x0e,
|
||||||
|
0x7e, 0x3c, 0x70, 0x30, 0x0e, 0x7e, 0x38, 0xfc, 0x33, 0xc7, 0xfe, 0x18, 0x8f, 0x23, 0x87, 0x0e,
|
||||||
|
0x00, 0xc6, 0x20, 0x07, 0x0f, 0x01, 0xe0, 0x60, 0x0e, 0x0f, 0x87, 0xf0, 0xe0, 0x3e, 0x07, 0xff,
|
||||||
|
0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x03, 0xff, 0xff, 0xfe, 0x00, 0x01, 0xff, 0xff,
|
||||||
|
0xfc, 0x00, 0x00, 0x7f, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t USB_connected = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 40,
|
||||||
|
.header.h = 31,
|
||||||
|
.data_size = 164,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = USB_connected_map,
|
||||||
|
};
|
43
app/boards/arm/corneish_zen/widgets/icons/batt_0.c
Normal file
43
app/boards/arm/corneish_zen/widgets/icons/batt_0.c
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BATT_0
|
||||||
|
#define LV_ATTRIBUTE_IMG_BATT_0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_0 uint8_t
|
||||||
|
batt_0_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
|
||||||
|
0x00, 0x01, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x00, 0x7f, 0xfd, 0xff, 0x7f, 0xf8,
|
||||||
|
0xff, 0xfd, 0xff, 0x7f, 0xfc, 0xff, 0xfd, 0xff, 0x7f, 0xfc, 0xff, 0xfc, 0xfe, 0x7f, 0xfc,
|
||||||
|
0xf0, 0x00, 0xfe, 0x00, 0x3f, 0xf0, 0x00, 0xfe, 0x00, 0x3f, 0xf0, 0x00, 0xfe, 0x00, 0x3f,
|
||||||
|
0xf0, 0x00, 0xfe, 0x00, 0x3f, 0xf0, 0x00, 0xfe, 0x00, 0x0f, 0xf0, 0x00, 0x7c, 0x00, 0x0f,
|
||||||
|
0xf0, 0x00, 0x7c, 0x00, 0x0f, 0xf0, 0x00, 0x7c, 0x00, 0x0f, 0xf0, 0x00, 0x7c, 0x00, 0x3f,
|
||||||
|
0xf0, 0x00, 0x7c, 0x00, 0x3f, 0xf0, 0x00, 0x7c, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f,
|
||||||
|
0xff, 0xff, 0x01, 0xff, 0xfc, 0xff, 0xff, 0x01, 0xff, 0xfc, 0xff, 0xfe, 0x7c, 0xff, 0xfc,
|
||||||
|
0x7f, 0xfc, 0xfe, 0x7f, 0xf8, 0x00, 0x01, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x00,
|
||||||
|
0x00, 0x01, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x7c, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t batt_0 = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 40,
|
||||||
|
.header.h = 31,
|
||||||
|
.data_size = 163,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = batt_0_map,
|
||||||
|
};
|
43
app/boards/arm/corneish_zen/widgets/icons/batt_0_chg.c
Normal file
43
app/boards/arm/corneish_zen/widgets/icons/batt_0_chg.c
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BATT_0_CHG
|
||||||
|
#define LV_ATTRIBUTE_IMG_BATT_0_CHG
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_0_CHG uint8_t
|
||||||
|
batt_0_chg_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00,
|
||||||
|
0x00, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x7f, 0xff, 0xf7, 0xbf, 0xf8,
|
||||||
|
0xff, 0xff, 0xef, 0xbf, 0xfc, 0xff, 0xff, 0xdf, 0x7f, 0xfc, 0xff, 0xff, 0xbf, 0x7f, 0xfc,
|
||||||
|
0xf0, 0x00, 0x7e, 0x00, 0x3f, 0xf0, 0x00, 0xfe, 0x00, 0x3f, 0xf0, 0x01, 0xfe, 0x00, 0x3f,
|
||||||
|
0xf0, 0x03, 0xfc, 0x00, 0x3f, 0xf0, 0x07, 0xfc, 0x00, 0x0f, 0xf0, 0x0f, 0xff, 0xe0, 0x0f,
|
||||||
|
0xf0, 0x1f, 0xff, 0xc0, 0x0f, 0xf0, 0x00, 0x7f, 0x80, 0x0f, 0xf0, 0x00, 0x7f, 0x00, 0x3f,
|
||||||
|
0xf0, 0x00, 0xfe, 0x00, 0x3f, 0xf0, 0x00, 0xfc, 0x00, 0x3f, 0xf0, 0x01, 0xf8, 0x00, 0x3f,
|
||||||
|
0xff, 0xfd, 0xf7, 0xff, 0xfc, 0xff, 0xfb, 0xef, 0xff, 0xfc, 0xff, 0xfb, 0xdf, 0xff, 0xfc,
|
||||||
|
0x7f, 0xfb, 0xbf, 0xff, 0xf8, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x10, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t batt_0_chg = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 40,
|
||||||
|
.header.h = 31,
|
||||||
|
.data_size = 163,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = batt_0_chg_map,
|
||||||
|
};
|
43
app/boards/arm/corneish_zen/widgets/icons/batt_100.c
Normal file
43
app/boards/arm/corneish_zen/widgets/icons/batt_100.c
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BATT_100
|
||||||
|
#define LV_ATTRIBUTE_IMG_BATT_100
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_100 uint8_t
|
||||||
|
batt_100_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xf8,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0xf0, 0x00, 0x00, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xf3, 0xff, 0xff, 0xff, 0x3f,
|
||||||
|
0xf3, 0xff, 0xff, 0xff, 0x3f, 0xf3, 0xff, 0xff, 0xff, 0x0f, 0xf3, 0xff, 0xff, 0xff, 0x0f,
|
||||||
|
0xf3, 0xff, 0xff, 0xff, 0x0f, 0xf3, 0xff, 0xff, 0xff, 0x0f, 0xf3, 0xff, 0xff, 0xff, 0x3f,
|
||||||
|
0xf3, 0xff, 0xff, 0xff, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0x7f, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t batt_100 = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 40,
|
||||||
|
.header.h = 31,
|
||||||
|
.data_size = 163,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = batt_100_map,
|
||||||
|
};
|
43
app/boards/arm/corneish_zen/widgets/icons/batt_100_chg.c
Normal file
43
app/boards/arm/corneish_zen/widgets/icons/batt_100_chg.c
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BATT_100_CHG
|
||||||
|
#define LV_ATTRIBUTE_IMG_BATT_100_CHG
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_100_CHG uint8_t
|
||||||
|
batt_100_chg_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00,
|
||||||
|
0x00, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x7f, 0xff, 0xf7, 0xbf, 0xf8,
|
||||||
|
0xff, 0xff, 0xef, 0xbf, 0xfc, 0xff, 0xff, 0xdf, 0x7f, 0xfc, 0xff, 0xff, 0xbf, 0x7f, 0xfc,
|
||||||
|
0xf0, 0x00, 0x7e, 0x00, 0x3f, 0xf0, 0x00, 0xfe, 0x00, 0x3f, 0xf3, 0xfd, 0xfe, 0xff, 0x3f,
|
||||||
|
0xf3, 0xfb, 0xfd, 0xff, 0x3f, 0xf3, 0xf7, 0xfc, 0x07, 0x0f, 0xf3, 0xef, 0xff, 0xef, 0x0f,
|
||||||
|
0xf3, 0xdf, 0xff, 0xdf, 0x0f, 0xf3, 0x80, 0x7f, 0xbf, 0x0f, 0xf3, 0xff, 0x7f, 0x7f, 0x3f,
|
||||||
|
0xf3, 0xfe, 0xfe, 0xff, 0x3f, 0xf0, 0x00, 0xfc, 0x00, 0x3f, 0xf0, 0x01, 0xf8, 0x00, 0x3f,
|
||||||
|
0xff, 0xfd, 0xf7, 0xff, 0xfc, 0xff, 0xfb, 0xef, 0xff, 0xfc, 0xff, 0xfb, 0xdf, 0xff, 0xfc,
|
||||||
|
0x7f, 0xfb, 0xbf, 0xff, 0xf8, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x10, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t batt_100_chg = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 40,
|
||||||
|
.header.h = 31,
|
||||||
|
.data_size = 163,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = batt_100_chg_map,
|
||||||
|
};
|
43
app/boards/arm/corneish_zen/widgets/icons/batt_25.c
Normal file
43
app/boards/arm/corneish_zen/widgets/icons/batt_25.c
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BATT_25
|
||||||
|
#define LV_ATTRIBUTE_IMG_BATT_25
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_25 uint8_t
|
||||||
|
batt_25_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xf8,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0xf0, 0x00, 0x00, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xf3, 0xfc, 0x00, 0x00, 0x3f,
|
||||||
|
0xf3, 0xfc, 0x00, 0x00, 0x3f, 0xf3, 0xfc, 0x00, 0x00, 0x0f, 0xf3, 0xfc, 0x00, 0x00, 0x0f,
|
||||||
|
0xf3, 0xfc, 0x00, 0x00, 0x0f, 0xf3, 0xfc, 0x00, 0x00, 0x0f, 0xf3, 0xfc, 0x00, 0x00, 0x3f,
|
||||||
|
0xf3, 0xfc, 0x00, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0x7f, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t batt_25 = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 40,
|
||||||
|
.header.h = 31,
|
||||||
|
.data_size = 163,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = batt_25_map,
|
||||||
|
};
|
43
app/boards/arm/corneish_zen/widgets/icons/batt_25_chg.c
Normal file
43
app/boards/arm/corneish_zen/widgets/icons/batt_25_chg.c
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BATT_25_CHG
|
||||||
|
#define LV_ATTRIBUTE_IMG_BATT_25_CHG
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_25_CHG uint8_t
|
||||||
|
batt_25_chg_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00,
|
||||||
|
0x00, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x7f, 0xff, 0xf7, 0xbf, 0xf8,
|
||||||
|
0xff, 0xff, 0xef, 0xbf, 0xfc, 0xff, 0xff, 0xdf, 0x7f, 0xfc, 0xff, 0xff, 0xbf, 0x7f, 0xfc,
|
||||||
|
0xf0, 0x00, 0x7e, 0x00, 0x3f, 0xf0, 0x00, 0xfe, 0x00, 0x3f, 0xf3, 0xf9, 0xfe, 0x00, 0x3f,
|
||||||
|
0xf3, 0xfb, 0xfc, 0x00, 0x3f, 0xf3, 0xf7, 0xfc, 0x00, 0x0f, 0xf3, 0xef, 0xff, 0xe0, 0x0f,
|
||||||
|
0xf3, 0xdf, 0xff, 0xc0, 0x0f, 0xf3, 0x80, 0x7f, 0x80, 0x0f, 0xf3, 0xf8, 0x7f, 0x00, 0x3f,
|
||||||
|
0xf3, 0xf8, 0xfe, 0x00, 0x3f, 0xf0, 0x00, 0xfc, 0x00, 0x3f, 0xf0, 0x01, 0xf8, 0x00, 0x3f,
|
||||||
|
0xff, 0xfd, 0xf7, 0xff, 0xfc, 0xff, 0xfb, 0xef, 0xff, 0xfc, 0xff, 0xfb, 0xdf, 0xff, 0xfc,
|
||||||
|
0x7f, 0xfb, 0xbf, 0xff, 0xf8, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x10, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t batt_25_chg = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 40,
|
||||||
|
.header.h = 31,
|
||||||
|
.data_size = 163,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = batt_25_chg_map,
|
||||||
|
};
|
43
app/boards/arm/corneish_zen/widgets/icons/batt_5.c
Normal file
43
app/boards/arm/corneish_zen/widgets/icons/batt_5.c
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BATT_5
|
||||||
|
#define LV_ATTRIBUTE_IMG_BATT_5
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_5 uint8_t
|
||||||
|
batt_5_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xf8,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0xf0, 0x00, 0x00, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xf3, 0x00, 0x00, 0x00, 0x3f,
|
||||||
|
0xf3, 0x00, 0x00, 0x00, 0x3f, 0xf3, 0x00, 0x00, 0x00, 0x0f, 0xf3, 0x00, 0x00, 0x00, 0x0f,
|
||||||
|
0xf3, 0x00, 0x00, 0x00, 0x0f, 0xf3, 0x00, 0x00, 0x00, 0x0f, 0xf3, 0x00, 0x00, 0x00, 0x3f,
|
||||||
|
0xf3, 0x00, 0x00, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0x7f, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t batt_5 = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 40,
|
||||||
|
.header.h = 31,
|
||||||
|
.data_size = 163,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = batt_5_map,
|
||||||
|
};
|
43
app/boards/arm/corneish_zen/widgets/icons/batt_50.c
Normal file
43
app/boards/arm/corneish_zen/widgets/icons/batt_50.c
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BATT_50
|
||||||
|
#define LV_ATTRIBUTE_IMG_BATT_50
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_50 uint8_t
|
||||||
|
batt_50_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xf8,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0xf0, 0x00, 0x00, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xf3, 0xff, 0xf0, 0x00, 0x3f,
|
||||||
|
0xf3, 0xff, 0xf0, 0x00, 0x3f, 0xf3, 0xff, 0xf0, 0x00, 0x0f, 0xf3, 0xff, 0xf0, 0x00, 0x0f,
|
||||||
|
0xf3, 0xff, 0xf0, 0x00, 0x0f, 0xf3, 0xff, 0xf0, 0x00, 0x0f, 0xf3, 0xff, 0xf0, 0x00, 0x3f,
|
||||||
|
0xf3, 0xff, 0xf0, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0x7f, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t batt_50 = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 40,
|
||||||
|
.header.h = 31,
|
||||||
|
.data_size = 163,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = batt_50_map,
|
||||||
|
};
|
43
app/boards/arm/corneish_zen/widgets/icons/batt_50_chg.c
Normal file
43
app/boards/arm/corneish_zen/widgets/icons/batt_50_chg.c
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BATT_50_CHG
|
||||||
|
#define LV_ATTRIBUTE_IMG_BATT_50_CHG
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_50_CHG uint8_t
|
||||||
|
batt_50_chg_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00,
|
||||||
|
0x00, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x7f, 0xff, 0xf7, 0xbf, 0xf8,
|
||||||
|
0xff, 0xff, 0xef, 0xbf, 0xfc, 0xff, 0xff, 0xdf, 0x7f, 0xfc, 0xff, 0xff, 0xbf, 0x7f, 0xfc,
|
||||||
|
0xf0, 0x00, 0x7e, 0x00, 0x3f, 0xf0, 0x00, 0xfe, 0x00, 0x3f, 0xf3, 0xfd, 0xfe, 0x00, 0x3f,
|
||||||
|
0xf3, 0xfb, 0xfc, 0x00, 0x3f, 0xf3, 0xf7, 0xfc, 0x00, 0x0f, 0xf3, 0xef, 0xff, 0xe0, 0x0f,
|
||||||
|
0xf3, 0xdf, 0xff, 0xc0, 0x0f, 0xf3, 0x80, 0x7f, 0x80, 0x0f, 0xf3, 0xff, 0x7f, 0x00, 0x3f,
|
||||||
|
0xf3, 0xfe, 0xfe, 0x00, 0x3f, 0xf0, 0x00, 0xfc, 0x00, 0x3f, 0xf0, 0x01, 0xf8, 0x00, 0x3f,
|
||||||
|
0xff, 0xfd, 0xf7, 0xff, 0xfc, 0xff, 0xfb, 0xef, 0xff, 0xfc, 0xff, 0xfb, 0xdf, 0xff, 0xfc,
|
||||||
|
0x7f, 0xfb, 0xbf, 0xff, 0xf8, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x10, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t batt_50_chg = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 40,
|
||||||
|
.header.h = 31,
|
||||||
|
.data_size = 163,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = batt_50_chg_map,
|
||||||
|
};
|
43
app/boards/arm/corneish_zen/widgets/icons/batt_5_chg.c
Normal file
43
app/boards/arm/corneish_zen/widgets/icons/batt_5_chg.c
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BATT_5_CHG
|
||||||
|
#define LV_ATTRIBUTE_IMG_BATT_5_CHG
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_5_CHG uint8_t
|
||||||
|
batt_5_chg_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00,
|
||||||
|
0x00, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x7f, 0xff, 0xf7, 0xbf, 0xf8,
|
||||||
|
0xff, 0xff, 0xef, 0xbf, 0xfc, 0xff, 0xff, 0xdf, 0x7f, 0xfc, 0xff, 0xff, 0xbf, 0x7f, 0xfc,
|
||||||
|
0xf0, 0x00, 0x7e, 0x00, 0x3f, 0xf0, 0x00, 0xfe, 0x00, 0x3f, 0xf3, 0x01, 0xfe, 0x00, 0x3f,
|
||||||
|
0xf3, 0x03, 0xfc, 0x00, 0x3f, 0xf3, 0x07, 0xfc, 0x00, 0x0f, 0xf3, 0x0f, 0xff, 0xe0, 0x0f,
|
||||||
|
0xf3, 0x1f, 0xff, 0xc0, 0x0f, 0xf3, 0x00, 0x7f, 0x80, 0x0f, 0xf3, 0x00, 0x7f, 0x00, 0x3f,
|
||||||
|
0xf3, 0x00, 0xfe, 0x00, 0x3f, 0xf0, 0x00, 0xfc, 0x00, 0x3f, 0xf0, 0x01, 0xf8, 0x00, 0x3f,
|
||||||
|
0xff, 0xfd, 0xf7, 0xff, 0xfc, 0xff, 0xfb, 0xef, 0xff, 0xfc, 0xff, 0xfb, 0xdf, 0xff, 0xfc,
|
||||||
|
0x7f, 0xfb, 0xbf, 0xff, 0xf8, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x10, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t batt_5_chg = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 40,
|
||||||
|
.header.h = 31,
|
||||||
|
.data_size = 163,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = batt_5_chg_map,
|
||||||
|
};
|
43
app/boards/arm/corneish_zen/widgets/icons/batt_75.c
Normal file
43
app/boards/arm/corneish_zen/widgets/icons/batt_75.c
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BATT_75
|
||||||
|
#define LV_ATTRIBUTE_IMG_BATT_75
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_75 uint8_t
|
||||||
|
batt_75_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xf8,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0xf0, 0x00, 0x00, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xf3, 0xff, 0xff, 0xe0, 0x3f,
|
||||||
|
0xf3, 0xff, 0xff, 0xe0, 0x3f, 0xf3, 0xff, 0xff, 0xe0, 0x0f, 0xf3, 0xff, 0xff, 0xe0, 0x0f,
|
||||||
|
0xf3, 0xff, 0xff, 0xe0, 0x0f, 0xf3, 0xff, 0xff, 0xe0, 0x0f, 0xf3, 0xff, 0xff, 0xe0, 0x3f,
|
||||||
|
0xf3, 0xff, 0xff, 0xe0, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0x7f, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t batt_75 = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 40,
|
||||||
|
.header.h = 31,
|
||||||
|
.data_size = 163,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = batt_75_map,
|
||||||
|
};
|
43
app/boards/arm/corneish_zen/widgets/icons/batt_75_chg.c
Normal file
43
app/boards/arm/corneish_zen/widgets/icons/batt_75_chg.c
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BATT_75_CHG
|
||||||
|
#define LV_ATTRIBUTE_IMG_BATT_75_CHG
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_75_CHG uint8_t
|
||||||
|
batt_75_chg_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00,
|
||||||
|
0x00, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x7f, 0xff, 0xf7, 0xbf, 0xf8,
|
||||||
|
0xff, 0xff, 0xef, 0xbf, 0xfc, 0xff, 0xff, 0xdf, 0x7f, 0xfc, 0xff, 0xff, 0xbf, 0x7f, 0xfc,
|
||||||
|
0xf0, 0x00, 0x7e, 0x00, 0x3f, 0xf0, 0x00, 0xfe, 0x00, 0x3f, 0xf3, 0xfd, 0xfe, 0xe0, 0x3f,
|
||||||
|
0xf3, 0xfb, 0xfd, 0xe0, 0x3f, 0xf3, 0xf7, 0xfc, 0x00, 0x0f, 0xf3, 0xef, 0xff, 0xe0, 0x0f,
|
||||||
|
0xf3, 0xdf, 0xff, 0xc0, 0x0f, 0xf3, 0x80, 0x7f, 0xa0, 0x0f, 0xf3, 0xff, 0x7f, 0x60, 0x3f,
|
||||||
|
0xf3, 0xfe, 0xfe, 0xe0, 0x3f, 0xf0, 0x00, 0xfc, 0x00, 0x3f, 0xf0, 0x01, 0xf8, 0x00, 0x3f,
|
||||||
|
0xff, 0xfd, 0xf7, 0xff, 0xfc, 0xff, 0xfb, 0xef, 0xff, 0xfc, 0xff, 0xfb, 0xdf, 0xff, 0xfc,
|
||||||
|
0x7f, 0xfb, 0xbf, 0xff, 0xf8, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x10, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t batt_75_chg = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 40,
|
||||||
|
.header.h = 31,
|
||||||
|
.data_size = 163,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = batt_75_chg_map,
|
||||||
|
};
|
|
@ -0,0 +1,42 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING
|
||||||
|
#define LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING uint8_t
|
||||||
|
bluetooth_advertising_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x40, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, 0x78,
|
||||||
|
0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00,
|
||||||
|
0x20, 0x7f, 0x80, 0x00, 0x70, 0x77, 0xc0, 0x00, 0xf8, 0x73, 0xe0, 0xc0, 0x7c, 0x71,
|
||||||
|
0xe0, 0xe0, 0x3e, 0x73, 0xc0, 0x70, 0x1f, 0x77, 0x86, 0x30, 0x0f, 0xff, 0x07, 0x30,
|
||||||
|
0x07, 0xfe, 0x07, 0x38, 0x03, 0xfc, 0x23, 0x38, 0x01, 0xf8, 0x63, 0x18, 0x01, 0xf8,
|
||||||
|
0x63, 0x18, 0x03, 0xfc, 0x23, 0x38, 0x07, 0xfe, 0x07, 0x38, 0x0f, 0xff, 0x07, 0x30,
|
||||||
|
0x1f, 0x77, 0x86, 0x70, 0x3e, 0x73, 0xc0, 0x70, 0x7c, 0x71, 0xe0, 0xe0, 0xf8, 0x73,
|
||||||
|
0xe0, 0xc0, 0x70, 0x77, 0xc0, 0x00, 0x20, 0x7f, 0x80, 0x00, 0x00, 0x7f, 0x00, 0x00,
|
||||||
|
0x00, 0x7e, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x70,
|
||||||
|
0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t bluetooth_advertising = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 29,
|
||||||
|
.header.h = 35,
|
||||||
|
.data_size = 148,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = bluetooth_advertising_map,
|
||||||
|
};
|
|
@ -0,0 +1,47 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_1
|
||||||
|
#define LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_1
|
||||||
|
#endif
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_1 uint8_t
|
||||||
|
bluetooth_advertising_1_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x01, 0xfc, 0x00, 0x00, 0xfe, 0x00,
|
||||||
|
0x00, 0x0f, 0xff, 0x00, 0x20, 0xff, 0x00, 0x00, 0x1f, 0xff, 0xc0, 0x70, 0xf7, 0x80, 0x00,
|
||||||
|
0x3f, 0xff, 0xe0, 0xf8, 0xf3, 0xc1, 0xc0, 0x7f, 0xff, 0xe0, 0x7c, 0xf3, 0xe0, 0xc0, 0xff,
|
||||||
|
0xff, 0xf0, 0x3e, 0xf7, 0xc0, 0xe0, 0xff, 0x8f, 0xf8, 0x1f, 0xff, 0x84, 0x61, 0xfe, 0x0f,
|
||||||
|
0xf8, 0x0f, 0xff, 0x0e, 0x71, 0xfe, 0x0f, 0xf8, 0x07, 0xfe, 0x06, 0x31, 0xff, 0xcf, 0xfc,
|
||||||
|
0x03, 0xfc, 0x27, 0x33, 0xff, 0xcf, 0xfc, 0x01, 0xf8, 0x67, 0x33, 0xff, 0xcf, 0xfc, 0x01,
|
||||||
|
0xf8, 0x67, 0x33, 0xff, 0xcf, 0xfc, 0x03, 0xfc, 0x27, 0x33, 0xff, 0xcf, 0xfc, 0x07, 0xfe,
|
||||||
|
0x06, 0x31, 0xff, 0xcf, 0xfc, 0x0f, 0xff, 0x0e, 0x71, 0xff, 0xcf, 0xf8, 0x1f, 0xff, 0x84,
|
||||||
|
0x61, 0xff, 0xcf, 0xf8, 0x3e, 0xf7, 0xc0, 0xe0, 0xff, 0xcf, 0xf8, 0x7c, 0xf3, 0xe1, 0xc0,
|
||||||
|
0xff, 0xff, 0xf0, 0xf8, 0xf3, 0xc0, 0xc0, 0x7f, 0xff, 0xe0, 0x70, 0xf7, 0x80, 0x00, 0x3f,
|
||||||
|
0xff, 0xe0, 0x20, 0xff, 0x00, 0x00, 0x1f, 0xff, 0x80, 0x00, 0xfe, 0x00, 0x00, 0x0f, 0xff,
|
||||||
|
0x00, 0x00, 0xfc, 0x00, 0x00, 0x01, 0xfc, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t bluetooth_advertising_1 = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 54,
|
||||||
|
.header.h = 35,
|
||||||
|
.data_size = 254,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = bluetooth_advertising_1_map,
|
||||||
|
};
|
|
@ -0,0 +1,47 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_2
|
||||||
|
#define LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_2
|
||||||
|
#endif
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_2 uint8_t
|
||||||
|
bluetooth_advertising_2_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x03, 0xfc, 0x00, 0x00, 0xff, 0x00,
|
||||||
|
0x00, 0x0f, 0xff, 0x00, 0x60, 0xff, 0x80, 0x00, 0x1f, 0xff, 0xc0, 0xf0, 0xf7, 0xc0, 0x80,
|
||||||
|
0x7f, 0xff, 0xe0, 0x78, 0xf3, 0xe1, 0xc0, 0x7f, 0xff, 0xf0, 0x3c, 0xf3, 0xc0, 0xe0, 0xff,
|
||||||
|
0x0f, 0xf0, 0x1e, 0xf7, 0x84, 0xe1, 0xfe, 0x07, 0xf8, 0x0f, 0xff, 0x0e, 0x71, 0xfc, 0x63,
|
||||||
|
0xf8, 0x07, 0xfe, 0x0e, 0x71, 0xff, 0xf3, 0xfc, 0x03, 0xfc, 0x06, 0x33, 0xff, 0xe3, 0xfc,
|
||||||
|
0x01, 0xf8, 0x67, 0x33, 0xff, 0xe7, 0xfc, 0x01, 0xf8, 0xe7, 0x33, 0xff, 0xc7, 0xfc, 0x01,
|
||||||
|
0xfc, 0x67, 0x33, 0xff, 0x8f, 0xfc, 0x03, 0xfe, 0x06, 0x33, 0xff, 0x1f, 0xfc, 0x07, 0xff,
|
||||||
|
0x0e, 0x71, 0xfe, 0x3f, 0xfc, 0x0f, 0xff, 0x8e, 0x61, 0xfc, 0x03, 0xf8, 0x1e, 0xf7, 0xc0,
|
||||||
|
0xe1, 0xfc, 0x03, 0xf8, 0x3c, 0xf3, 0xe0, 0xc0, 0xff, 0xff, 0xf0, 0x78, 0xf3, 0xe1, 0xc0,
|
||||||
|
0x7f, 0xff, 0xf0, 0xf0, 0xf7, 0xc0, 0x80, 0x7f, 0xff, 0xe0, 0x60, 0xff, 0x80, 0x00, 0x1f,
|
||||||
|
0xff, 0xc0, 0x00, 0xff, 0x00, 0x00, 0x0f, 0xff, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x03, 0xfc,
|
||||||
|
0x00, 0x00, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t bluetooth_advertising_2 = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 54,
|
||||||
|
.header.h = 35,
|
||||||
|
.data_size = 254,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = bluetooth_advertising_2_map,
|
||||||
|
};
|
|
@ -0,0 +1,47 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_3
|
||||||
|
#define LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_3
|
||||||
|
#endif
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_3 uint8_t
|
||||||
|
bluetooth_advertising_3_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x01, 0xfc, 0x00, 0x00, 0xfe, 0x00,
|
||||||
|
0x00, 0x0f, 0xff, 0x00, 0x20, 0xff, 0x00, 0x00, 0x1f, 0xff, 0xc0, 0x70, 0xf7, 0x80, 0x00,
|
||||||
|
0x3f, 0xff, 0xe0, 0xf8, 0xf3, 0xc1, 0xc0, 0x7f, 0xff, 0xf0, 0x7c, 0xf3, 0xe0, 0xc0, 0xff,
|
||||||
|
0x9f, 0xf0, 0x3e, 0xf7, 0xc0, 0xe0, 0xfe, 0x07, 0xf8, 0x1f, 0xff, 0x84, 0x61, 0xfe, 0x03,
|
||||||
|
0xf8, 0x0f, 0xff, 0x0e, 0x71, 0xfe, 0xe3, 0xfc, 0x07, 0xfe, 0x06, 0x31, 0xff, 0xe3, 0xfc,
|
||||||
|
0x03, 0xfc, 0x27, 0x33, 0xff, 0x87, 0xfc, 0x01, 0xf8, 0x67, 0x33, 0xff, 0x87, 0xfc, 0x01,
|
||||||
|
0xf8, 0x67, 0x33, 0xff, 0x83, 0xfc, 0x03, 0xfc, 0x27, 0x33, 0xff, 0xf3, 0xfc, 0x07, 0xfe,
|
||||||
|
0x06, 0x31, 0xfe, 0xf3, 0xfc, 0x0f, 0xff, 0x0e, 0x71, 0xfc, 0x63, 0xfc, 0x1f, 0xff, 0x84,
|
||||||
|
0x61, 0xfe, 0x03, 0xf8, 0x3e, 0xf7, 0xc0, 0xe0, 0xff, 0x0f, 0xf8, 0x7c, 0xf3, 0xe1, 0xc0,
|
||||||
|
0xff, 0xff, 0xf0, 0xf8, 0xf3, 0xc0, 0xc0, 0x7f, 0xff, 0xf0, 0x70, 0xf7, 0x80, 0x00, 0x3f,
|
||||||
|
0xff, 0xe0, 0x20, 0xff, 0x00, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0xfe, 0x00, 0x00, 0x0f, 0xff,
|
||||||
|
0x00, 0x00, 0xfc, 0x00, 0x00, 0x01, 0xfc, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t bluetooth_advertising_3 = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 54,
|
||||||
|
.header.h = 35,
|
||||||
|
.data_size = 254,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = bluetooth_advertising_3_map,
|
||||||
|
};
|
|
@ -0,0 +1,47 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_4
|
||||||
|
#define LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_4
|
||||||
|
#endif
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_4 uint8_t
|
||||||
|
bluetooth_advertising_4_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x01, 0xfc, 0x00, 0x00, 0xfe, 0x00,
|
||||||
|
0x00, 0x0f, 0xff, 0x00, 0x20, 0xff, 0x00, 0x00, 0x1f, 0xff, 0xc0, 0x70, 0xf7, 0x80, 0x00,
|
||||||
|
0x3f, 0xff, 0xe0, 0xf8, 0xf3, 0xc0, 0xc0, 0x7f, 0xff, 0xe0, 0x7c, 0xf3, 0xe0, 0xc0, 0xff,
|
||||||
|
0xff, 0xf0, 0x3e, 0xf7, 0xc0, 0xe0, 0xff, 0xcf, 0xf8, 0x1f, 0xff, 0x84, 0x61, 0xff, 0x8f,
|
||||||
|
0xf8, 0x0f, 0xff, 0x0e, 0x71, 0xff, 0x0f, 0xf8, 0x07, 0xfe, 0x06, 0x31, 0xff, 0x0f, 0xfc,
|
||||||
|
0x03, 0xfc, 0x27, 0x31, 0xfe, 0x4f, 0xfc, 0x01, 0xf8, 0x67, 0x31, 0xfc, 0x4f, 0xfc, 0x01,
|
||||||
|
0xf8, 0x67, 0x33, 0xfc, 0xcf, 0xfc, 0x03, 0xfc, 0x27, 0x31, 0xf8, 0x07, 0xfc, 0x07, 0xfe,
|
||||||
|
0x06, 0x31, 0xf8, 0x03, 0xfc, 0x0f, 0xff, 0x0e, 0x71, 0xf8, 0x07, 0xf8, 0x1f, 0xff, 0x84,
|
||||||
|
0x61, 0xff, 0xcf, 0xf8, 0x3e, 0xf7, 0xc0, 0xe0, 0xff, 0xcf, 0xf8, 0x7c, 0xf3, 0xe1, 0xc0,
|
||||||
|
0xff, 0xff, 0xf0, 0xf8, 0xf3, 0xc0, 0xc0, 0x7f, 0xff, 0xe0, 0x70, 0xf7, 0x80, 0x00, 0x3f,
|
||||||
|
0xff, 0xc0, 0x20, 0xff, 0x00, 0x00, 0x1f, 0xff, 0x80, 0x00, 0xfe, 0x00, 0x00, 0x07, 0xff,
|
||||||
|
0x00, 0x00, 0xfc, 0x00, 0x00, 0x01, 0xf8, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t bluetooth_advertising_4 = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 54,
|
||||||
|
.header.h = 35,
|
||||||
|
.data_size = 254,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = bluetooth_advertising_4_map,
|
||||||
|
};
|
|
@ -0,0 +1,47 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_5
|
||||||
|
#define LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_5
|
||||||
|
#endif
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_5 uint8_t
|
||||||
|
bluetooth_advertising_5_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x01, 0xfc, 0x00, 0x00, 0xfe, 0x00,
|
||||||
|
0x00, 0x0f, 0xff, 0x00, 0x20, 0xff, 0x00, 0x00, 0x1f, 0xff, 0x80, 0x70, 0xf7, 0x80, 0x00,
|
||||||
|
0x3f, 0xff, 0xe0, 0xf8, 0xf3, 0xc0, 0xc0, 0x7f, 0xff, 0xe0, 0x7c, 0xf3, 0xe0, 0xe0, 0xff,
|
||||||
|
0xff, 0xf0, 0x3e, 0xf7, 0xc0, 0xe1, 0xfe, 0x07, 0xf8, 0x1f, 0xff, 0x84, 0x61, 0xfe, 0x07,
|
||||||
|
0xf8, 0x0f, 0xff, 0x0e, 0x71, 0xfc, 0x7f, 0xf8, 0x07, 0xfe, 0x06, 0x33, 0xfc, 0x7f, 0xfc,
|
||||||
|
0x03, 0xfc, 0x27, 0x33, 0xfc, 0x07, 0xfc, 0x01, 0xf8, 0x67, 0x33, 0xfc, 0x03, 0xfc, 0x01,
|
||||||
|
0xf8, 0x67, 0x33, 0xff, 0x63, 0xfc, 0x03, 0xfc, 0x27, 0x33, 0xff, 0xf3, 0xfc, 0x07, 0xfe,
|
||||||
|
0x06, 0x33, 0xfe, 0xf3, 0xfc, 0x0f, 0xff, 0x0e, 0x71, 0xfc, 0x63, 0xf8, 0x1f, 0xff, 0x84,
|
||||||
|
0x61, 0xfe, 0x07, 0xf8, 0x3e, 0xf7, 0xc0, 0xe0, 0xff, 0x0f, 0xf8, 0x7c, 0xf3, 0xe1, 0xc0,
|
||||||
|
0xff, 0xff, 0xf0, 0xf8, 0xf3, 0xc0, 0xc0, 0x7f, 0xff, 0xe0, 0x70, 0xf7, 0x80, 0x00, 0x3f,
|
||||||
|
0xff, 0xc0, 0x20, 0xff, 0x00, 0x00, 0x1f, 0xff, 0x80, 0x00, 0xfe, 0x00, 0x00, 0x0f, 0xff,
|
||||||
|
0x00, 0x00, 0xfc, 0x00, 0x00, 0x01, 0xf8, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t bluetooth_advertising_5 = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 54,
|
||||||
|
.header.h = 35,
|
||||||
|
.data_size = 254,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = bluetooth_advertising_5_map,
|
||||||
|
};
|
|
@ -0,0 +1,47 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_1
|
||||||
|
#define LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_1
|
||||||
|
#endif
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_1 uint8_t
|
||||||
|
bluetooth_connected_1_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x01, 0xfc, 0x00, 0x00, 0x7f, 0x00,
|
||||||
|
0x00, 0x0f, 0xff, 0x00, 0x30, 0x7f, 0x80, 0x00, 0x1f, 0xff, 0xc0, 0x78, 0x77, 0xc0, 0x00,
|
||||||
|
0x3f, 0xff, 0xe0, 0x7c, 0x73, 0xe0, 0x00, 0x7f, 0xff, 0xe0, 0x3e, 0x71, 0xe0, 0x00, 0xff,
|
||||||
|
0xff, 0xf0, 0x1f, 0x73, 0xc0, 0x00, 0xff, 0x8f, 0xf8, 0x0f, 0xff, 0x80, 0x01, 0xfe, 0x0f,
|
||||||
|
0xf8, 0x87, 0xff, 0x08, 0x01, 0xfe, 0x0f, 0xf8, 0xc3, 0xfe, 0x18, 0x01, 0xff, 0xcf, 0xfc,
|
||||||
|
0xe1, 0xfc, 0x38, 0x03, 0xff, 0xcf, 0xfc, 0xf0, 0xf8, 0x78, 0x03, 0xff, 0xcf, 0xfc, 0xf0,
|
||||||
|
0xfc, 0x78, 0x03, 0xff, 0xcf, 0xfc, 0xe1, 0xfc, 0x38, 0x03, 0xff, 0xcf, 0xfc, 0xc3, 0xfe,
|
||||||
|
0x18, 0x01, 0xff, 0xcf, 0xfc, 0x87, 0xff, 0x08, 0x01, 0xff, 0xcf, 0xf8, 0x0f, 0xff, 0x80,
|
||||||
|
0x01, 0xff, 0xcf, 0xf8, 0x1e, 0x73, 0xc0, 0x00, 0xff, 0xcf, 0xf8, 0x3c, 0x71, 0xe0, 0x00,
|
||||||
|
0xff, 0xff, 0xf0, 0x78, 0x73, 0xe0, 0x00, 0x7f, 0xff, 0xe0, 0x78, 0x77, 0xc0, 0x00, 0x3f,
|
||||||
|
0xff, 0xe0, 0x30, 0x7f, 0x80, 0x00, 0x1f, 0xff, 0x80, 0x00, 0x7f, 0x00, 0x00, 0x0f, 0xff,
|
||||||
|
0x00, 0x00, 0x7e, 0x00, 0x00, 0x01, 0xfc, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t bluetooth_connected_1 = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 54,
|
||||||
|
.header.h = 35,
|
||||||
|
.data_size = 254,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = bluetooth_connected_1_map,
|
||||||
|
};
|
|
@ -0,0 +1,47 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_2
|
||||||
|
#define LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_2
|
||||||
|
#endif
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_2 uint8_t
|
||||||
|
bluetooth_connected_2_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x03, 0xfc, 0x00, 0x00, 0x7f, 0x00,
|
||||||
|
0x00, 0x0f, 0xff, 0x00, 0x30, 0x7f, 0x80, 0x00, 0x1f, 0xff, 0xc0, 0x78, 0x73, 0xc0, 0x00,
|
||||||
|
0x7f, 0xff, 0xe0, 0x7c, 0x71, 0xe0, 0x00, 0x7f, 0xff, 0xf0, 0x3e, 0x73, 0xe0, 0x00, 0xff,
|
||||||
|
0x0f, 0xf0, 0x1f, 0x77, 0xc0, 0x01, 0xfe, 0x07, 0xf8, 0x0f, 0xff, 0x80, 0x01, 0xfc, 0x63,
|
||||||
|
0xf8, 0x87, 0xff, 0x08, 0x01, 0xff, 0xf3, 0xfc, 0xc3, 0xfe, 0x18, 0x03, 0xff, 0xe3, 0xfc,
|
||||||
|
0xe1, 0xfc, 0x38, 0x03, 0xff, 0xe7, 0xfc, 0xf0, 0xf8, 0x78, 0x03, 0xff, 0xc7, 0xfc, 0xe1,
|
||||||
|
0xfc, 0x38, 0x03, 0xff, 0x8f, 0xfc, 0xc3, 0xfe, 0x18, 0x03, 0xff, 0x1f, 0xfc, 0x87, 0xff,
|
||||||
|
0x08, 0x01, 0xfe, 0x3f, 0xfc, 0x0f, 0xff, 0x80, 0x01, 0xfc, 0x03, 0xf8, 0x1f, 0x77, 0xc0,
|
||||||
|
0x01, 0xfc, 0x03, 0xf8, 0x3e, 0x73, 0xe0, 0x00, 0xff, 0xff, 0xf0, 0x7c, 0x71, 0xe0, 0x00,
|
||||||
|
0x7f, 0xff, 0xf0, 0x78, 0x73, 0xc0, 0x00, 0x7f, 0xff, 0xe0, 0x30, 0x7f, 0x80, 0x00, 0x1f,
|
||||||
|
0xff, 0xc0, 0x00, 0x7f, 0x00, 0x00, 0x0f, 0xff, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x03, 0xfc,
|
||||||
|
0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t bluetooth_connected_2 = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 54,
|
||||||
|
.header.h = 35,
|
||||||
|
.data_size = 254,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = bluetooth_connected_2_map,
|
||||||
|
};
|
|
@ -0,0 +1,47 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_3
|
||||||
|
#define LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_3
|
||||||
|
#endif
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_3 uint8_t
|
||||||
|
bluetooth_connected_3_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x03, 0xfc, 0x00, 0x00, 0x7f, 0x00,
|
||||||
|
0x00, 0x0f, 0xff, 0x00, 0x30, 0x7f, 0x80, 0x00, 0x1f, 0xff, 0xc0, 0x78, 0x77, 0xc0, 0x00,
|
||||||
|
0x7f, 0xff, 0xe0, 0x7c, 0x73, 0xe0, 0x00, 0x7f, 0xff, 0xf0, 0x3e, 0x71, 0xe0, 0x00, 0xff,
|
||||||
|
0x9f, 0xf0, 0x1f, 0x73, 0xc0, 0x01, 0xfe, 0x07, 0xf8, 0x0f, 0xff, 0x80, 0x01, 0xfc, 0x03,
|
||||||
|
0xf8, 0x87, 0xff, 0x08, 0x01, 0xfe, 0xe3, 0xfc, 0xc3, 0xfe, 0x18, 0x03, 0xff, 0xe3, 0xfc,
|
||||||
|
0xe1, 0xfc, 0x38, 0x03, 0xff, 0x87, 0xfc, 0xf0, 0xf8, 0x78, 0x03, 0xff, 0x87, 0xfc, 0xf0,
|
||||||
|
0xfc, 0x78, 0x03, 0xff, 0x83, 0xfc, 0xe1, 0xfe, 0x38, 0x03, 0xff, 0xf3, 0xfc, 0xc3, 0xff,
|
||||||
|
0x18, 0x03, 0xfe, 0xf3, 0xfc, 0x87, 0xff, 0x88, 0x01, 0xfc, 0x63, 0xf8, 0x0f, 0xf7, 0xc0,
|
||||||
|
0x01, 0xfe, 0x03, 0xf8, 0x1f, 0x73, 0xe0, 0x01, 0xff, 0x0f, 0xf8, 0x3e, 0x71, 0xe0, 0x00,
|
||||||
|
0xff, 0xff, 0xf0, 0x7c, 0x73, 0xe0, 0x00, 0x7f, 0xff, 0xe0, 0x78, 0x77, 0xc0, 0x00, 0x3f,
|
||||||
|
0xff, 0xe0, 0x30, 0x7f, 0x80, 0x00, 0x1f, 0xff, 0x80, 0x00, 0x7f, 0x00, 0x00, 0x0f, 0xff,
|
||||||
|
0x00, 0x00, 0x7e, 0x00, 0x00, 0x01, 0xf8, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t bluetooth_connected_3 = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 54,
|
||||||
|
.header.h = 35,
|
||||||
|
.data_size = 254,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = bluetooth_connected_3_map,
|
||||||
|
};
|
|
@ -0,0 +1,47 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_4
|
||||||
|
#define LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_4
|
||||||
|
#endif
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_4 uint8_t
|
||||||
|
bluetooth_connected_4_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x01, 0xf8, 0x00, 0x00, 0x7f, 0x00,
|
||||||
|
0x00, 0x07, 0xff, 0x00, 0x30, 0x7f, 0x80, 0x00, 0x1f, 0xff, 0x80, 0x78, 0x77, 0xc0, 0x00,
|
||||||
|
0x3f, 0xff, 0xe0, 0x7c, 0x73, 0xe0, 0x00, 0x7f, 0xff, 0xe0, 0x3e, 0x71, 0xe0, 0x00, 0xff,
|
||||||
|
0xff, 0xf0, 0x1f, 0x73, 0xc0, 0x00, 0xff, 0xcf, 0xf8, 0x0f, 0xff, 0x80, 0x01, 0xff, 0x8f,
|
||||||
|
0xf8, 0x87, 0xff, 0x08, 0x01, 0xff, 0x0f, 0xf8, 0xc3, 0xfe, 0x18, 0x01, 0xff, 0x0f, 0xfc,
|
||||||
|
0xe1, 0xfc, 0x38, 0x03, 0xfe, 0x4f, 0xfc, 0xf0, 0xf8, 0x78, 0x03, 0xfc, 0x4f, 0xfc, 0xf0,
|
||||||
|
0xfc, 0x78, 0x03, 0xfc, 0xcf, 0xfc, 0xe1, 0xfe, 0x38, 0x03, 0xf8, 0xc7, 0xfc, 0xc3, 0xff,
|
||||||
|
0x18, 0x01, 0xf8, 0x03, 0xfc, 0x87, 0xff, 0x88, 0x01, 0xf8, 0x03, 0xf8, 0x0f, 0xf7, 0xc0,
|
||||||
|
0x01, 0xff, 0xcf, 0xf8, 0x1f, 0x73, 0xe0, 0x00, 0xff, 0xcf, 0xf8, 0x3e, 0x71, 0xe0, 0x00,
|
||||||
|
0xff, 0xff, 0xf0, 0x7c, 0x73, 0xe0, 0x00, 0x7f, 0xff, 0xe0, 0x78, 0x77, 0xc0, 0x00, 0x3f,
|
||||||
|
0xff, 0xe0, 0x30, 0x7f, 0x80, 0x00, 0x1f, 0xff, 0x80, 0x00, 0x7f, 0x00, 0x00, 0x0f, 0xff,
|
||||||
|
0x00, 0x00, 0x7e, 0x00, 0x00, 0x01, 0xf8, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t bluetooth_connected_4 = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 54,
|
||||||
|
.header.h = 35,
|
||||||
|
.data_size = 254,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = bluetooth_connected_4_map,
|
||||||
|
};
|
|
@ -0,0 +1,47 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_5
|
||||||
|
#define LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_5
|
||||||
|
#endif
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_5 uint8_t
|
||||||
|
bluetooth_connected_5_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x01, 0xfc, 0x00, 0x00, 0x7f, 0x00,
|
||||||
|
0x00, 0x0f, 0xff, 0x00, 0x30, 0x7f, 0x80, 0x00, 0x1f, 0xff, 0x80, 0x78, 0x77, 0xc0, 0x00,
|
||||||
|
0x3f, 0xff, 0xe0, 0x7c, 0x73, 0xe0, 0x00, 0x7f, 0xff, 0xe0, 0x3e, 0x71, 0xe0, 0x00, 0xff,
|
||||||
|
0xff, 0xf0, 0x1f, 0x73, 0xc0, 0x01, 0xfe, 0x07, 0xf8, 0x0f, 0xff, 0x80, 0x01, 0xfe, 0x07,
|
||||||
|
0xf8, 0x87, 0xff, 0x08, 0x01, 0xfc, 0x7f, 0xf8, 0xc3, 0xfe, 0x18, 0x03, 0xfc, 0x7f, 0xfc,
|
||||||
|
0xe1, 0xfc, 0x38, 0x03, 0xfc, 0x07, 0xfc, 0xf0, 0xf8, 0x78, 0x03, 0xfc, 0x03, 0xfc, 0xf0,
|
||||||
|
0xfc, 0x78, 0x03, 0xff, 0x63, 0xfc, 0xe1, 0xfe, 0x38, 0x03, 0xff, 0xf3, 0xfc, 0xc3, 0xff,
|
||||||
|
0x18, 0x03, 0xfe, 0xf3, 0xfc, 0x87, 0xff, 0x88, 0x01, 0xfc, 0x63, 0xf8, 0x0f, 0xf7, 0xc0,
|
||||||
|
0x01, 0xfe, 0x07, 0xf8, 0x1e, 0x73, 0xc0, 0x00, 0xff, 0x0f, 0xf8, 0x3c, 0x71, 0xe0, 0x00,
|
||||||
|
0xff, 0xff, 0xf0, 0x7c, 0x73, 0xe0, 0x00, 0x7f, 0xff, 0xe0, 0x78, 0x77, 0xc0, 0x00, 0x3f,
|
||||||
|
0xff, 0xc0, 0x30, 0x7f, 0x80, 0x00, 0x1f, 0xff, 0x80, 0x00, 0x7f, 0x00, 0x00, 0x0f, 0xff,
|
||||||
|
0x00, 0x00, 0x7e, 0x00, 0x00, 0x01, 0xf8, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t bluetooth_connected_5 = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 54,
|
||||||
|
.header.h = 35,
|
||||||
|
.data_size = 254,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = bluetooth_connected_5_map,
|
||||||
|
};
|
|
@ -0,0 +1,49 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_RIGHT
|
||||||
|
#define LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_RIGHT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_RIGHT
|
||||||
|
uint8_t bluetooth_connected_right_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x00, 0x00, 0x03, 0xf8, 0x00, 0x00, 0x3f, 0x80,
|
||||||
|
0x00, 0x0f, 0xfe, 0x00, 0x10, 0x3f, 0xc0, 0x00, 0x3f, 0xff, 0x80, 0x38, 0x3b, 0xe0, 0x00,
|
||||||
|
0x7f, 0xff, 0xc0, 0x7c, 0x39, 0xf0, 0x00, 0xff, 0xff, 0xe0, 0x3e, 0x38, 0xf0, 0x01, 0xff,
|
||||||
|
0xff, 0xf0, 0x1f, 0x39, 0xe0, 0x01, 0xff, 0xfe, 0x30, 0x0f, 0xbb, 0xc0, 0x03, 0xff, 0xfc,
|
||||||
|
0x38, 0x87, 0xff, 0x84, 0x03, 0xff, 0xf8, 0x38, 0xc3, 0xff, 0x0c, 0x07, 0xff, 0xf0, 0x3c,
|
||||||
|
0xe1, 0xfe, 0x1c, 0x07, 0xcf, 0xe0, 0x7c, 0xf0, 0xfc, 0x3c, 0x07, 0x87, 0xc0, 0xfc, 0xf0,
|
||||||
|
0xfc, 0x3c, 0x07, 0x83, 0x81, 0xfc, 0xe1, 0xfe, 0x1c, 0x07, 0x81, 0x03, 0xfc, 0xc3, 0xff,
|
||||||
|
0x0c, 0x07, 0xc0, 0x07, 0xfc, 0x87, 0xff, 0x84, 0x07, 0xe0, 0x0f, 0xfc, 0x0f, 0xbb, 0xc0,
|
||||||
|
0x03, 0xf0, 0x1f, 0xf8, 0x1f, 0x39, 0xe0, 0x03, 0xf8, 0x3f, 0xf8, 0x3e, 0x38, 0xf0, 0x01,
|
||||||
|
0xfc, 0xff, 0xf0, 0x7c, 0x39, 0xf0, 0x01, 0xff, 0xff, 0xf0, 0x38, 0x3b, 0xe0, 0x00, 0xff,
|
||||||
|
0xff, 0xe0, 0x10, 0x3f, 0xc0, 0x00, 0x7f, 0xff, 0xc0, 0x00, 0x3f, 0x80, 0x00, 0x3f, 0xff,
|
||||||
|
0x80, 0x00, 0x3f, 0x00, 0x00, 0x0f, 0xfe, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x03, 0xf8, 0x00,
|
||||||
|
0x00, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t bluetooth_connected_right = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 54,
|
||||||
|
.header.h = 35,
|
||||||
|
.data_size = 253,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = bluetooth_connected_right_map,
|
||||||
|
};
|
|
@ -0,0 +1,49 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BLUETOOTH_DISCONNECTED_RIGHT
|
||||||
|
#define LV_ATTRIBUTE_IMG_BLUETOOTH_DISCONNECTED_RIGHT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BLUETOOTH_DISCONNECTED_RIGHT
|
||||||
|
uint8_t bluetooth_disconnected_right_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x00, 0x00, 0x03, 0xf8, 0x00, 0x00, 0x3f, 0x80,
|
||||||
|
0x00, 0x0f, 0xfe, 0x00, 0x10, 0x3f, 0xc0, 0x00, 0x3f, 0xff, 0x80, 0x38, 0x3b, 0xe0, 0x00,
|
||||||
|
0x7f, 0xff, 0xc0, 0x7c, 0x39, 0xf0, 0x00, 0xff, 0xff, 0xe0, 0x3e, 0x38, 0xf0, 0x01, 0xff,
|
||||||
|
0xff, 0xf0, 0x1f, 0x39, 0xe0, 0x01, 0xe3, 0xf8, 0xf0, 0x0f, 0xbb, 0xc0, 0x03, 0xe1, 0xf0,
|
||||||
|
0xf8, 0x07, 0xff, 0x80, 0x03, 0xe0, 0xe0, 0xf8, 0x03, 0xff, 0x00, 0x07, 0xf0, 0x01, 0xfc,
|
||||||
|
0x01, 0xfe, 0x00, 0x07, 0xf8, 0x03, 0xfc, 0x00, 0xfc, 0x00, 0x07, 0xfc, 0x07, 0xfc, 0x00,
|
||||||
|
0xfc, 0x00, 0x07, 0xfc, 0x07, 0xfc, 0x01, 0xfe, 0x00, 0x07, 0xfc, 0x07, 0xfc, 0x03, 0xff,
|
||||||
|
0x00, 0x07, 0xf8, 0x03, 0xfc, 0x07, 0xff, 0x80, 0x07, 0xf0, 0x01, 0xfc, 0x0f, 0xbb, 0xc0,
|
||||||
|
0x03, 0xe0, 0xe0, 0xf8, 0x1f, 0x39, 0xe0, 0x03, 0xe1, 0xf0, 0xf8, 0x3e, 0x38, 0xf0, 0x01,
|
||||||
|
0xe3, 0xf8, 0xf0, 0x7c, 0x39, 0xf0, 0x01, 0xff, 0xff, 0xf0, 0x38, 0x3b, 0xe0, 0x00, 0xff,
|
||||||
|
0xff, 0xe0, 0x10, 0x3f, 0xc0, 0x00, 0x7f, 0xff, 0xc0, 0x00, 0x3f, 0x80, 0x00, 0x3f, 0xff,
|
||||||
|
0x80, 0x00, 0x3f, 0x00, 0x00, 0x0f, 0xfe, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x03, 0xf8, 0x00,
|
||||||
|
0x00, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t bluetooth_disconnected_right = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 54,
|
||||||
|
.header.h = 35,
|
||||||
|
.data_size = 253,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = bluetooth_disconnected_right_map,
|
||||||
|
};
|
44
app/boards/arm/corneish_zen/widgets/icons/layers.c
Normal file
44
app/boards/arm/corneish_zen/widgets/icons/layers.c
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_LAYERS
|
||||||
|
#define LV_ATTRIBUTE_IMG_LAYERS
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_LAYERS uint8_t
|
||||||
|
layers_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00,
|
||||||
|
0x00, 0x07, 0xfc, 0x00, 0x00, 0x00, 0x1f, 0xff, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xc0, 0x00,
|
||||||
|
0x01, 0xff, 0xff, 0xf0, 0x00, 0x07, 0xff, 0xff, 0xfc, 0x00, 0x1f, 0xff, 0xff, 0xff, 0x00,
|
||||||
|
0x3f, 0xff, 0xff, 0xff, 0x80, 0x1f, 0xff, 0xff, 0xff, 0x00, 0x0f, 0xff, 0xff, 0xfe, 0x00,
|
||||||
|
0x01, 0xff, 0xff, 0xf0, 0x00, 0x00, 0xff, 0xff, 0xe0, 0x00, 0x07, 0x9f, 0xff, 0x3c, 0x00,
|
||||||
|
0x1e, 0x07, 0xfc, 0x0f, 0x00, 0x38, 0x01, 0xe0, 0x03, 0x80, 0x30, 0x00, 0x00, 0x01, 0x80,
|
||||||
|
0x38, 0x00, 0x00, 0x03, 0x80, 0x0e, 0x00, 0x00, 0x0e, 0x00, 0x03, 0xc0, 0x00, 0x78, 0x00,
|
||||||
|
0x01, 0xf0, 0x01, 0xf0, 0x00, 0x07, 0xfc, 0x07, 0xfc, 0x00, 0x1f, 0xff, 0x1f, 0xff, 0x00,
|
||||||
|
0x3f, 0xff, 0xff, 0xff, 0x80, 0x3f, 0xff, 0xff, 0xff, 0x80, 0x1f, 0xff, 0xff, 0xff, 0x00,
|
||||||
|
0x07, 0xff, 0xff, 0xfc, 0x00, 0x00, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x3f, 0xff, 0x80, 0x00,
|
||||||
|
0x00, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x03, 0xf8, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t layers = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 35,
|
||||||
|
.header.h = 35,
|
||||||
|
.data_size = 183,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = layers_map,
|
||||||
|
};
|
40
app/boards/arm/corneish_zen/widgets/icons/layers2.c
Normal file
40
app/boards/arm/corneish_zen/widgets/icons/layers2.c
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_LAYERS2
|
||||||
|
#define LV_ATTRIBUTE_IMG_LAYERS2
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_LAYERS2 uint8_t
|
||||||
|
layers2_map[] = {
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 0*/
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x30, 0x0f, 0x18, 0xdf, 0xdf, 0xc0, 0x04, 0x00,
|
||||||
|
0x00, 0x80, 0x30, 0x19, 0x98, 0xd8, 0x18, 0xe0, 0x0e, 0x00, 0x00, 0x80, 0x30, 0x30, 0xd8,
|
||||||
|
0xd8, 0x18, 0xe0, 0x1f, 0x00, 0x00, 0x80, 0x30, 0x30, 0xcf, 0x9f, 0xd9, 0xc0, 0x04, 0x00,
|
||||||
|
0x00, 0x80, 0x30, 0x3f, 0xc7, 0x18, 0x1f, 0x80, 0x04, 0x00, 0x03, 0xe0, 0x30, 0x39, 0xc6,
|
||||||
|
0x18, 0x1b, 0x80, 0x04, 0x00, 0x01, 0xc0, 0x3f, 0xb0, 0xc6, 0x1f, 0xd9, 0xc0, 0x04, 0x00,
|
||||||
|
0x00, 0x80, 0x3f, 0xb0, 0xc6, 0x1f, 0xd8, 0xe0, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t layers2 = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 78,
|
||||||
|
.header.h = 12,
|
||||||
|
.data_size = 128,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = layers2_map,
|
||||||
|
};
|
58
app/boards/arm/corneish_zen/widgets/icons/zenlogo.c
Normal file
58
app/boards/arm/corneish_zen/widgets/icons/zenlogo.c
Normal file
|
@ -0,0 +1,58 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_ZENLOGO
|
||||||
|
#define LV_ATTRIBUTE_IMG_ZENLOGO
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_ZENLOGO uint8_t
|
||||||
|
zenlogo_map[] = {
|
||||||
|
0xff, 0xff, 0xff, 0xff, /*Color of index 0*/
|
||||||
|
0x00, 0x00, 0x00, 0xff, /*Color of index 1*/
|
||||||
|
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0xe3, 0xe3, 0x9e,
|
||||||
|
0x3e, 0x02, 0x72, 0xe0, 0x00, 0x00, 0x06, 0x36, 0x36, 0x33, 0x63, 0x02, 0x8b, 0x10, 0x00,
|
||||||
|
0x00, 0x04, 0x14, 0x14, 0x21, 0x41, 0x02, 0x82, 0x10, 0x00, 0x00, 0x04, 0x04, 0x14, 0x21,
|
||||||
|
0x7f, 0x7a, 0x72, 0x10, 0x00, 0x00, 0x04, 0x04, 0x14, 0x21, 0x40, 0x02, 0x0a, 0x10, 0x00,
|
||||||
|
0x00, 0x04, 0x14, 0x14, 0x21, 0x41, 0x02, 0x0a, 0x10, 0x00, 0x00, 0x06, 0x36, 0x34, 0x21,
|
||||||
|
0x63, 0x02, 0x8a, 0x10, 0x00, 0x00, 0x03, 0xe3, 0xe4, 0x21, 0x3e, 0x02, 0x72, 0x10, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x03, 0xfc,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x07, 0xe0, 0x00, 0x00, 0x00, 0xff, 0xf1,
|
||||||
|
0xf8, 0x00, 0x60, 0x0f, 0xc0, 0x00, 0x00, 0x0f, 0xff, 0xfb, 0xff, 0xe0, 0xf8, 0x1f, 0x80,
|
||||||
|
0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xfc, 0x1f, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xc1, 0xfc, 0x1f, 0x00, 0x7f, 0xc0, 0x1f, 0xff, 0xff, 0xe0, 0x01, 0xfc, 0x3e, 0x00,
|
||||||
|
0x40, 0x1f, 0xff, 0xe0, 0xff, 0xc0, 0x07, 0xfc, 0xfc, 0x00, 0xdf, 0xff, 0x80, 0x01, 0xff,
|
||||||
|
0xc0, 0x0f, 0xdc, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xff, 0x8f, 0x1f, 0x9f, 0xf8, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x1f, 0xef, 0xff, 0x1f, 0x9f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x8f,
|
||||||
|
0xff, 0x3f, 0x1f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x1f, 0xfe, 0x3f, 0x0f, 0xf0, 0x00,
|
||||||
|
0x00, 0x00, 0x03, 0xf8, 0x1f, 0x80, 0x7e, 0x0f, 0xe0, 0x00, 0x00, 0x00, 0x07, 0xe0, 0x3e,
|
||||||
|
0x00, 0x7e, 0x0f, 0xe0, 0x00, 0x00, 0x00, 0x0f, 0xc0, 0x3c, 0x00, 0x7e, 0x0f, 0xc0, 0x00,
|
||||||
|
0x00, 0x00, 0x1f, 0xf8, 0x3c, 0x00, 0x78, 0x0f, 0xc0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xbc,
|
||||||
|
0x00, 0x78, 0x0f, 0xc0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xfc, 0x00, 0xf8, 0x0f, 0xc0, 0x00,
|
||||||
|
0x00, 0x00, 0x1f, 0xff, 0xfc, 0x0f, 0xf0, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff,
|
||||||
|
0xff, 0xf8, 0x03, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xff, 0x0f, 0xff, 0xa0, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x07, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_img_dsc_t zenlogo = {
|
||||||
|
.header.always_zero = 0,
|
||||||
|
.header.w = 80,
|
||||||
|
.header.h = 38,
|
||||||
|
.data_size = 388,
|
||||||
|
.header.cf = LV_IMG_CF_INDEXED_1BIT,
|
||||||
|
.data = zenlogo_map,
|
||||||
|
};
|
67
app/boards/arm/corneish_zen/widgets/layer_status.c
Normal file
67
app/boards/arm/corneish_zen/widgets/layer_status.c
Normal file
|
@ -0,0 +1,67 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <kernel.h>
|
||||||
|
#include <logging/log.h>
|
||||||
|
LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
|
||||||
|
|
||||||
|
#include <zmk/display.h>
|
||||||
|
#include "layer_status.h"
|
||||||
|
#include <zmk/events/layer_state_changed.h>
|
||||||
|
#include <zmk/event_manager.h>
|
||||||
|
#include <zmk/endpoints.h>
|
||||||
|
#include <zmk/keymap.h>
|
||||||
|
|
||||||
|
static sys_slist_t widgets = SYS_SLIST_STATIC_INIT(&widgets);
|
||||||
|
|
||||||
|
struct layer_status_state {
|
||||||
|
uint8_t index;
|
||||||
|
const char *label;
|
||||||
|
};
|
||||||
|
|
||||||
|
static void set_layer_symbol(lv_obj_t *label, struct layer_status_state state) {
|
||||||
|
const char *layer_label = state.label;
|
||||||
|
uint8_t active_layer_index = state.index;
|
||||||
|
|
||||||
|
if (layer_label == NULL) {
|
||||||
|
char text[6] = {};
|
||||||
|
|
||||||
|
sprintf(text, " %i", active_layer_index);
|
||||||
|
|
||||||
|
lv_label_set_text(label, text);
|
||||||
|
} else {
|
||||||
|
lv_label_set_text(label, layer_label);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void layer_status_update_cb(struct layer_status_state state) {
|
||||||
|
struct zmk_widget_layer_status *widget;
|
||||||
|
SYS_SLIST_FOR_EACH_CONTAINER(&widgets, widget, node) { set_layer_symbol(widget->obj, state); }
|
||||||
|
}
|
||||||
|
|
||||||
|
static struct layer_status_state layer_status_get_state(const zmk_event_t *eh) {
|
||||||
|
uint8_t index = zmk_keymap_highest_layer_active();
|
||||||
|
return (struct layer_status_state){.index = index, .label = zmk_keymap_layer_label(index)};
|
||||||
|
}
|
||||||
|
|
||||||
|
ZMK_DISPLAY_WIDGET_LISTENER(widget_layer_status, struct layer_status_state, layer_status_update_cb,
|
||||||
|
layer_status_get_state)
|
||||||
|
|
||||||
|
ZMK_SUBSCRIPTION(widget_layer_status, zmk_layer_state_changed);
|
||||||
|
|
||||||
|
int zmk_widget_layer_status_init(struct zmk_widget_layer_status *widget, lv_obj_t *parent) {
|
||||||
|
widget->obj = lv_label_create(parent, NULL);
|
||||||
|
|
||||||
|
sys_slist_append(&widgets, &widget->node);
|
||||||
|
|
||||||
|
widget_layer_status_init();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
lv_obj_t *zmk_widget_layer_status_obj(struct zmk_widget_layer_status *widget) {
|
||||||
|
return widget->obj;
|
||||||
|
}
|
19
app/boards/arm/corneish_zen/widgets/layer_status.h
Normal file
19
app/boards/arm/corneish_zen/widgets/layer_status.h
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
#include <kernel.h>
|
||||||
|
|
||||||
|
struct zmk_widget_layer_status {
|
||||||
|
sys_snode_t node;
|
||||||
|
lv_obj_t *obj;
|
||||||
|
};
|
||||||
|
|
||||||
|
int zmk_widget_layer_status_init(struct zmk_widget_layer_status *widget, lv_obj_t *parent);
|
||||||
|
lv_obj_t *zmk_widget_layer_status_obj(struct zmk_widget_layer_status *widget);
|
138
app/boards/arm/corneish_zen/widgets/output_status.c
Normal file
138
app/boards/arm/corneish_zen/widgets/output_status.c
Normal file
|
@ -0,0 +1,138 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <kernel.h>
|
||||||
|
#include <bluetooth/services/bas.h>
|
||||||
|
|
||||||
|
#include <logging/log.h>
|
||||||
|
LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
|
||||||
|
|
||||||
|
#include <zmk/display.h>
|
||||||
|
#include "output_status.h"
|
||||||
|
#include <zmk/event_manager.h>
|
||||||
|
#include <zmk/events/usb_conn_state_changed.h>
|
||||||
|
#include <zmk/events/ble_active_profile_changed.h>
|
||||||
|
#include <zmk/events/endpoint_selection_changed.h>
|
||||||
|
#include <zmk/usb.h>
|
||||||
|
#include <zmk/ble.h>
|
||||||
|
#include <zmk/endpoints.h>
|
||||||
|
|
||||||
|
LV_IMG_DECLARE(bluetooth_advertising);
|
||||||
|
LV_IMG_DECLARE(bluetooth_connected_right);
|
||||||
|
LV_IMG_DECLARE(bluetooth_disconnected_right);
|
||||||
|
LV_IMG_DECLARE(bluetooth_connected_1);
|
||||||
|
LV_IMG_DECLARE(bluetooth_connected_2);
|
||||||
|
LV_IMG_DECLARE(bluetooth_connected_3);
|
||||||
|
LV_IMG_DECLARE(bluetooth_connected_4);
|
||||||
|
LV_IMG_DECLARE(bluetooth_connected_5);
|
||||||
|
LV_IMG_DECLARE(bluetooth_advertising_1);
|
||||||
|
LV_IMG_DECLARE(bluetooth_advertising_2);
|
||||||
|
LV_IMG_DECLARE(bluetooth_advertising_3);
|
||||||
|
LV_IMG_DECLARE(bluetooth_advertising_4);
|
||||||
|
LV_IMG_DECLARE(bluetooth_advertising_5);
|
||||||
|
LV_IMG_DECLARE(USB_connected);
|
||||||
|
|
||||||
|
static sys_slist_t widgets = SYS_SLIST_STATIC_INIT(&widgets);
|
||||||
|
|
||||||
|
struct output_status_state {
|
||||||
|
enum zmk_endpoint selected_endpoint;
|
||||||
|
bool active_profile_connected;
|
||||||
|
bool active_profile_bonded;
|
||||||
|
uint8_t active_profile_index;
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct output_status_state get_state(const zmk_event_t *_eh) {
|
||||||
|
return (struct output_status_state){.selected_endpoint = zmk_endpoints_selected(),
|
||||||
|
.active_profile_connected =
|
||||||
|
zmk_ble_active_profile_is_connected(),
|
||||||
|
.active_profile_bonded = !zmk_ble_active_profile_is_open(),
|
||||||
|
.active_profile_index = zmk_ble_active_profile_index()};
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void set_status_symbol(lv_obj_t *icon, struct output_status_state state) {
|
||||||
|
switch (state.selected_endpoint) {
|
||||||
|
case ZMK_ENDPOINT_USB:
|
||||||
|
lv_img_set_src(icon, &USB_connected);
|
||||||
|
break;
|
||||||
|
case ZMK_ENDPOINT_BLE:
|
||||||
|
if (state.active_profile_bonded) {
|
||||||
|
if (state.active_profile_connected) {
|
||||||
|
// sprintf(text, LV_SYMBOL_BLUETOOTH "%i " LV_SYMBOL_OK, active_profile_index);
|
||||||
|
switch (state.active_profile_index) {
|
||||||
|
case 0:
|
||||||
|
lv_img_set_src(icon, &bluetooth_connected_1);
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
lv_img_set_src(icon, &bluetooth_connected_2);
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
lv_img_set_src(icon, &bluetooth_connected_3);
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
lv_img_set_src(icon, &bluetooth_connected_4);
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
lv_img_set_src(icon, &bluetooth_connected_5);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
lv_img_set_src(icon, &bluetooth_disconnected_right);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
switch (state.active_profile_index) {
|
||||||
|
case 0:
|
||||||
|
lv_img_set_src(icon, &bluetooth_advertising_1);
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
lv_img_set_src(icon, &bluetooth_advertising_2);
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
lv_img_set_src(icon, &bluetooth_advertising_3);
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
lv_img_set_src(icon, &bluetooth_advertising_4);
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
lv_img_set_src(icon, &bluetooth_advertising_5);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void output_status_update_cb(struct output_status_state state) {
|
||||||
|
struct zmk_widget_output_status *widget;
|
||||||
|
SYS_SLIST_FOR_EACH_CONTAINER(&widgets, widget, node) { set_status_symbol(widget->obj, state); }
|
||||||
|
}
|
||||||
|
|
||||||
|
ZMK_DISPLAY_WIDGET_LISTENER(widget_output_status, struct output_status_state,
|
||||||
|
output_status_update_cb, get_state)
|
||||||
|
ZMK_SUBSCRIPTION(widget_output_status, zmk_endpoint_selection_changed);
|
||||||
|
|
||||||
|
#if IS_ENABLED(CONFIG_USB_DEVICE_STACK)
|
||||||
|
ZMK_SUBSCRIPTION(widget_output_status, zmk_usb_conn_state_changed);
|
||||||
|
#endif
|
||||||
|
#if defined(CONFIG_ZMK_BLE)
|
||||||
|
ZMK_SUBSCRIPTION(widget_output_status, zmk_ble_active_profile_changed);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
int zmk_widget_output_status_init(struct zmk_widget_output_status *widget, lv_obj_t *parent) {
|
||||||
|
widget->obj = lv_img_create(parent, NULL);
|
||||||
|
|
||||||
|
lv_obj_set_size(widget->obj, 40, 15);
|
||||||
|
|
||||||
|
sys_slist_append(&widgets, &widget->node);
|
||||||
|
|
||||||
|
widget_output_status_init();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
lv_obj_t *zmk_widget_output_status_obj(struct zmk_widget_output_status *widget) {
|
||||||
|
return widget->obj;
|
||||||
|
}
|
19
app/boards/arm/corneish_zen/widgets/output_status.h
Normal file
19
app/boards/arm/corneish_zen/widgets/output_status.h
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
#include <kernel.h>
|
||||||
|
|
||||||
|
struct zmk_widget_output_status {
|
||||||
|
sys_snode_t node;
|
||||||
|
lv_obj_t *obj;
|
||||||
|
};
|
||||||
|
|
||||||
|
int zmk_widget_output_status_init(struct zmk_widget_output_status *widget, lv_obj_t *parent);
|
||||||
|
lv_obj_t *zmk_widget_output_status_obj(struct zmk_widget_output_status *widget);
|
61
app/boards/arm/corneish_zen/widgets/peripheral_status.c
Normal file
61
app/boards/arm/corneish_zen/widgets/peripheral_status.c
Normal file
|
@ -0,0 +1,61 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <kernel.h>
|
||||||
|
#include <bluetooth/services/bas.h>
|
||||||
|
|
||||||
|
#include <logging/log.h>
|
||||||
|
LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
|
||||||
|
|
||||||
|
#include <zmk/display.h>
|
||||||
|
#include "peripheral_status.h"
|
||||||
|
#include <zmk/event_manager.h>
|
||||||
|
#include <zmk/split/bluetooth/peripheral.h>
|
||||||
|
#include <zmk/events/split_peripheral_status_changed.h>
|
||||||
|
|
||||||
|
LV_IMG_DECLARE(bluetooth_connected_right);
|
||||||
|
LV_IMG_DECLARE(bluetooth_disconnected_right);
|
||||||
|
|
||||||
|
static sys_slist_t widgets = SYS_SLIST_STATIC_INIT(&widgets);
|
||||||
|
|
||||||
|
struct peripheral_status_state {
|
||||||
|
bool connected;
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct peripheral_status_state get_state(const zmk_event_t *_eh) {
|
||||||
|
return (struct peripheral_status_state){.connected = zmk_split_bt_peripheral_is_connected()};
|
||||||
|
}
|
||||||
|
|
||||||
|
static void set_status_symbol(lv_obj_t *icon, struct peripheral_status_state state) {
|
||||||
|
LOG_DBG("halves connected? %s", state.connected ? "true" : "false");
|
||||||
|
|
||||||
|
lv_img_set_src(icon,
|
||||||
|
state.connected ? &bluetooth_connected_right : &bluetooth_disconnected_right);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void output_status_update_cb(struct peripheral_status_state state) {
|
||||||
|
struct zmk_widget_peripheral_status *widget;
|
||||||
|
SYS_SLIST_FOR_EACH_CONTAINER(&widgets, widget, node) { set_status_symbol(widget->obj, state); }
|
||||||
|
}
|
||||||
|
|
||||||
|
ZMK_DISPLAY_WIDGET_LISTENER(widget_peripheral_status, struct peripheral_status_state,
|
||||||
|
output_status_update_cb, get_state)
|
||||||
|
ZMK_SUBSCRIPTION(widget_peripheral_status, zmk_split_peripheral_status_changed);
|
||||||
|
|
||||||
|
int zmk_widget_peripheral_status_init(struct zmk_widget_peripheral_status *widget,
|
||||||
|
lv_obj_t *parent) {
|
||||||
|
widget->obj = lv_img_create(parent, NULL);
|
||||||
|
|
||||||
|
sys_slist_append(&widgets, &widget->node);
|
||||||
|
|
||||||
|
widget_peripheral_status_init();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
lv_obj_t *zmk_widget_peripheral_status_obj(struct zmk_widget_peripheral_status *widget) {
|
||||||
|
return widget->obj;
|
||||||
|
}
|
20
app/boards/arm/corneish_zen/widgets/peripheral_status.h
Normal file
20
app/boards/arm/corneish_zen/widgets/peripheral_status.h
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Darryl deHaan
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
#include <kernel.h>
|
||||||
|
|
||||||
|
struct zmk_widget_peripheral_status {
|
||||||
|
sys_snode_t node;
|
||||||
|
lv_obj_t *obj;
|
||||||
|
};
|
||||||
|
|
||||||
|
int zmk_widget_peripheral_status_init(struct zmk_widget_peripheral_status *widget,
|
||||||
|
lv_obj_t *parent);
|
||||||
|
lv_obj_t *zmk_widget_peripheral_status_obj(struct zmk_widget_peripheral_status *widget);
|
|
@ -16,6 +16,7 @@
|
||||||
zephyr,sram = &sram0;
|
zephyr,sram = &sram0;
|
||||||
zephyr,flash = &flash0;
|
zephyr,flash = &flash0;
|
||||||
zephyr,console = &cdc_acm_uart;
|
zephyr,console = &cdc_acm_uart;
|
||||||
|
zmk,battery = &vbatt;
|
||||||
};
|
};
|
||||||
|
|
||||||
leds {
|
leds {
|
||||||
|
@ -34,6 +35,14 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
vbatt: vbatt {
|
||||||
|
compatible = "zmk,battery-voltage-divider";
|
||||||
|
label = "BATTERY";
|
||||||
|
io-channels = <&adc 0>;
|
||||||
|
output-ohms = <1000000>;
|
||||||
|
full-ohms = <(1000000 + 1000000)>;
|
||||||
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
&adc {
|
&adc {
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
file_format: "1"
|
||||||
|
id: nrf52840dk_nrf52840
|
||||||
|
name: Nordic nRF52840 DK
|
||||||
|
type: board
|
||||||
|
arch: arm
|
||||||
|
outputs:
|
||||||
|
- usb
|
||||||
|
- ble
|
||||||
|
url: https://www.nordicsemi.com/Products/Development-hardware/nrf52840-dk
|
||||||
|
exposes: [arduino_uno]
|
|
@ -0,0 +1,10 @@
|
||||||
|
file_format: "1"
|
||||||
|
id: nrf5340dk_nrf5340_cpuapp
|
||||||
|
name: Nordic nRF5340 DK
|
||||||
|
type: board
|
||||||
|
arch: arm
|
||||||
|
outputs:
|
||||||
|
- usb
|
||||||
|
- ble
|
||||||
|
url: https://www.nordicsemi.com/Products/Development-hardware/nrf5340-dk
|
||||||
|
exposes: [arduino_uno]
|
|
@ -2,9 +2,9 @@ config BOARD_ENABLE_DCDC
|
||||||
bool "Enable DCDC mode"
|
bool "Enable DCDC mode"
|
||||||
select SOC_DCDC_NRF52X
|
select SOC_DCDC_NRF52X
|
||||||
default y
|
default y
|
||||||
depends on (BOARD_NRFMICRO_11 || BOARD_NRFMICRO_11_FLIPPED || BOARD_NRFMICRO_13)
|
depends on (BOARD_NRFMICRO_11 || BOARD_NRFMICRO_11_FLIPPED || BOARD_NRFMICRO_13 || BOARD_NRFMICRO_13_52833)
|
||||||
|
|
||||||
config BOARD_NRFMICRO_CHARGER
|
config BOARD_NRFMICRO_CHARGER
|
||||||
bool "Enable battery charger"
|
bool "Enable battery charger"
|
||||||
default y
|
default y
|
||||||
depends on (BOARD_NRFMICRO_13)
|
depends on (BOARD_NRFMICRO_13 || BOARD_NRFMICRO_13_52833)
|
||||||
|
|
|
@ -14,3 +14,7 @@ config BOARD_NRFMICRO_11_FLIPPED
|
||||||
config BOARD_NRFMICRO_13
|
config BOARD_NRFMICRO_13
|
||||||
bool "nrfmicro_13"
|
bool "nrfmicro_13"
|
||||||
depends on SOC_NRF52840_QIAA
|
depends on SOC_NRF52840_QIAA
|
||||||
|
|
||||||
|
config BOARD_NRFMICRO_13_52833
|
||||||
|
bool "nrfmicro_13_52833"
|
||||||
|
depends on SOC_NRF52833_QIAA
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
# Copyright (c) 2020 The ZMK Contributors
|
# Copyright (c) 2020 The ZMK Contributors
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
if BOARD_NRFMICRO_11 || BOARD_NRFMICRO_11_FLIPPED || BOARD_NRFMICRO_13
|
if BOARD_NRFMICRO_11 || BOARD_NRFMICRO_11_FLIPPED || BOARD_NRFMICRO_13 || BOARD_NRFMICRO_13_52833
|
||||||
|
|
||||||
config BOARD
|
config BOARD
|
||||||
default "nrfmicro"
|
default "nrfmicro"
|
||||||
|
@ -27,11 +27,11 @@ config ZMK_USB
|
||||||
config PINMUX
|
config PINMUX
|
||||||
default y
|
default y
|
||||||
|
|
||||||
if BOARD_NRFMICRO_13
|
if BOARD_NRFMICRO_13 || BOARD_NRFMICRO_13_52833
|
||||||
|
|
||||||
config BOARD_NRFMICRO_CHARGER
|
config BOARD_NRFMICRO_CHARGER
|
||||||
default y
|
default y
|
||||||
|
|
||||||
endif # BOARD_NRFMICRO_13
|
endif # BOARD_NRFMICRO_13 || BOARD_NRFMICRO_13_52833
|
||||||
|
|
||||||
endif # BOARD_NRFMICRO_11 || BOARD_NRFMICRO_11_FLIPPED || BOARD_NRFMICRO_13
|
endif # BOARD_NRFMICRO_11 || BOARD_NRFMICRO_11_FLIPPED || BOARD_NRFMICRO_13 || BOARD_NRFMICRO_13_52833
|
||||||
|
|
59
app/boards/arm/nrfmicro/arduino_pro_micro_pins_52833.dtsi
Normal file
59
app/boards/arm/nrfmicro/arduino_pro_micro_pins_52833.dtsi
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2020 The ZMK Contributors
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/ {
|
||||||
|
pro_micro: connector {
|
||||||
|
compatible = "arduino-pro-micro";
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
gpio-map-mask = <0xffffffff 0xffffffc0>;
|
||||||
|
gpio-map-pass-thru = <0 0x3f>;
|
||||||
|
gpio-map
|
||||||
|
= <0 0 &gpio0 8 0> /* D0 */
|
||||||
|
, <1 0 &gpio0 6 0> /* D1 */
|
||||||
|
, <2 0 &gpio0 15 0> /* D2 */
|
||||||
|
, <3 0 &gpio0 17 0> /* D3 */
|
||||||
|
, <4 0 &gpio0 20 0> /* D4/A6 */
|
||||||
|
, <5 0 &gpio0 13 0> /* D5 */
|
||||||
|
, <6 0 &gpio0 24 0> /* D6/A7 */
|
||||||
|
, <7 0 &gpio0 9 0> /* D7 */
|
||||||
|
, <8 0 &gpio0 10 0> /* D8/A8 */
|
||||||
|
, <9 0 &gpio1 6 0> /* D9/A9 */
|
||||||
|
, <10 0 &gpio1 4 0> /* D10/A10 */
|
||||||
|
, <16 0 &gpio0 28 0> /* D16 */
|
||||||
|
, <14 0 &gpio0 3 0> /* D14 */
|
||||||
|
, <15 0 &gpio1 5 0> /* D15 */
|
||||||
|
, <18 0 &gpio0 2 0> /* D18/A0 */
|
||||||
|
, <19 0 &gpio0 29 0> /* D19/A1 */
|
||||||
|
, <20 0 &gpio0 31 0> /* D20/A2 */
|
||||||
|
, <21 0 &gpio0 30 0> /* D21/A3 */
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
|
pro_micro_a: connector_a {
|
||||||
|
compatible = "arduino-pro-micro";
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
gpio-map-mask = <0xffffffff 0xffffffc0>;
|
||||||
|
gpio-map-pass-thru = <0 0x3f>;
|
||||||
|
gpio-map
|
||||||
|
= <0 0 &gpio0 2 0> /* D18/A0 */
|
||||||
|
, <1 0 &gpio0 29 0> /* D19/A1 */
|
||||||
|
, <2 0 &gpio0 31 0> /* D20/A2 */
|
||||||
|
, <3 0 &gpio0 30 0> /* D21/A3 */
|
||||||
|
, <6 0 &gpio0 20 0> /* D4/A6 */
|
||||||
|
, <7 0 &gpio0 24 0> /* D6/A7 */
|
||||||
|
, <8 0 &gpio0 10 0> /* D8/A8 */
|
||||||
|
, <9 0 &gpio1 6 0> /* D9/A9 */
|
||||||
|
, <10 0 &gpio1 11 0> /* D10/A10 */
|
||||||
|
;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
pro_micro_d: &pro_micro {};
|
||||||
|
pro_micro_i2c: &i2c0 {};
|
||||||
|
pro_micro_spi: &spi0 {};
|
||||||
|
pro_micro_serial: &uart0 {};
|
121
app/boards/arm/nrfmicro/nrfmicro_13_52833.dts
Normal file
121
app/boards/arm/nrfmicro/nrfmicro_13_52833.dts
Normal file
|
@ -0,0 +1,121 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2020 The ZMK Contributors
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
#include <nordic/nrf52833_qiaa.dtsi>
|
||||||
|
#include "arduino_pro_micro_pins_52833.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "nrfmicro";
|
||||||
|
compatible = "joric,nrfmicro";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
zephyr,code-partition = &code_partition;
|
||||||
|
zephyr,sram = &sram0;
|
||||||
|
zephyr,flash = &flash0;
|
||||||
|
zephyr,console = &cdc_acm_uart;
|
||||||
|
zmk,battery = &vbatt;
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
blue_led: led_0 {
|
||||||
|
gpios = <&gpio0 25 GPIO_ACTIVE_HIGH>;
|
||||||
|
label = "Blue LED";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ext-power {
|
||||||
|
compatible = "zmk,ext-power-generic";
|
||||||
|
label = "EXT_POWER";
|
||||||
|
control-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
vbatt: vbatt {
|
||||||
|
compatible = "zmk,battery-voltage-divider";
|
||||||
|
label = "BATTERY";
|
||||||
|
io-channels = <&adc 2>;
|
||||||
|
output-ohms = <2000000>;
|
||||||
|
full-ohms = <(2000000 + 820000)>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&adc {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpiote {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&i2c0 {
|
||||||
|
compatible = "nordic,nrf-twi";
|
||||||
|
sda-pin = <15>;
|
||||||
|
scl-pin = <17>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&uart0 {
|
||||||
|
compatible = "nordic,nrf-uarte";
|
||||||
|
tx-pin = <6>;
|
||||||
|
rx-pin = <8>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbd {
|
||||||
|
status = "okay";
|
||||||
|
cdc_acm_uart: cdc_acm_uart {
|
||||||
|
compatible = "zephyr,cdc-acm-uart";
|
||||||
|
label = "CDC_ACM_0";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
&flash0 {
|
||||||
|
/*
|
||||||
|
* For more information, see:
|
||||||
|
* http://docs.zephyrproject.org/latest/devices/dts/flash_partitions.html
|
||||||
|
*/
|
||||||
|
partitions {
|
||||||
|
compatible = "fixed-partitions";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
|
||||||
|
sd_partition: partition@0 {
|
||||||
|
label = "softdevice";
|
||||||
|
reg = <0x00000000 0x00026000>;
|
||||||
|
};
|
||||||
|
code_partition: partition@26000 {
|
||||||
|
label = "code_partition";
|
||||||
|
reg = <0x00026000 0x00046000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The flash starting at 0x0006c000 and ending at
|
||||||
|
* 0x00073fff is reserved for use by the application.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Storage partition will be used by FCB/LittleFS/NVS
|
||||||
|
* if enabled.
|
||||||
|
*/
|
||||||
|
storage_partition: partition@6c000 {
|
||||||
|
label = "storage";
|
||||||
|
reg = <0x0006c000 0x00008000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
boot_partition: partition@74000 {
|
||||||
|
label = "adafruit_boot";
|
||||||
|
reg = <0x00074000 0x0000c000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
15
app/boards/arm/nrfmicro/nrfmicro_13_52833.yaml
Normal file
15
app/boards/arm/nrfmicro/nrfmicro_13_52833.yaml
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
identifier: nrfmicro_13_52833
|
||||||
|
name: nrfmicro_13_52833
|
||||||
|
type: mcu
|
||||||
|
arch: arm
|
||||||
|
toolchain:
|
||||||
|
- zephyr
|
||||||
|
- gnuarmemb
|
||||||
|
- xtools
|
||||||
|
supported:
|
||||||
|
- adc
|
||||||
|
- usb_device
|
||||||
|
- ble
|
||||||
|
- ieee802154
|
||||||
|
- pwm
|
||||||
|
- watchdog
|
10
app/boards/arm/nrfmicro/nrfmicro_13_52833.zmk.yml
Normal file
10
app/boards/arm/nrfmicro/nrfmicro_13_52833.zmk.yml
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
file_format: "1"
|
||||||
|
id: nrfmicro_13_52833
|
||||||
|
name: nRFMicro 1.3/1.4 (nRF52833)
|
||||||
|
type: board
|
||||||
|
arch: arm
|
||||||
|
outputs:
|
||||||
|
- usb
|
||||||
|
- ble
|
||||||
|
url: https://github.com/joric/nrfmicro/
|
||||||
|
exposes: [pro_micro]
|
23
app/boards/arm/nrfmicro/nrfmicro_13_52833_defconfig
Normal file
23
app/boards/arm/nrfmicro/nrfmicro_13_52833_defconfig
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
CONFIG_SOC_SERIES_NRF52X=y
|
||||||
|
CONFIG_SOC_NRF52833_QIAA=y
|
||||||
|
CONFIG_BOARD_NRFMICRO_13_52833=y
|
||||||
|
|
||||||
|
# Enable MPU
|
||||||
|
CONFIG_ARM_MPU=y
|
||||||
|
|
||||||
|
# enable GPIO
|
||||||
|
CONFIG_GPIO=y
|
||||||
|
|
||||||
|
CONFIG_USE_DT_CODE_PARTITION=y
|
||||||
|
CONFIG_BUILD_OUTPUT_UF2=y
|
||||||
|
|
||||||
|
CONFIG_MPU_ALLOW_FLASH_WRITE=y
|
||||||
|
CONFIG_NVS=y
|
||||||
|
CONFIG_SETTINGS_NVS=y
|
||||||
|
CONFIG_FLASH=y
|
||||||
|
CONFIG_FLASH_PAGE_LAYOUT=y
|
||||||
|
CONFIG_FLASH_MAP=y
|
||||||
|
CONFIG_CLOCK_CONTROL_NRF=y
|
||||||
|
CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y
|
|
@ -14,7 +14,7 @@
|
||||||
static int pinmux_nrfmicro_init(const struct device *port) {
|
static int pinmux_nrfmicro_init(const struct device *port) {
|
||||||
ARG_UNUSED(port);
|
ARG_UNUSED(port);
|
||||||
|
|
||||||
#if CONFIG_BOARD_NRFMICRO_13
|
#if (CONFIG_BOARD_NRFMICRO_13 || CONFIG_BOARD_NRFMICRO_13_52833)
|
||||||
const struct device *p0 = device_get_binding("GPIO_0");
|
const struct device *p0 = device_get_binding("GPIO_0");
|
||||||
#if CONFIG_BOARD_NRFMICRO_CHARGER
|
#if CONFIG_BOARD_NRFMICRO_CHARGER
|
||||||
gpio_pin_configure(p0, 5, GPIO_OUTPUT);
|
gpio_pin_configure(p0, 5, GPIO_OUTPUT);
|
||||||
|
|
7
app/boards/arm/pillbug/Kconfig
Normal file
7
app/boards/arm/pillbug/Kconfig
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
config BOARD_ENABLE_DCDC
|
||||||
|
bool "Enable DCDC mode"
|
||||||
|
select SOC_DCDC_NRF52X
|
||||||
|
default y
|
||||||
|
depends on (BOARD_PILLBUG)
|
6
app/boards/arm/pillbug/Kconfig.board
Normal file
6
app/boards/arm/pillbug/Kconfig.board
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
# Copyright (c) 2022 The ZMK Contributors
|
||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
config BOARD_PILLBUG
|
||||||
|
bool "PillBug"
|
||||||
|
depends on SOC_NRF52840_QIAA
|
25
app/boards/arm/pillbug/Kconfig.defconfig
Normal file
25
app/boards/arm/pillbug/Kconfig.defconfig
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
# Copyright (c) 2022 The ZMK Contributors
|
||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
if BOARD_PILLBUG
|
||||||
|
|
||||||
|
config BOARD
|
||||||
|
default "PillBug"
|
||||||
|
|
||||||
|
if USB_DEVICE_STACK
|
||||||
|
|
||||||
|
config USB_NRFX
|
||||||
|
default y
|
||||||
|
|
||||||
|
endif # USB_DEVICE_STACK
|
||||||
|
|
||||||
|
config BT_CTLR
|
||||||
|
default BT
|
||||||
|
|
||||||
|
config ZMK_BLE
|
||||||
|
default y
|
||||||
|
|
||||||
|
config ZMK_USB
|
||||||
|
default y
|
||||||
|
|
||||||
|
endif # BOARD_PILLBUG
|
50
app/boards/arm/pillbug/blackpill_pins.dtsi
Normal file
50
app/boards/arm/pillbug/blackpill_pins.dtsi
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2022 Kyle McCreery
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*/
|
||||||
|
|
||||||
|
/ {
|
||||||
|
blackpill: connector {
|
||||||
|
compatible = "blackpill";
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
gpio-map-mask = <0xffffffff 0xffffffc0>;
|
||||||
|
gpio-map-pass-thru = <0 0x3f>;
|
||||||
|
gpio-map
|
||||||
|
= <2 0 &gpio0 9 0> /* PC13 */
|
||||||
|
, <3 0 &gpio0 10 0> /* PC14 */
|
||||||
|
, <4 0 &gpio1 6 0> /* PC15 */
|
||||||
|
, <10 0 &gpio0 25 0> /* PA0 */
|
||||||
|
, <11 0 &gpio0 5 0> /* PA1 */
|
||||||
|
, <12 0 &gpio1 15 0> /* PA2 */
|
||||||
|
, <13 0 &gpio0 2 0> /* PA3 */
|
||||||
|
, <14 0 &gpio1 11 0> /* PA4 */
|
||||||
|
, <15 0 &gpio1 8 0> /* PA5 */
|
||||||
|
, <16 0 &gpio0 26 0> /* PA6 */
|
||||||
|
, <17 0 &gpio0 11 0> /* PA7 */
|
||||||
|
, <18 0 &gpio1 9 0> /* PB0 */
|
||||||
|
, <19 0 &gpio1 14 0> /* PB1 */
|
||||||
|
, <20 0 &gpio0 3 0> /* PB2 */
|
||||||
|
, <21 0 &gpio0 31 0> /* PB10 */
|
||||||
|
, <25 0 &gpio0 12 0> /* PB12 */
|
||||||
|
, <26 0 &gpio0 19 0> /* PB13 */
|
||||||
|
, <27 0 &gpio1 1 0> /* PB14 */
|
||||||
|
, <28 0 &gpio0 29 0> /* PB15 */
|
||||||
|
, <29 0 &gpio1 13 0> /* PA8 */
|
||||||
|
, <30 0 &gpio0 6 0> /* PA9 */
|
||||||
|
, <31 0 &gpio0 8 0> /* PA10 */
|
||||||
|
, <38 0 &gpio1 0 0> /* PA15 */
|
||||||
|
, <39 0 &gpio1 10 0> /* PB3 */
|
||||||
|
, <40 0 &gpio1 2 0> /* PB4 */
|
||||||
|
, <41 0 &gpio1 4 0> /* PB5 */
|
||||||
|
, <42 0 &gpio0 13 0> /* PB6 */
|
||||||
|
, <43 0 &gpio0 15 0> /* PB7 */
|
||||||
|
, <45 0 &gpio0 17 0> /* PB8 */
|
||||||
|
, <46 0 &gpio0 24 0> /* PB9 */
|
||||||
|
;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
blackpill_i2c: &i2c0 {};
|
||||||
|
blackpill_spi: &spi1 {};
|
||||||
|
blackpill_serial: &uart0 {};
|
6
app/boards/arm/pillbug/board.cmake
Normal file
6
app/boards/arm/pillbug/board.cmake
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
set(OPENOCD_NRF5_SUBFAMILY nrf52)
|
||||||
|
board_runner_args(nrfjprog "--nrf-family=NRF52" "--softreset")
|
||||||
|
include(${ZEPHYR_BASE}/boards/common/nrfjprog.board.cmake)
|
||||||
|
include(${ZEPHYR_BASE}/boards/common/openocd-nrf5.board.cmake)
|
132
app/boards/arm/pillbug/pillbug.dts
Normal file
132
app/boards/arm/pillbug/pillbug.dts
Normal file
|
@ -0,0 +1,132 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2022 The ZMK Contributors
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include <nordic/nrf52840_qiaa.dtsi>
|
||||||
|
#include "blackpill_pins.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "PillBug";
|
||||||
|
compatible = "pillbug";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
zephyr,code-partition = &code_partition;
|
||||||
|
zephyr,sram = &sram0;
|
||||||
|
zephyr,flash = &flash0;
|
||||||
|
zephyr,console = &cdc_acm_uart;
|
||||||
|
zmk,battery = &vbatt;
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
blue_led: led_0 {
|
||||||
|
gpios = <&gpio0 20 GPIO_ACTIVE_LOW>;
|
||||||
|
label = "Blue LED";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ext-power {
|
||||||
|
compatible = "zmk,ext-power-generic";
|
||||||
|
label = "EXT_POWER";
|
||||||
|
control-gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
|
||||||
|
init-delay-ms = <50>;
|
||||||
|
};
|
||||||
|
|
||||||
|
vbatt: vbatt {
|
||||||
|
compatible = "zmk,battery-voltage-divider";
|
||||||
|
label = "BATTERY";
|
||||||
|
io-channels = <&adc 2>;
|
||||||
|
output-ohms = <2000000>;
|
||||||
|
full-ohms = <(2000000 + 820000)>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&adc {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpiote {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&i2c0 {
|
||||||
|
compatible = "nordic,nrf-twi";
|
||||||
|
sda-pin = <15>;
|
||||||
|
scl-pin = <13>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&spi1{
|
||||||
|
status = "disabled";
|
||||||
|
compatible = "nordic,nrf-spim";
|
||||||
|
sck-pin = <40>;
|
||||||
|
mosi-pin = <11>;
|
||||||
|
miso-pin = <26>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&uart0 {
|
||||||
|
compatible = "nordic,nrf-uarte";
|
||||||
|
tx-pin = <6>;
|
||||||
|
rx-pin = <8>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbd {
|
||||||
|
status = "okay";
|
||||||
|
cdc_acm_uart: cdc_acm_uart {
|
||||||
|
compatible = "zephyr,cdc-acm-uart";
|
||||||
|
label = "CDC_ACM_0";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
&flash0 {
|
||||||
|
/*
|
||||||
|
* For more information, see:
|
||||||
|
* http://docs.zephyrproject.org/latest/devices/dts/flash_partitions.html
|
||||||
|
*/
|
||||||
|
partitions {
|
||||||
|
compatible = "fixed-partitions";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
|
||||||
|
sd_partition: partition@0 {
|
||||||
|
label = "mbr";
|
||||||
|
reg = <0x00000000 0x00001000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
code_partition: partition@1000 {
|
||||||
|
label = "code_partition";
|
||||||
|
reg = <0x00001000 0x000d3000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The flash starting at 0x000d4000 and ending at
|
||||||
|
* 0x000f3fff is reserved for use by the application.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Storage partition will be used by FCB/LittleFS/NVS
|
||||||
|
* if enabled.
|
||||||
|
*/
|
||||||
|
storage_partition: partition@d4000 {
|
||||||
|
label = "storage";
|
||||||
|
reg = <0x000d4000 0x00020000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
boot_partition: partition@f4000 {
|
||||||
|
label = "adafruit_boot";
|
||||||
|
reg = <0x000f4000 0x0000c000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
15
app/boards/arm/pillbug/pillbug.yaml
Normal file
15
app/boards/arm/pillbug/pillbug.yaml
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
identifier: pillbug
|
||||||
|
name: PillBug
|
||||||
|
type: mcu
|
||||||
|
arch: arm
|
||||||
|
toolchain:
|
||||||
|
- zephyr
|
||||||
|
- gnuarmemb
|
||||||
|
- xtools
|
||||||
|
supported:
|
||||||
|
- adc
|
||||||
|
- usb_device
|
||||||
|
- ble
|
||||||
|
- ieee802154
|
||||||
|
- pwm
|
||||||
|
- watchdog
|
10
app/boards/arm/pillbug/pillbug.zmk.yml
Normal file
10
app/boards/arm/pillbug/pillbug.zmk.yml
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
file_format: "1"
|
||||||
|
id: pillbug
|
||||||
|
name: PillBug
|
||||||
|
type: board
|
||||||
|
arch: arm
|
||||||
|
outputs:
|
||||||
|
- usb
|
||||||
|
- ble
|
||||||
|
url: https://mechwild.com/product/pillbug
|
||||||
|
exposes: [blackpill]
|
22
app/boards/arm/pillbug/pillbug_defconfig
Normal file
22
app/boards/arm/pillbug/pillbug_defconfig
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
# Copyright (c) 2022 The ZMK Contributors
|
||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
CONFIG_SOC_SERIES_NRF52X=y
|
||||||
|
CONFIG_SOC_NRF52840_QIAA=y
|
||||||
|
CONFIG_BOARD_PILLBUG=y
|
||||||
|
|
||||||
|
# Enable MPU
|
||||||
|
CONFIG_ARM_MPU=y
|
||||||
|
|
||||||
|
# enable GPIO
|
||||||
|
CONFIG_GPIO=y
|
||||||
|
|
||||||
|
CONFIG_USE_DT_CODE_PARTITION=y
|
||||||
|
CONFIG_BUILD_OUTPUT_UF2=y
|
||||||
|
|
||||||
|
CONFIG_MPU_ALLOW_FLASH_WRITE=y
|
||||||
|
CONFIG_NVS=y
|
||||||
|
CONFIG_SETTINGS_NVS=y
|
||||||
|
CONFIG_FLASH=y
|
||||||
|
CONFIG_FLASH_PAGE_LAYOUT=y
|
||||||
|
CONFIG_FLASH_MAP=y
|
|
@ -1,3 +1,9 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2020 The ZMK Contributors
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*/
|
||||||
|
|
||||||
#include <behaviors.dtsi>
|
#include <behaviors.dtsi>
|
||||||
#include <dt-bindings/zmk/keys.h>
|
#include <dt-bindings/zmk/keys.h>
|
||||||
|
|
||||||
|
@ -6,16 +12,34 @@
|
||||||
compatible = "zmk,keymap";
|
compatible = "zmk,keymap";
|
||||||
|
|
||||||
default_layer {
|
default_layer {
|
||||||
// -----------------------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------------------
|
||||||
// | TAB | Q | W | E | R | T | Y | U | I | O | P | BSPC |
|
// | TAB | Q | W | E | R | T | Y | U | I | O | P | BSPC |
|
||||||
// | ESC | A | S | D | F | G | H | J | K | L | ; | ' |
|
// | ESC | A | S | D | F | G | H | J | K | L | ; | ' |
|
||||||
// | SHIFT | Z | X | C | V | B | N | M | , | . | / | RET |
|
// | SHIFT | Z | X | C | V | B | N | M | , | . | / | RET |
|
||||||
// | FN | LGUI | LALT | LCTL | LOWR | SPACE | RAIS | LARW | DARW | UARW | RARW |
|
// | | LCTL | LALT | LGUI | LOWR | SPACE | RAIS | LARW | DARW | UARW | RARW |
|
||||||
bindings = <
|
bindings = <
|
||||||
&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp DEL
|
&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp BSPC
|
||||||
&kp ESC &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT
|
&kp ESC &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT
|
||||||
&kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp BSLH &kp RET
|
&kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp SLASH &kp RET
|
||||||
&trans &kp LGUI &kp LALT &kp LCTRL &trans &trans &kp SPACE &trans &kp LEFT &kp DOWN &kp UP &kp RIGHT
|
&trans &kp LCTL &kp LALT &kp LGUI &mo 1 &trans &kp SPACE &mo 2 &kp LEFT &kp DOWN &kp UP &kp RIGHT
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
|
lower {
|
||||||
|
bindings = <
|
||||||
|
&kp LS(GRAVE) &kp LS(N1) &kp LS(N2) &kp LS(N3) &kp LS(N4) &kp LS(N5) &kp LS(N6) &kp LS(N7) &kp LS(N8) &kp LS(N9) &kp LS(N0) &kp DEL
|
||||||
|
&kp DEL &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp UNDER &kp PLUS &kp LBRC &kp RBRC &kp PIPE
|
||||||
|
&trans &kp F7 &kp F8 &kp F9 &kp F10 &kp F11 &kp F12 &kp LS(HASH) &kp LS(BSLH) &kp HOME &kp END &trans
|
||||||
|
&trans &trans &trans &trans &trans &trans &trans &trans &kp C_NEXT &kp C_VOL_DN &kp C_VOL_UP &kp C_PP
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
|
raise {
|
||||||
|
bindings = <
|
||||||
|
&kp GRAVE &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp BSPC
|
||||||
|
&kp DEL &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp MINUS &kp EQUAL &kp LBKT &kp RBKT &kp BSLH
|
||||||
|
&trans &kp F7 &kp F8 &kp F9 &kp F10 &kp F11 &kp F12 &kp HASH &kp BSLH &kp PG_UP &kp PG_DN &trans
|
||||||
|
&reset &bootloader &trans &trans &trans &trans &trans &trans &kp C_NEXT &kp C_VOL_DN &kp C_VOL_UP &kp C_PP
|
||||||
>;
|
>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
4
app/boards/arm/preonic/CMakeLists.txt
Normal file
4
app/boards/arm/preonic/CMakeLists.txt
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
list(APPEND EXTRA_DTC_FLAGS "-qq")
|
||||||
|
|
8
app/boards/arm/preonic/Kconfig.board
Normal file
8
app/boards/arm/preonic/Kconfig.board
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
# Preonic V3 board configuration
|
||||||
|
|
||||||
|
# Copyright (c) 2022 The ZMK Contributors
|
||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
config BOARD_PREONIC_REV3
|
||||||
|
bool "Preonic V3 Keyboard"
|
||||||
|
depends on SOC_STM32F303XC
|
17
app/boards/arm/preonic/Kconfig.defconfig
Normal file
17
app/boards/arm/preonic/Kconfig.defconfig
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
# Preonic keyboard configuration
|
||||||
|
|
||||||
|
# Copyright (c) 2022 The ZMK Contributors
|
||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
if BOARD_PREONIC_REV3
|
||||||
|
|
||||||
|
config ZMK_KEYBOARD_NAME
|
||||||
|
default "Preonic V3"
|
||||||
|
|
||||||
|
config ZMK_USB
|
||||||
|
default y
|
||||||
|
|
||||||
|
config ZMK_KSCAN_MATRIX_POLLING
|
||||||
|
default y
|
||||||
|
|
||||||
|
endif # BOARD_PREONIC_REV3
|
7
app/boards/arm/preonic/board.cmake
Normal file
7
app/boards/arm/preonic/board.cmake
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
board_runner_args(dfu-util "--pid=0483:df11" "--alt=0" "--dfuse")
|
||||||
|
board_runner_args(jlink "--device=STM32F303VC" "--speed=4000")
|
||||||
|
|
||||||
|
include(${ZEPHYR_BASE}/boards/common/dfu-util.board.cmake)
|
||||||
|
include(${ZEPHYR_BASE}/boards/common/jlink.board.cmake)
|
139
app/boards/arm/preonic/preonic_rev3.dts
Normal file
139
app/boards/arm/preonic/preonic_rev3.dts
Normal file
|
@ -0,0 +1,139 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2022 The ZMK Contributors
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
#include <st/f3/stm32f303Xc.dtsi>
|
||||||
|
#include <st/f3/stm32f303c(b-c)tx-pinctrl.dtsi>
|
||||||
|
#include <dt-bindings/zmk/matrix_transform.h>
|
||||||
|
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "Preonic PCD, rev3";
|
||||||
|
compatible = "preonic,rev3", "st,stm32f303";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
zephyr,sram = &sram0;
|
||||||
|
zephyr,flash = &flash0;
|
||||||
|
zmk,kscan = &kscan0;
|
||||||
|
zmk,matrix_transform = &layout_grid_transform;
|
||||||
|
};
|
||||||
|
|
||||||
|
kscan0: kscan_0 {
|
||||||
|
compatible = "zmk,kscan-gpio-matrix";
|
||||||
|
label = "KSCAN";
|
||||||
|
diode-direction = "col2row";
|
||||||
|
row-gpios
|
||||||
|
= <&gpioa 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
, <&gpioa 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
, <&gpioa 8 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
, <&gpiob 15 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
, <&gpioc 13 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
, <&gpioc 14 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
, <&gpioc 15 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
, <&gpioa 2 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
, <&gpioa 3 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
, <&gpioa 6 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||||
|
;
|
||||||
|
col-gpios
|
||||||
|
= <&gpiob 11 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpiob 10 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpiob 2 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpiob 1 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpioa 7 GPIO_ACTIVE_HIGH>
|
||||||
|
, <&gpiob 0 GPIO_ACTIVE_HIGH>
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
|
layout_grid_transform:
|
||||||
|
keymap_transform_0 {
|
||||||
|
compatible = "zmk,matrix-transform";
|
||||||
|
columns = <6>;
|
||||||
|
rows = <10>;
|
||||||
|
map = <
|
||||||
|
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(4,0) RC(4,1) RC(4,2) RC(4,3) RC(4,4) RC(4,5)
|
||||||
|
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(5,0) RC(5,1) RC(5,2) RC(5,3) RC(5,4) RC(5,5)
|
||||||
|
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(6,0) RC(6,1) RC(6,2) RC(6,3) RC(6,4) RC(6,5)
|
||||||
|
RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(7,0) RC(7,1) RC(7,2) RC(7,3) RC(7,4) RC(7,5)
|
||||||
|
RC(8,0) RC(8,1) RC(8,2) RC(9,3) RC(9,4) RC(9,5) RC(9,0) RC(9,1) RC(9,2) RC(8,3) RC(8,4) RC(8,5)
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
|
layout_mit_transform:
|
||||||
|
keymap_transform_1 {
|
||||||
|
compatible = "zmk,matrix-transform";
|
||||||
|
columns = <6>;
|
||||||
|
rows = <10>;
|
||||||
|
map = <
|
||||||
|
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(4,0) RC(4,1) RC(4,2) RC(4,3) RC(4,4) RC(4,5)
|
||||||
|
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(5,0) RC(5,1) RC(5,2) RC(5,3) RC(5,4) RC(5,5)
|
||||||
|
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(6,0) RC(6,1) RC(6,2) RC(6,3) RC(6,4) RC(6,5)
|
||||||
|
RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(7,0) RC(7,1) RC(7,2) RC(7,3) RC(7,4) RC(7,5)
|
||||||
|
RC(8,0) RC(8,1) RC(8,2) RC(9,3) RC(9,4) RC(9,0) RC(9,1) RC(9,2) RC(8,3) RC(8,4) RC(8,5)
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
|
||||||
|
layout_2x2u_transform:
|
||||||
|
keymap_transform_2 {
|
||||||
|
compatible = "zmk,matrix-transform";
|
||||||
|
columns = <6>;
|
||||||
|
rows = <10>;
|
||||||
|
map = <
|
||||||
|
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(4,0) RC(4,1) RC(4,2) RC(4,3) RC(4,4) RC(4,5)
|
||||||
|
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(5,0) RC(5,1) RC(5,2) RC(5,3) RC(5,4) RC(5,5)
|
||||||
|
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(6,0) RC(6,1) RC(6,2) RC(6,3) RC(6,4) RC(6,5)
|
||||||
|
RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(7,0) RC(7,1) RC(7,2) RC(7,3) RC(7,4) RC(7,5)
|
||||||
|
RC(8,0) RC(8,1) RC(8,2) RC(9,3) RC(9,5) RC(9,1) RC(9,2) RC(8,3) RC(8,4) RC(8,5)
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&usb {
|
||||||
|
pinctrl-0 = <&usb_dm_pa11 &usb_dp_pa12>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
cdc_acm_uart: cdc_acm_uart {
|
||||||
|
compatible = "zephyr,cdc-acm-uart";
|
||||||
|
label = "CDC_ACM_0";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&clk_hse {
|
||||||
|
status = "okay";
|
||||||
|
clock-frequency = <DT_FREQ_M(8)>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&pll {
|
||||||
|
prediv = <1>;
|
||||||
|
mul = <9>;
|
||||||
|
clocks = <&clk_hse>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&rcc {
|
||||||
|
clocks = <&pll>;
|
||||||
|
clock-frequency = <DT_FREQ_M(72)>;
|
||||||
|
ahb-prescaler = <1>;
|
||||||
|
apb1-prescaler = <2>;
|
||||||
|
apb2-prescaler = <1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&flash0 {
|
||||||
|
/*
|
||||||
|
* For more information, see:
|
||||||
|
* http://docs.zephyrproject.org/latest/guides/dts/index.html#flash-partitions
|
||||||
|
*/
|
||||||
|
partitions {
|
||||||
|
compatible = "fixed-partitions";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
|
||||||
|
/* Set 6Kb of storage at the end of the 256Kb of flash */
|
||||||
|
storage_partition: partition@3e800 {
|
||||||
|
label = "storage";
|
||||||
|
reg = <0x0003e800 0x00001800>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
65
app/boards/arm/preonic/preonic_rev3.keymap
Normal file
65
app/boards/arm/preonic/preonic_rev3.keymap
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2022 The ZMK Contributors
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <behaviors.dtsi>
|
||||||
|
#include <dt-bindings/zmk/keys.h>
|
||||||
|
#include <dt-bindings/zmk/bt.h>
|
||||||
|
|
||||||
|
#define DEFAULT 0
|
||||||
|
#define LOWER 1
|
||||||
|
#define RAISE 2
|
||||||
|
|
||||||
|
/ {
|
||||||
|
chosen { zmk,matrix_transform = &layout_grid_transform; };
|
||||||
|
keymap {
|
||||||
|
compatible = "zmk,keymap";
|
||||||
|
default_layer {
|
||||||
|
// -------------------------------------------------------------------------------------------------
|
||||||
|
// | GRAV | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | BSPC |
|
||||||
|
// | TAB | Q | W | E | R | T | Y | U | I | O | P | DEL |
|
||||||
|
// | ESC | A | S | D | F | G | H | J | K | L | ; | ' |
|
||||||
|
// | SHIFT | Z | X | C | V | B | N | M | , | . | / | RET |
|
||||||
|
// | | LGUI | LALT | LCTL | LOWER | SPACE | SPACE | RAISE | LEFT | DOWN | UP | RIGHT |
|
||||||
|
bindings = <
|
||||||
|
&kp GRAVE &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp BSPC
|
||||||
|
&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp DEL
|
||||||
|
&kp ESC &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT
|
||||||
|
&kp LSHIFT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp SLASH &kp RET
|
||||||
|
&none &kp LCTRL &kp LALT &kp LGUI &mo LOWER &kp SPACE &kp SPACE &mo RAISE &kp LEFT &kp DOWN &kp UP &kp RIGHT
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
lower {
|
||||||
|
// ------------------------------------------------------------------------------------------
|
||||||
|
// | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | BSPC |
|
||||||
|
// | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | DEL |
|
||||||
|
// | DEL | F1 | F2 | F3 | F4 | F5 | F6 | - | + | [ | ] | | |
|
||||||
|
// | | F7 | F8 | F9 | F10 | F11 | F12 | | LCTL | HOME | END | |
|
||||||
|
// | LALT | | | | | | | | NEXT | VOL- | VOL+ | PLAY |
|
||||||
|
bindings = <
|
||||||
|
&kp LS(GRAVE) &kp LS(N1) &kp LS(N2) &kp LS(N3) &kp LS(N4) &kp LS(N5) &kp LS(N6) &kp LS(N7) &kp LS(N8) &kp LS(N9) &kp LS(N0) &kp BSPC
|
||||||
|
&kp LS(GRAVE) &kp LS(N1) &kp LS(N2) &kp LS(N3) &kp LS(N4) &kp LS(N5) &kp LS(N6) &kp LS(N7) &kp LS(N8) &kp LS(N9) &kp LS(N0) &kp DEL
|
||||||
|
&kp DEL &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp MINUS &kp PLUS &kp LEFT_BRACKET &kp RIGHT_BRACKET &kp PIPE
|
||||||
|
&none &kp F7 &kp F8 &kp F9 &kp F10 &kp F11 &kp F12 &none &kp LCTRL &kp HOME &kp END &none
|
||||||
|
&kp LALT &none &none &none &trans &none &none &none &kp C_NEXT &kp C_VOL_UP &kp C_VOL_UP &kp C_PLAY
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
raise {
|
||||||
|
// -------------------------------------------------------------------------------------------
|
||||||
|
// | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | BSPC |
|
||||||
|
// | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | DEL |
|
||||||
|
// | DEL | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
|
||||||
|
// | | F7 | F8 | F9 | F10 | F11 | F12 | # | \ | PGUP | PGDN | |
|
||||||
|
// | | | | | | SHIFT | | | NEXT | VOL- | VOL+ | PLAY |
|
||||||
|
bindings = <
|
||||||
|
&kp GRAVE &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp BSPC
|
||||||
|
&kp GRAVE &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp DEL
|
||||||
|
&kp DEL &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp MINUS &kp KP_EQUAL &kp LEFT_BRACKET &kp RIGHT_BRACKET &kp BSLH
|
||||||
|
&none &kp F7 &kp F8 &kp F9 &kp F10 &kp F11 &kp F12 &kp HASH &kp BSLH &kp PG_UP &kp PG_DN &none
|
||||||
|
&none &none &none &none &none &kp LSHIFT &none &trans &kp C_NEXT &kp C_VOL_DN &kp C_VOL_UP &kp C_PLAY
|
||||||
|
>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
19
app/boards/arm/preonic/preonic_rev3.yaml
Normal file
19
app/boards/arm/preonic/preonic_rev3.yaml
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
identifier: preonic_rev3
|
||||||
|
name: PREONICREV3
|
||||||
|
type: keyboard
|
||||||
|
arch: arm
|
||||||
|
toolchain:
|
||||||
|
- zephyr
|
||||||
|
- gnuarmemb
|
||||||
|
- xtools
|
||||||
|
ram: 40
|
||||||
|
supported:
|
||||||
|
- gpio
|
||||||
|
- i2c
|
||||||
|
- counter
|
||||||
|
- spi
|
||||||
|
- usb_device
|
||||||
|
- lsm303dlhc
|
||||||
|
- nvs
|
||||||
|
- can
|
||||||
|
- kscan
|
10
app/boards/arm/preonic/preonic_rev3.zmk.yml
Normal file
10
app/boards/arm/preonic/preonic_rev3.zmk.yml
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
file_format: "1"
|
||||||
|
id: preonic_rev3
|
||||||
|
name: Preonic Rev3
|
||||||
|
type: board
|
||||||
|
arch: arm
|
||||||
|
features:
|
||||||
|
- keys
|
||||||
|
outputs:
|
||||||
|
- usb
|
||||||
|
url: https://olkb.com/collections/preonic
|
15
app/boards/arm/preonic/preonic_rev3_defconfig
Normal file
15
app/boards/arm/preonic/preonic_rev3_defconfig
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
CONFIG_SOC_SERIES_STM32F3X=y
|
||||||
|
CONFIG_SOC_STM32F303XC=y
|
||||||
|
# 72MHz system clock
|
||||||
|
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000
|
||||||
|
|
||||||
|
# enable pinctrl
|
||||||
|
CONFIG_PINCTRL=y
|
||||||
|
|
||||||
|
# enable GPIO
|
||||||
|
CONFIG_GPIO=y
|
||||||
|
|
||||||
|
# clock configuration
|
||||||
|
CONFIG_CLOCK_CONTROL=y
|
7
app/boards/blackpill_f401ce.conf
Normal file
7
app/boards/blackpill_f401ce.conf
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
CONFIG_CONSOLE=n
|
||||||
|
CONFIG_SERIAL=n
|
||||||
|
CONFIG_UART_CONSOLE=n
|
||||||
|
CONFIG_UART_INTERRUPT_DRIVEN=n
|
||||||
|
CONFIG_ZMK_USB=y
|
||||||
|
CONFIG_ZMK_BLE=n
|
||||||
|
CONFIG_ZMK_KSCAN_MATRIX_POLLING=y
|
51
app/boards/blackpill_f401ce.overlay
Normal file
51
app/boards/blackpill_f401ce.overlay
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2022 The ZMK Contributors
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/ {
|
||||||
|
blackpill: connector {
|
||||||
|
compatible = "blackpill";
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
gpio-map-mask = <0xffffffff 0xffffffc0>;
|
||||||
|
gpio-map-pass-thru = <0 0x3f>;
|
||||||
|
gpio-map
|
||||||
|
= <2 0 &gpioc 13 0> /* PC13 */
|
||||||
|
, <3 0 &gpioc 14 0> /* PC14 */
|
||||||
|
, <4 0 &gpioc 15 0> /* PC15 */
|
||||||
|
, <10 0 &gpioa 0 0> /* PA0 */
|
||||||
|
, <11 0 &gpioa 1 0> /* PA1 */
|
||||||
|
, <12 0 &gpioa 2 0> /* PA2 */
|
||||||
|
, <13 0 &gpioa 3 0> /* PA3 */
|
||||||
|
, <14 0 &gpioa 4 0> /* PA4 */
|
||||||
|
, <15 0 &gpioa 5 0> /* PA5 */
|
||||||
|
, <16 0 &gpioa 6 0> /* PA6 */
|
||||||
|
, <17 0 &gpioa 7 0> /* PA7 */
|
||||||
|
, <18 0 &gpiob 0 0> /* PB0 */
|
||||||
|
, <19 0 &gpiob 1 0> /* PB1 */
|
||||||
|
, <20 0 &gpiob 2 0> /* PB2 */
|
||||||
|
, <21 0 &gpiob 10 0> /* PB10 */
|
||||||
|
, <25 0 &gpiob 12 0> /* PB12 */
|
||||||
|
, <26 0 &gpiob 13 0> /* PB13 */
|
||||||
|
, <27 0 &gpiob 14 0> /* PB14 */
|
||||||
|
, <28 0 &gpiob 15 0> /* PB15 */
|
||||||
|
, <29 0 &gpioa 8 0> /* PA8 */
|
||||||
|
, <30 0 &gpioa 9 0> /* PA9 */
|
||||||
|
, <31 0 &gpioa 10 0> /* PA10 */
|
||||||
|
, <38 0 &gpioa 15 0> /* PA15 */
|
||||||
|
, <39 0 &gpiob 3 0> /* PB3 */
|
||||||
|
, <40 0 &gpiob 4 0> /* PB4 */
|
||||||
|
, <41 0 &gpiob 5 0> /* PB5 */
|
||||||
|
, <42 0 &gpiob 6 0> /* PB6 */
|
||||||
|
, <43 0 &gpiob 7 0> /* PB7 */
|
||||||
|
, <45 0 &gpiob 8 0> /* PB8 */
|
||||||
|
, <46 0 &gpiob 9 0> /* PB9 */
|
||||||
|
;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
blackpill_i2c: &i2c1 {};
|
||||||
|
blackpill_spi: &spi1 {};
|
||||||
|
blackpill_serial: &usart1 {};
|
7
app/boards/blackpill_f411ce.conf
Normal file
7
app/boards/blackpill_f411ce.conf
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
CONFIG_CONSOLE=n
|
||||||
|
CONFIG_SERIAL=n
|
||||||
|
CONFIG_UART_CONSOLE=n
|
||||||
|
CONFIG_UART_INTERRUPT_DRIVEN=n
|
||||||
|
CONFIG_ZMK_USB=y
|
||||||
|
CONFIG_ZMK_BLE=n
|
||||||
|
CONFIG_ZMK_KSCAN_MATRIX_POLLING=y
|
51
app/boards/blackpill_f411ce.overlay
Normal file
51
app/boards/blackpill_f411ce.overlay
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2022 The ZMK Contributors
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/ {
|
||||||
|
blackpill: connector {
|
||||||
|
compatible = "blackpill";
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
gpio-map-mask = <0xffffffff 0xffffffc0>;
|
||||||
|
gpio-map-pass-thru = <0 0x3f>;
|
||||||
|
gpio-map
|
||||||
|
= <2 0 &gpioc 13 0> /* PC13 */
|
||||||
|
, <3 0 &gpioc 14 0> /* PC14 */
|
||||||
|
, <4 0 &gpioc 15 0> /* PC15 */
|
||||||
|
, <10 0 &gpioa 0 0> /* PA0 */
|
||||||
|
, <11 0 &gpioa 1 0> /* PA1 */
|
||||||
|
, <12 0 &gpioa 2 0> /* PA2 */
|
||||||
|
, <13 0 &gpioa 3 0> /* PA3 */
|
||||||
|
, <14 0 &gpioa 4 0> /* PA4 */
|
||||||
|
, <15 0 &gpioa 5 0> /* PA5 */
|
||||||
|
, <16 0 &gpioa 6 0> /* PA6 */
|
||||||
|
, <17 0 &gpioa 7 0> /* PA7 */
|
||||||
|
, <18 0 &gpiob 0 0> /* PB0 */
|
||||||
|
, <19 0 &gpiob 1 0> /* PB1 */
|
||||||
|
, <20 0 &gpiob 2 0> /* PB2 */
|
||||||
|
, <21 0 &gpiob 10 0> /* PB10 */
|
||||||
|
, <25 0 &gpiob 12 0> /* PB12 */
|
||||||
|
, <26 0 &gpiob 13 0> /* PB13 */
|
||||||
|
, <27 0 &gpiob 14 0> /* PB14 */
|
||||||
|
, <28 0 &gpiob 15 0> /* PB15 */
|
||||||
|
, <29 0 &gpioa 8 0> /* PA8 */
|
||||||
|
, <30 0 &gpioa 9 0> /* PA9 */
|
||||||
|
, <31 0 &gpioa 10 0> /* PA10 */
|
||||||
|
, <38 0 &gpioa 15 0> /* PA15 */
|
||||||
|
, <39 0 &gpiob 3 0> /* PB3 */
|
||||||
|
, <40 0 &gpiob 4 0> /* PB4 */
|
||||||
|
, <41 0 &gpiob 5 0> /* PB5 */
|
||||||
|
, <42 0 &gpiob 6 0> /* PB6 */
|
||||||
|
, <43 0 &gpiob 7 0> /* PB7 */
|
||||||
|
, <45 0 &gpiob 8 0> /* PB8 */
|
||||||
|
, <46 0 &gpiob 9 0> /* PB9 */
|
||||||
|
;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
blackpill_i2c: &i2c1 {};
|
||||||
|
blackpill_spi: &spi1 {};
|
||||||
|
blackpill_serial: &usart1 {};
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue