Commit Graph

799 Commits

Author SHA1 Message Date
Scott Shawcroft
e0fa155037
Merge pull request #8327 from jepler/translation-compression-qstr
Use qstrs to improve compression
2023-09-05 13:12:13 -07:00
Jeff Epler
5c23e28208
add explanation for newer compression features 2023-08-31 13:27:16 -05:00
Bill Sideris
f204b17164
Disable dotfiles on boards without native usb 2023-08-29 17:23:17 +03:00
Bill Sideris
029c912bf0
Comment and reorder the files creation. 2023-08-28 17:03:32 +03:00
Bill Sideris
57ac916ccd
.Trash-1000 on filesystem creation 2023-08-27 23:29:08 +03:00
RetiredWizard
8fbde14286 utilize CIRCUITPY_CONSOLE_UART_BAUDRATE parameter 2023-08-24 14:50:23 -04:00
Jeff Epler
4d8b354c13
Use qstrs to improve compression
any qstr of >= 3 chars long is a candidate for use; the input byte value
(1) is used to indicate a fixed-length qstr number follows.

Before accounting for the code size changes, this saves ~100 bytes
on trinket m0, but it may end up being a wash due to added code.

A cutoff of length>2 is slightly better for ja and ru and worse for others.
This has to do with the relative frequency of latin characters vs non-latin
characters, is my guess.

lang    after   before  change (- = more free space)
en_US   3132    2996    -134
fr      2136    2060    -76
ja      1916    1724    -232
ru      2196    2000    -196
2023-08-23 15:16:53 -05:00
Dan Halbert
e08ad22ef6
Merge pull request #8317 from jepler/merge-82x
Merge 8.2.x into main
2023-08-22 17:28:30 -04:00
Jeff Epler
c07fff574e
Merge pull request #8304 from ccattuto/main
Fixed compilation error when FF_MAX_SS != FF_MIN_SS
2023-08-22 09:47:40 -05:00
Jeff Epler
c029d6a165
Merge remote-tracking branch 'origin/8.2.x' into merge-82x 2023-08-22 08:49:16 -05:00
Dan Halbert
282e93d3e3
Merge pull request #8281 from dhalbert/merge-micropython-v1.19.1
Merge micropython v1.19.1
2023-08-21 19:24:26 -04:00
Ciro Cattuto
a5578cf067 Fixed compilion error when FF_MAX_SS != FF_MIN_SS 2023-08-21 22:47:09 +02:00
Dan Halbert
4593008317
Merge pull request #8297 from dhalbert/better-hard-fault-message
improve hard fault message
2023-08-20 12:16:33 -04:00
Radomir Dopieralski
3120bd3d7d Fix displayio when CIRCUITPY_REPL_LOGO is disabled
We have to make room for the status bar no matter if the logo is enabled
or not. We probably should add a similar option for disabling the status
bar.

This makes the PewPew M4 port stop crashing.

(cherry picked from commit b50a7fb913)
2023-08-20 00:59:34 +02:00
Radomir Dopieralski
b50a7fb913 Fix displayio when CIRCUITPY_REPL_LOGO is disabled
We have to make room for the status bar no matter if the logo is enabled
or not. We probably should add a similar option for disabling the status
bar.

This makes the PewPew M4 port stop crashing.
2023-08-20 00:21:33 +02:00
Dan Halbert
10a022db87 consolidate and shorten some error messages 2023-08-19 12:39:54 -04:00
Dan Halbert
7933bb0ebe improve hard fault message 2023-08-19 10:07:46 -04:00
Jeff Epler
49159efe55
Allow natmods to build again (they don't work, however) 2023-08-18 12:50:05 -05:00
Dan Halbert
d582407b06 pre-commit fixes 2023-08-14 00:59:22 -04:00
Dan Halbert
2171e67c1b merge latest adafruit/main 2023-08-13 19:43:54 -04:00
Dan Halbert
27c7807693 silabs build needs work; other builds are working 2023-08-13 19:05:16 -04:00
Dan Halbert
fe0e2f13bc wip; fix qstr processing 2023-08-10 20:06:32 -04:00
Dan Halbert
2ff8667e75 wip; remove long-lived functionality; remove PR#2614
Trinket M0 compile has no compilation errors, but has link errors to fix.
2023-08-08 20:41:17 -04:00
Scott Shawcroft
1629faf8b3
Make usb_host.Port a singleton
This allows you to initialize usb_host.Port once successfully and
then returns the same object as long as you pass the same arguments
in. It does allow you to fix incorrect pins but not switching from
one valid set to another. (It needs a reset for that.)

This also moves hcd cache operations to RAM so that they don't
access the cache when doing maintenance.
2023-07-18 10:40:54 -07:00
Jeff Epler
843ea86978
fix repeating cursor keys 2023-07-12 07:04:58 -05:00
Jeff Epler
1a06169e18
Implement key-repeat 2023-07-12 07:04:58 -05:00
Jeff Epler
910fcf1c93
usb host keyboard: add keymap support
This is confined to pure ASCII, but does support Alt Gr. This is enough
to make a French keyboard layout work:
 * home row is "qsdfghjklm"
 * numerals are all shifted
 * keys like {} require Alt Gr

While not tested, this should also support layouts like Colemak with
the necssary keymap file.

Layouts can be produced from Neradoc's keyboard layout modules on the
device & loaded at runtime. Code to do so is at
    https://gist.github.com/jepler/597c0a00e0eb014a433e03c0ae363a08
as well as a sketch of how an extended format could support dead keys &
the full Unicode BMP instead of just ASCII.
2023-07-12 07:04:56 -05:00
Scott Shawcroft
2686beab36
Basic USB host support and keyboard workflow
Connects up read, write and ctrl_transfer to TinyUSB. USB Host
support is available on iMX RT and RP2040.

Fixes #6527 (imx) and fixes #5986 (rp2).
2023-07-10 14:22:21 -07:00
Jeff Epler
d4913b04e0 rgbmatrix: update protomatter
and re-organize so that esp32 s2/s3 don't do as much at reset

.. it's not necessary (because most data is in esp-idf managed memory)
and doing this saves me from having to debug why reconstruct isn't working
properly on that platform.

This needs to be tested on other platforms again before being merged!
2023-06-08 10:43:32 -05:00
Ted Hess
9c45551880 Do not enable web_workflow background callbacks if wifi is not enabled/connected 2023-05-11 17:01:53 -04:00
Dan Halbert
34f565dd89
Merge pull request #7891 from tannewt/fix_epd_uc
Add address_little_endian and fix display memory reuse
2023-04-26 00:27:59 -04:00
Ted Hess
ccbb6a58fb Fix web-editor debug on non-standard port using localhost (CORS) 2023-04-22 13:09:18 -04:00
Scott Shawcroft
7089ea4d65
Add address_little_endian for displayio
Add address_little_endian for epaper displays with little endian
(low byte first) addresses.

Also clears allocated display and display bus memory so it has a
known state. The acep member wasn't always set so it varied
accidentally.

Fixes #7560. May fix #7778. Fixes #5119.
2023-04-21 12:19:29 -07:00
Scott Shawcroft
66edcf5d03
Add PicoDVI support
PicoDVI in CP support 640x480 and 800x480 on Feather DVI, Pico and
Pico W. 1 and 2 bit grayscale are full resolution. 8 and 16 bit
color are half resolution.

Memory layout is modified to give the top most 4k of ram to the
second core. Its MPU is used to prevent flash access after startup.

The port saved word is moved to a watchdog scratch register so that
it doesn't get overwritten by other things in RAM.

Right align status bar and scroll area. This normally gives a few
pixels of padding on the left hand side and improves the odds it is
readable in a case. Fixes #7562

Fixes c stack checking. The length was correct but the top was being
set to the current stack pointer instead of the correct top.
Fixes #7643

This makes Bitmap subscr raise IndexError instead of ValueError
when the index arguments are wrong.
2023-04-19 15:14:02 -07:00
Scott Shawcroft
09c2c5ef0e
Merge pull request #7876 from thess/CORS-update
Simplify CORS checks and don't restrict host names.
2023-04-19 11:07:34 -07:00
Ted Hess
8980ebfa16 Simplify CORS checks and don't restrict host names.
Minor socket cleanup.
2023-04-18 22:09:48 -04:00
Ted Hess
27a97dec16 Static web pages:
- Move loading .js scripts from <head> to <body> for faster rendering
   - Enable back-button support for file system/editor navigation
   - Close WebSocket when navigating away from /cp/serial
   - Use better looking Blinka icon.
2023-04-16 15:53:07 -04:00
Scott Shawcroft
dbfe1e73cf
Merge pull request #7846 from isacben/device-name-for-web-workflow
Add device name environment variable for web workflow
2023-04-11 10:20:46 -07:00
Isaac Benitez
532283d1a5 Replace malloc() with static varible 2023-04-10 20:58:21 -07:00
Isaac Benitez
e38b5491f4 Add device name env variable for web workflow 2023-04-07 11:45:13 -07:00
Scott Shawcroft
097af804cd
Fix ticks
In #7497 port_background_task was renamed to port_background_tick
but the actual call site wasn't changed. This meant that it was
no longer called!

Rename more functions from task to tick to make it clearer which is
which.
2023-04-07 09:49:51 -07:00
Ted Hess
9825b7fbb7 Web Workflow sockets and threads handling improvements.
Fixes polling thread looping forever hangs preventing new connections.
Don't lose listening sockets on mp resets and re-init.
Keep better separation of "system" and "user" sockets.
Track socket states to prevent re-use of sockets before closed.
Close REST socket when transaction completes. No post-init.
Remove unnecessary state flags.
2023-04-05 13:50:42 -04:00
Ted Hess
1a5afd485b Allow web_workflow to startup after deep sleep alarm wakeup 2023-03-29 15:47:17 -04:00
hathach
8c1095b268
Merge branch 'main' into add-codespell 2023-03-23 14:09:57 +07:00
Scott Shawcroft
53b16615bc
Merge pull request #7767 from tannewt/imx_fixed_stack
Make set_stack_limit respect fixed stack
2023-03-22 09:56:33 -07:00
Scott Shawcroft
cfedcd411f
Merge pull request #7748 from microdev1/patch
Rewrite pystack logic & Update auto-reload
2023-03-22 09:39:13 -07:00
Scott Shawcroft
0eb08509f0
Make set_stack_limit respect fixed stack
Fixes #2830
2023-03-21 16:42:49 -07:00
MicroDev
e4b5b20ebe
don't call reload_initiate if already initiated 2023-03-21 21:34:30 +05:30
Scott Shawcroft
67e0a49a1f
Merge pull request #7724 from tannewt/get_perfbench_running
Improve iMX RT performance
2023-03-21 09:00:48 -07:00
Scott Shawcroft
c78502d8a5
Merge pull request #7746 from FoamyGuy/diskinfo_api
Diskinfo api for web workflow
2023-03-21 08:43:21 -07:00