Commit Graph

1417 Commits

Author SHA1 Message Date
Scott Shawcroft 9152659912
Merge remote-tracking branch 'adafruit/main' into cache_config_desc 2023-08-03 13:37:53 -07:00
Scott Shawcroft 59e6cab252
Cache configuration descriptor
We use it to open endpoints as they are used. Fetching the descriptor
as needed can cause issues with devices that we're expecting a control
packet while another transaction was ongoing. Specifically, a usb
thumb drive didn't expect a control transaction while doing a SCSI
transaction.

This PR also aborts transactions on timeout or ctrl-c interrupt. It
doesn't always recover though...
2023-08-02 14:26:11 -07:00
Scott Shawcroft 539f34f7fd
Three small changes
1. Raise an exception when creating a USB device when host isn't
  initialized.
2. Mark RP2040 dtcm_bss as NOLOAD since it doesn't need to be
  loaded (just zeroed.)
3. Fix submodule location for ulab to Jeff's copy.
2023-08-01 13:16:38 -07:00
elpekenin a51be16d9e Fix typo, oopsie 2023-07-29 15:10:09 +02:00
elpekenin c4e915c3b2 Improve error message 2023-07-29 14:39:44 +02:00
Scott Shawcroft e45a61f57e
Align fatfs window buffer for tinyusb
Also, update tinyusb.
2023-07-27 09:15:58 -07:00
Scott Shawcroft 924422eff8
Merge remote-tracking branch 'adafruit/main' into three_small 2023-07-21 09:37:26 -07:00
Scott Shawcroft 5f082561b3
Unify some error strings 2023-07-20 11:20:32 -07:00
Jeff Epler 346f08f8b9
synthio: Add Synthesizer.note_state
This enables the specific use case of checking whether a note's release
phase has ended, but is also potentially useful to implement a sort of
"voice stealing" algorithm in Python code, which can take account of
the note's envelope state as well as other factors specific to the
program.
2023-07-20 13:16:00 -05:00
Dan Halbert 74eb360922
Merge pull request #8143 from kolkmvd/ShiftRegister-multi-data-pin
Extended ShiftRegisterKeys to support multiple data pins with shared clock and latch
2023-07-18 23:30:13 -04:00
Jeff Epler 3ec9f8a118
Merge pull request #8136 from FoamyGuy/blit_skip_self_index
adding skip_self_index argument to bitmap.blit()
2023-07-18 15:17:28 -05:00
Jeff Epler 6174e585af
usb.core.Device: fix trailing NUL on e.g., product string
.. and simplify the code to use vstr_add_char.
2023-07-12 08:47:33 -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
Marco van der Kolk 6dab35e076 Assign key_count to MP_ROM_NONE on deinit (for gc)
Signed-off-by: Marco van der Kolk <marco.git@vdkolk.nl>
2023-07-08 15:21:58 +02:00
Marco van der Kolk 4ba4c2a942 Renamed 'datas' to 'data_pins' to keep codespell happy
Signed-off-by: Marco van der Kolk <marco.git@vdkolk.nl>
2023-07-07 00:28:07 +02:00
Marco van der Kolk 5fcd90d8fb Extended to support multiple data pins
Signed-off-by: Marco van der Kolk <marco.git@vdkolk.nl>
2023-07-06 23:40:47 +02:00
foamyguy 72857994f2 change skip_index to skip_source_index 2023-07-05 17:27:41 -05:00
foamyguy a2ff9527dc format 2023-07-02 14:40:56 -05:00
foamyguy 96d3e662b3 refactor bitmap.blit into bitmaptools 2023-07-02 14:35:40 -05:00
foamyguy abf15125ff adding skip_self_index argument to bitmap.blit() 2023-07-01 11:50:24 -05:00
Dan Halbert 1f2a1a6e78 Improve OnDiskGif doc; check image width 2023-06-22 14:24:48 -04:00
Scott Shawcroft 0da62416a5
Merge pull request #8050 from FoamyGuy/hidden_refresh_areas
don't consider refresh areas for hidden groups or tilegrids
2023-06-21 09:56:27 -07:00
foamyguy 4bf4d148c1 always set rendered_hidden false when hidden changes 2023-06-16 18:05:39 -05:00
foamyguy 074c13488b revert whitespace change. handle hidden by parent 2023-06-16 16:57:37 -05:00
foamyguy 3222cdf847 revert indention change 2023-06-16 16:50:01 -05:00
foamyguy 0e3cdea51e remove prints 2023-06-16 16:47:24 -05:00
foamyguy 340506be58 revert unrelated epd change 2023-06-16 16:43:10 -05:00
Jeff Epler 666fb94ca3
Merge pull request #8056 from jepler/matrixportal-s3
Add Adafruit MatrixPortal S3 board def & update protomatter
2023-06-13 19:34:08 -05:00
foamyguy 18faeb86c7 more debug prints 2023-06-09 14:53:11 -05:00
foamyguy ec21dc6975 added debug prints 2023-06-08 12:01:39 -05: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
foamyguy 4712a9d301 remove old conditions 2023-05-31 21:00:02 -05:00
foamyguy f8948c2718 format 2023-05-31 20:58:04 -05:00
foamyguy 4ad54b2853 debugging prints. add rendered_hidden field to tilegrid 2023-05-31 20:57:17 -05:00
Jeff Epler a999e40935 synthio: reorganize the order of operations
Apply envelope & panning after biquad filtering.

This may fix the weird popping problem. It also reduces the number
of operations that are done "in stereo", so it could help performance.

It also fixes a previously unnoticed problem where a ring-modulated
waveform had 2x the amplitude of an un-modulated waveform.

The test differences look large but it's because some values got changed
in the LSB after the mathematical divisions were moved around.
2023-05-31 14:22:43 -05:00
foamyguy 06057a63e6 don't consider refresh areas for hidden groups or tilegrids 2023-05-30 19:25:08 -05:00
Jeff Epler 5f7998e6f2
synthio: improve rounding in biquad
this removes a marked DC offset and may cure the 'pops' problem.
2023-05-30 13:43:06 -05:00
Jeff Epler 8a85deb1e2 synthio: shift 19 was too much for a note with amplitude 1 2023-05-30 09:26:14 -05:00
Jeff Epler 3151656f4b synthio: more fir-filter removal; fix biquad logic errors 2023-05-30 09:24:26 -05:00
Jeff Epler a891e149a6
synthio: Fix multichannel biquad filtering 2023-05-29 11:23:07 -05:00
Jeff Epler 51027974e5
synthio: apply biquad filters during synthesis 2023-05-29 10:53:48 -05:00
Jeff Epler fed8d5825b
synthio: add biquad filter type & basic filter calculations
the filter cannot be applied as yet.
2023-05-29 09:50:18 -05:00
Jeff Epler 11d8a6ec3a
synthio: rename synthesizer.lfos to .blocks
.. since math blocks can be placed in it too (and that's useful)
2023-05-23 19:38:25 -05:00
Jeff Epler 1847c2b72a
synthio: fix, rename voct_to_hz
todbot discovered that this function wasn't working right, and wasn't
well-named.
2023-05-23 19:38:24 -05:00
Jeff Epler ac02a2668e
synthio: avoid exceptions inside get_buffer
.. in case the items in lfos are not actually LFOs
2023-05-21 13:22:50 -05:00
Jeff Epler 11c110e0da
synthio: remove 'none' case from lfo_tick 2023-05-21 13:22:48 -05:00
Jeff Epler 4ff08e02eb
synthio: lfo: bugfixes & improvements
LFO waveforms are now linearly interpolated by default, but a new
property (interpolated=False) can disable this.

The 'once' logic was improved
2023-05-21 13:22:47 -05:00
Jeff Epler e0cfae1d05
synthio: add (untested) phase offset 2023-05-21 13:22:46 -05:00
Jeff Epler e259f8d1ba
synthio: Move some divide-by-twos to get_buffer
these are always h-type buffers, so let's make the "len" be the element
count, not the byte count.
2023-05-21 13:22:44 -05:00
Jeff Epler c435c469f4
synthio: simplify block logic a bit by converting from float just once 2023-05-18 11:55:01 -05:00