Daniel Thompson
67d2ed83d2
tools: rle_encode: Add support for rendering 2-bit RLEs to C src
...
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-08 14:29:10 +00:00
Daniel Thompson
9dd793ff19
hex2c.py: Adopt a maximum chunk size
...
Large segments will be chunked into 32K blocks to they can be handled
seperate. Creating a maximum chunk size allows us to perform a few
tricks in the reloader by allowing us to overwrite parts of the reloader
whilst it is running!
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-04 19:06:03 +00:00
Daniel Thompson
2b244ec2a3
tools: wasptool: Improve error reporting if we can't sync
...
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-10-21 20:49:48 +01:00
Daniel Thompson
2bb0837440
tools: wasptool: Fix verbose/not-verbose handling
...
Fixes: 2839a04
("tools: wasptool: Hide the stack trace on pexpect timeout")
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-10-21 20:48:12 +01:00
Daniel Thompson
2839a042be
tools: wasptool: Hide the stack trace on pexpect timeout
...
The default pexpect exception dump is verbose and potentially useful if
you know how to read it... but let's handle timeouts in a friendlier way.
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-10-10 21:42:51 +01:00
Daniel Thompson
b6357ad4d8
tools: wasptool: Wait longer for DFU to come up
...
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-10-10 21:42:51 +01:00
Panagiotis Vasilopoulos
eca0551c3e
wasptool: Change Python shebang to ensure compatibility
...
- Certain Unix-like systems (such as *BSD systems) do not use /usr/bin/python3 as the default Python path. This small change will ensure a higher degree of compatibility.
Signed-off-by: Panagiotis Vasilopoulos <hello@alwayslivid.com>
2020-08-14 08:53:27 +03:00
Daniel Thompson
c74d9e296b
tools: preprocess: Ensure we use python3 interpreter
...
Not being explicit about the correct python interpreter causes trouble
on distros that do not alias python to python3 and/or that do not
install python2 by default.
Reported by: Mirko Covizzi <mrkcvzz@gmail.com>
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-08-02 11:54:58 +01:00
Daniel Thompson
b4e78935ba
wasptool: Add support for selecting devices by name and MAC address
...
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-07-26 21:04:30 +01:00
Daniel Thompson
ae5743529f
wasp: Switch to scheduling from interrupt
...
This has two useful properties. Firstly it means the watch will be
maintained in the background, allowing the REPL to be used for
notifications and other updates. Secondly it will save a little bit
of power by reducing the work needed to handle spurious wake ups.
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-30 23:04:01 +01:00
Daniel Thompson
f102d75ee7
wasptool: Add support for binary uploads
...
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-20 20:16:25 +01:00
Daniel Thompson
d172349565
wasptool: Fix --reset
...
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-20 20:15:36 +01:00
Daniel Thompson
0678128c26
tools: hex2c: Add crc32s for each segment
...
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-09 21:31:55 +01:00
Daniel Thompson
60c48b447c
wasptool: Better reporting of out-of-memory problems when pasting
2020-05-25 09:23:58 +01:00
Daniel Thompson
1abda8dd17
wasptool: Enable fully automatic OTA firmware delivery
2020-05-24 14:20:50 +01:00
Daniel Thompson
7f6b1b9059
draw565: Switch to a different palette for RLE 2-bit images
...
This is an incompatible change... older 2-bit images will need to be
re-encoded to display correctly.
2020-05-18 22:17:51 +01:00
Daniel Thompson
c3bc871727
pynus: Switch to the wasp-os version
2020-05-15 20:12:54 +01:00
Daniel Thompson
d11e6eb4a1
Make wasp-os namig consistant
...
Rename WASP to wasp-os (or Wasp-os)
2020-05-14 22:41:05 +01:00
Daniel Thompson
399b956eb5
wasptool: Add a command to compare RTC against the local workstation
...
This allows us to observe RTC drift during reboot relatively easily.
2020-05-09 14:21:39 +01:00
Daniel Thompson
b0dec58769
tools: ota-dfu: Adopt latest version
2020-05-09 14:09:45 +01:00
Daniel Thompson
dc4ea4ab62
reloader: OTA flashing tool for wasp-os
2020-04-26 19:21:28 +01:00
Daniel Thompson
17a8cfc346
tools: ota-dfu: Include a Linux-native OTA DFU tool
2020-04-26 19:18:17 +01:00
Daniel Thompson
5ce0d4cd6f
tools/hexmerge: Fix file permissions
2020-04-26 15:01:48 +01:00
Daniel Thompson
2e7db3ae19
tools: wasptool: Improve command output for --exec and --eval
2020-04-26 15:01:48 +01:00
Daniel Thompson
1fe0602995
tools: wasptool: Introduce simple chunking
...
This reduces the memory overhead required to --exec a file (although
we will still have problems with big classes).
For now we have avoided matching "^def" since we need additional
handling for decorators!
2020-04-17 17:18:27 +01:00
Daniel Thompson
fe43091bcf
tools: wasptool: Add support for --reset
2020-04-17 17:17:24 +01:00
Daniel Thompson
50ecff29ef
wasp: Automatically generate watch.py for PineTime
...
This should ensure that main.py is always up to date.
2020-04-11 21:12:18 +01:00
Daniel Thompson
8cf9369efa
tools: wasptool: Change characters used in the progress bar
2020-04-10 20:31:26 +01:00
Daniel Thompson
906c313e49
tools: rle_encode: Optimize the 2-bit encoding slightly
...
This results in a image that is entirely ROMable.
2020-04-10 20:20:48 +01:00
Daniel Thompson
02b92ff90d
tools: wasptool: Add a progress bar to the BLE uploads
2020-04-06 22:04:21 +01:00
Daniel Thompson
e2234112ff
tools: rle_encode: Add a new "2-bit" encoding mode.
2020-04-06 22:04:21 +01:00
Daniel Thompson
b9fe31241c
Add licensing information for all wasp-os files.
2020-03-22 15:40:18 +00:00
Daniel Thompson
f8bd1a7461
Rename manager.py and expose its interfaces to all applications
...
This is a big change that break compatiblity with existing applications
*and* with existing installed versions of main.py.
When upgrading it is import to update main.py:
./tools/wasptool --upload wasp/main.py
2020-03-22 12:37:19 +00:00
Daniel Thompson
321484b845
tools: wasptool: Sneaky hack to avoid copying docstrings to the device
2020-03-09 21:34:01 +00:00
Daniel Thompson
753a1e68f1
tools: wasptool: Reorder the execution of arguments.
...
The new ordering is tuned to allow --exec to be used to download new code,
--eval to be used to set it up and then --console used to interact with
it.
2020-03-08 10:16:49 +00:00
Daniel Thompson
b508f4dc26
wasp: Add a simple font renderer
2020-02-19 19:57:08 +00:00
Daniel Thompson
3d091e3422
wasptool: Launch the console after all other arguments
...
This allows for an elegant iterative development approach where we upload
some code than then interact with it, for example:
wasptool --exec wasp/drivers/nrf_rtc.py --console
rtc = RTC(watch.rtc.counter)
2020-02-19 19:57:08 +00:00
Daniel Thompson
df11539c29
wasp: Simple shell commands (based on upysh)
2020-02-19 19:57:08 +00:00
Daniel Thompson
f689c90498
wasp: Add full dd-mm-yyyy calender tracking
2020-02-19 19:57:08 +00:00
Daniel Thompson
c9ab38d757
wasptool: Simple tool for interacting with wasp-os devices
2020-02-19 19:57:08 +00:00
Daniel Thompson
fb252818e9
tools: rle_encode: Derive variable names from filenames
2020-02-03 19:07:11 +00:00
Daniel Thompson
28640d431e
tools: rle_encode: Experimental color encoder
...
The output from this is a bit too bulky so the code isn't hooked up
to anything at the moment.
2020-01-28 21:19:06 +00:00
Daniel Thompson
fbc5ee87d2
tools: rle_encode: Implement proper argument parsing
2020-01-28 21:17:41 +00:00
Daniel Thompson
4604603352
tools: rle_encode: Rework into proper functions
2020-01-28 18:45:26 +00:00
Daniel Thompson
1ec5c11ea7
WIP: tools: Simple RLE encoder
2020-01-23 18:55:03 +00:00
Daniel Thompson
88e736c9e9
Initial revision
...
This is a just a rather hacky combined build environment.
2020-01-14 21:32:59 +00:00