Commit Graph

936 Commits

Author SHA1 Message Date
Jeff Epler
de541cf155
Fix pointer-ness, const-ness of compressed messages
micropython puts the pointer-ness into the typedef; we can put the
const-ness there too.

this reduces the delta to micropython; for instance, emitinlinextensa
and emitinlinethumb now match upstream.
2023-10-25 21:40:11 +02:00
Jeff Epler
54a5878ee0
WIP 2023-10-25 21:24:52 +02:00
Jeff Epler
55874b6470
Rename compressed_string_t to mp_rom_error_text_t to match upstream 2023-10-25 08:14:13 +02:00
Scott Shawcroft
e1df598199
Split displayio hardware support from core
These are moved:
* Display -> busdisplay.BusDisplay
* FourWire -> fourwire.FourWire
* EPaperDisplay -> epaperdisplay.EPaperDisplay
* I2CDisplay -> i2cdisplaybus.I2CDisplayBus

`paralleldisplay` is now `paralleldisplaybus` (and registered as
`paralleldisplay` too).

Bus related helpers are split out of display_core into bus_core.
It is in still displayio since it is a dependency of both
busdisplay and epaperdisplay.

Fixes #7667
2023-10-24 15:43:34 -07:00
RetiredWizard
5dfe92ba8e web_workflow: adjust indent and move #endif 2023-10-24 16:30:19 -04:00
Pascal Bakhuis
621805639b Added support the Waveshare ESP32-S3-Zero and GRB status LEDs 2023-10-21 01:22:46 +01:00
Scott Shawcroft
5a19971efd
Fix pre-commit 2023-10-16 10:46:11 -07:00
Scott Shawcroft
9633c4e78f
Merge remote-tracking branch 'adafruit/main' into v1.20-merge 2023-10-11 11:21:57 -07:00
Scott Shawcroft
2910dea6fd
Almost fix extra_coverage test 2023-10-11 10:04:02 -07:00
Dan Halbert
68a2927385 MP_REGISTER_ROOT_POINTER for port-specific root pointers 2023-09-29 15:46:42 -04:00
Dan Halbert
1c388ab315 finish converting to MP_REGISTER_ROOT_POINTER() 2023-09-29 10:49:34 -04:00
Dan Halbert
76ff01452b Trinket M0 comes up; still very much wip 2023-09-28 16:22:10 -04:00
Dan Halbert
4d175ab41a convert to MP_DEFINED_CONST_OBJ_TYPE() 2023-09-19 21:09:29 -04:00
Dan Halbert
2c0fa0f7dc initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
Scott Shawcroft
4087960dfd
Fix MDNS. C3 works 2023-09-14 15:04:07 -07:00
Scott Shawcroft
0928a95bb2
Merge pull request #8351 from jepler/dotclockframebuffer
Dotclockframebuffer
2023-09-07 13:21:29 -07:00
Scott Shawcroft
e776f3840f
Merge pull request #8367 from bill88t/web_workflow_disable
Web workflow skip init when no password, freeing socket. Also reconnect wifi on reload.
2023-09-05 13:47:05 -07:00
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
Bill Sideris
5869af395e
Wifi fully seperate from web-workflow 2023-09-05 22:39:41 +03:00
Jeff Epler
5e26862b2c
Allow use of CONFIG_SPIRAM_USE_CAPS_ALLOC
.. and switch makerfabs tft7 over to it as a test.

We have our existing way of "reserving" PSRAM for esp-idf (we actually
control it all but add back the "reserved" part). However, this does
not work with off the shelf esp_lcd, which only will allocate a
framebuffer in PSRAM if CONFIG_SPIRAM_USE_CAPS_ALLOC (or CONFIG_SPIRAM_USE_ALLOC)
is defined, not if CONFIG_SPIRAM_USE_MEMMAP is.

This new way is possibly compatible with more esp-idf code, but it complicates
CircuitPython's initial startup since nothing until port_heap_init is
permitted to use the CP heap or supervisor allocator. In practice this
seems to be OK today.

Right now this doesn't change the setting across all boards with PSRAM and so
it does not revert esp-idf to its prior state. Instead, what I'm thinking is
that we can do it during or just after the IDF5 update when sdkconfig files
will be getting an overhaul anyway.
2023-09-05 12:43:22 -05:00
Bill Sideris
9eaae37dfc
When no password is passed, connect to wifi but do not init web_workflow. 2023-09-05 19:31:18 +03:00
Jeff Epler
5c23e28208
add explanation for newer compression features 2023-08-31 13:27:16 -05:00
Jeff Epler
17015b48ad
translations don't always use unicode code points now 2023-08-30 10:09:50 -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
433059023d fix -j1 builds, particularly CPX 2023-08-12 16:49:03 -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