Commit Graph

117 Commits

Author SHA1 Message Date
Brian S. Stephan a1a3ebbbac
requirements bumps
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-04-08 09:07:50 -05:00
Brian S. Stephan 3e8209e2a5
update .proto snapshot for v0.7.8
this also clarifies the docs a bit regarding versions supported.

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-04-08 09:07:47 -05:00
Brian S. Stephan 3a55cad86f
implement Save As... in the TUI
this allows for loading an existing GP2040-CE dump or board in BOOTSEL
over USB and saving the parsed configuration to a new .bin/.uf2 file.
might be useful for making quick backups or variants of configs

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-03-26 13:47:30 -05:00
Brian S. Stephan f6d3ad02e0
support writing new configs as .uf2 files via the TUI
`edit-config --filename foo.uf2` can now create standalone config UF2
files. still working on reading UF2s, or maybe what edit-config needs is
a "Save As..." in order to read from a board/config and output it to a
new file, but this is a start

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-03-25 12:01:52 -05:00
Brian S. Stephan 449812f1df
optionally dump config to a .uf2 file
this allows for creating a UF2 that writes the user config to the whole
user config section of flash, allowing for easy copying/juggling of
configurations by just maintaining a library of .uf2 files you like to
apply

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-03-25 10:03:54 -05:00
Brian S. Stephan a3f9f12e74
move UF2 converter to storage, allow specifying start address
the former is to avoid an upcoming circular dependency, the latter is to
allow for creating an e.g. user-config-only .uf2 by specifying the
proper offset to start the UF2 addressing at.

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-03-25 09:19:58 -05:00
Brian S. Stephan 610e1a2801
show a quick bit of copyright/license info
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-03-12 13:33:37 -05:00
Brian S. Stephan af46a0200b
version bumps
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-03-12 13:06:54 -05:00
Brian S. Stephan c1ab61c61e
improve the positioning of the edit dialog buttons
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-03-12 12:45:58 -05:00
Brian S. Stephan 1d887c9fdf
add MessageScreen back and tweak/enhance screen layouts
this will be used for a help screen, which isn't done yet, but this
makes the edit screen incrementally better too

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-03-11 12:59:58 -05:00
Brian S. Stephan 5fc2339c74
isort gp2040ce_bintools/gui.py
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-03-10 23:43:12 -05:00
Brian S. Stephan b900e1dd04
relicense as GPLv3
prior MIT-licensed versions can be obtained from the Git history; this
does not revoke those versions

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-03-08 00:02:43 -06:00
Brian S. Stephan 069aa27927
style the GUI tree widget a bit
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-02-18 00:05:16 -06:00
Brian S. Stephan 22de9ae6d6
use Textual's notify instead of a custom popup window
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-02-17 23:38:41 -06:00
Brian S. Stephan df875a5d99
rename GUI Save button as Confirm
more idiomatic this way, since it's really just "set the value", not
actually saving the config

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-02-17 23:05:51 -06:00
Brian S. Stephan 03a8235445
include the package version number in the edit-config title
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-02-17 23:05:36 -06:00
Brian S. Stephan 0ab372f9fd
version bumps
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-30 21:34:34 -06:00
Brian S. Stephan d12ee311bc
update CHANGELOG for v0.6.0
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-09 10:02:00 -06:00
Brian S. Stephan 331063d1a3
update docs regarding the protobuf precompiled files
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-09 10:01:45 -06:00
Brian S. Stephan b3f6f86950
ship precompiled protobuf files for convenience
current libraries seem to have problems on Windows with thinking files
are duplicated when they are not, making it impossible to compile .proto
files at runtime in this tool on that platform. this adds a fallback of
using shipped, precompiled files in the package. I was already intending
on providing this as an option anyway, so might as well start doing it
now.

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-09 09:40:07 -06:00
Brian S. Stephan 64d892eea0
ignore libusb NotImplementedError when detaching the driver
this is not meaningful (or possible) on Windows, so we can just ignore
it and move on

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-08 14:35:50 -06:00
Brian S. Stephan 933e44566c
documentation update for concatenate-ing in .uf2
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-08 13:09:49 -06:00
Brian S. Stephan 7bd303dd06
optionally concatenate files in .uf2 format 2024-01-06 21:02:27 -06:00
Brian S. Stephan d6857d5da1
add a method to convert binary content to UF2
will be used in concatenate in order to write .uf2 files

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-06 20:51:28 -06:00
Brian S. Stephan 314fc909ff
flag and method to visualize the board config
via file dump or via USB. used to test the writing of the board config
to binary

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-06 17:27:33 -06:00
Brian S. Stephan 1a44e8c1e3
fix some mypy errors in bytearray arguments
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-06 13:48:49 -06:00
Brian S. Stephan 0d54d3b805
concatenate flags to combine board and user configs
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-06 13:45:12 -06:00
Brian S. Stephan ef71db6f5e
methods to add/retrieve board config to binary
with this, the combining methods can combine both a board and user
config into one binary, which is a step closer to having a command that
does it, and then we can start removing BoardConfig.h from the firmware
build and replace it with patched binaries.

to test it, another retrieval method was added too, and this will
probably be used for more dump commands or a better info or something
like that

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-06 11:43:54 -06:00
Brian S. Stephan bc64a6531b
add a method to pad a binary to the spot of the board config
the board config will be the same space as the user config, directly in
front of it in the flash

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-05 23:42:45 -06:00
Brian S. Stephan c74edabf6d
break up pad_binary_to_user_config
just some refactoring in order to reuse parts for the board config
support

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-05 21:13:14 -06:00
Brian S. Stephan 841c3a38c3
s/get_storage_section/get_user_storage_section/
more renaming to make room for future methods

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-05 21:13:14 -06:00
Brian S. Stephan 578fd416da
rename get_config_from_usb as get_user_config_from_usb
this is to distinguish from the board config later

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-05 21:13:10 -06:00
Brian S. Stephan 05228b9f62
s/STORAGE_/USER_CONFIG_/
more address define renames to make an upcoming feature clearer

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-03 18:27:16 -06:00
Brian S. Stephan 8681a18d26
s/pad_firmware_up_to_storage/pad_binary_up_to_user_config/
this is just to clarify the purpose of this since a related method is
coming soon for the board config

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-03 18:13:54 -06:00
Brian S. Stephan 1d912794c2
docs update for new concatenate JSON feature and flags
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-03 18:10:31 -06:00
Brian S. Stephan 1966f6a71e
option to concatenate to combine a JSON config to a binary
this allows for putting a JSON representation of a config into the user
config area of a binary to be flashed on the board. this allows for
conveying configs as simple JSON files and using them to convey specific
binaries by parts

this is the start of the support to use JSON files on a *new* section of
the binary reserved for board default configs

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-03 13:35:26 -06:00
Brian S. Stephan 416157663d
STORAGE_BOOTSEL_ADDRESS is a better name than _MEMORY_
this is also just a different addressing mode with the same binary
offset from the start, so derive it from the binary location
2024-01-03 12:24:05 -06:00
Brian S. Stephan f2ed281053
test parsing config as JSON into a message
this also bumps the proto files in the test directory as a matter of
convenience, so some tests got updated accordingly

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-03 12:20:54 -06:00
Brian S. Stephan 23cb5c9e5a
add SPDX-FileCopyrightText
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-02 15:15:55 -06:00
Brian S. Stephan 39cd3754f3
correct the LICENSE copyright to my name
as the Open Stick Community is not a legal entity, and I have not
transferred copyright to anyone/thing else, and because I am to date the
only author in this repository, I believe it is clearer to all and
stronger to just be explicit here and put my name in the license
document. this will be followed up by a SPDX update to the files
accordingly.

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-01-02 15:09:13 -06:00
Brian S. Stephan 39b80f4c8b
Add DCO/signoff docs and sign off on MAINTAINERS entry
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2023-12-18 10:44:04 -06:00
Brian S. Stephan b2bf7984b0
add SPDX-License-Identifier: MIT to all source
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2023-12-18 10:17:35 -06:00
Brian S. Stephan 6aa3ea6f84
update README; had the right memory alignment but not the size 2023-11-07 08:59:15 -06:00
Brian S. Stephan f8cf57d37c
changelog updates 2023-11-07 00:27:26 -06:00
Brian S. Stephan fc022452f5
replace most references to pico with RP2040 2023-11-07 00:26:51 -06:00
Brian S. Stephan a8156f5e89
add version compatibility information to README 2023-11-07 00:06:03 -06:00
Brian S. Stephan 9aef8aae7c
correct config dump example for new start address 2023-11-06 23:59:48 -06:00
Brian S. Stephan fcb1297139
test with 0.7.5 files, which has an expanded config section 2023-11-06 23:55:01 -06:00
Brian S. Stephan a681a8e6a0
version bumps for the requirements files 2023-11-06 15:31:01 -06:00
Brian S. Stephan 1a7672b826
link to changelog in the package metadata 2023-07-12 19:21:06 -05:00