Commit Graph

981 Commits

Author SHA1 Message Date
dherrada a3d5adb43c
Did _eve, fontio, framebufferio, and frequencyio 2020-05-07 11:56:46 -04:00
dherrada 2ebe3035df
Did board, digitalio, displayio 2020-05-07 10:54:09 -04:00
Daniel Pollard 84c806a4be updated descriptions and build variable 2020-05-07 12:42:46 +10:00
spkuehl af55af216a Fix type in RTC documentation. 2020-05-06 14:11:11 -05:00
Sean Cross b168784fa0 aesio: add basic AES encryption and decryption
This adds initial support for an AES module named aesio.  This
implementation supports only a subset of AES modes, namely
ECB, CBC, and CTR modes.

Example usage:

```
>>> import aesio
>>>
>>> key = b'Sixteen byte key'
>>> cipher = aesio.AES(key, aesio.MODE_ECB)
>>> output = bytearray(16)
>>> cipher.encrypt_into(b'Circuit Python!!', output)
>>> output
bytearray(b'E\x14\x85\x18\x9a\x9c\r\x95>\xa7kV\xa2`\x8b\n')
>>>
```

This key is 16-bytes, so it uses AES128.  If your key is 24- or 32-
bytes long, it will switch to AES192 or AES256 respectively.

This has been tested with many of the official NIST test vectors,
such as those used in `pycryptodome` at
39626a5b01/lib/Crypto/SelfTest/Cipher/test_vectors/AES

CTR has not been tested as NIST does not provide test vectors for it.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-06 17:40:06 +08:00
Daniel Pollard 8961dd9fe7 changed build variables as per advice 2020-05-06 09:05:14 +10:00
Daniel Pollard bfa5cd9c13 refactor countio based on feedback 2020-05-05 15:23:38 +10:00
Dan Halbert e1366d78b1 trivial change to force rebuild 2020-05-04 23:05:47 -04:00
Dan Halbert b7836aeac6 address review comments 2020-05-04 19:51:08 -04:00
Dan Halbert bae7a5e433 make translate again 2020-05-04 17:26:59 -04:00
Dan Halbert d6c6f9f4f0 add PacketBuffer .incoming_ and .outgoing_packet_length 2020-05-04 15:59:45 -04:00
dherrada 0e465e63b9
Did audiopwmio, bitbangio, and _bleio 2020-05-01 18:23:27 -04:00
Scott Shawcroft 242063e1d0
Merge pull request #2838 from spkuehl/UART_sharedbinding_fix
Fix #2814 Corrected UART output.
2020-05-01 11:05:24 -07:00
spkuehl a3a2dd0f70 Corrected UART output. 2020-04-30 19:14:51 -05:00
dherrada d65e851044
Did audioio, audiomixer, audiomp3 2020-04-30 13:06:09 -04:00
Dan Halbert 46298ddcb4 PacketBuffer doc fixes 2020-04-30 00:36:01 -04:00
Dan Halbert f3078511a6 further cleanup and bug fixing 2020-04-29 23:18:08 -04:00
Dan Halbert 180f5c6a94 Merge remote-tracking branch 'adafruit/master' into ringbuf-fixes 2020-04-29 22:11:22 -04:00
Dan Halbert 3d62f87e29 back to '.packet_size' for compatiblity 2020-04-29 22:10:56 -04:00
Dan Halbert 84cee1ab8d rename and improve PacketBuffer packet length property 2020-04-29 17:49:31 -04:00
dherrada 7ff9b9bc80
Did first 3 2020-04-29 17:36:28 -04:00
dherrada a2a32fea1a
Added newlines after every ellipsis 2020-04-29 15:55:06 -04:00
dherrada 093461e816
Fixed indentation 2020-04-29 15:45:19 -04:00
dherrada deccdcc1d6
Did the same for the rest of busio 2020-04-29 15:20:05 -04:00
dherrada 93d1e53c66
Hopefully fixed whitespace issues 2020-04-29 14:19:04 -04:00
dherrada c7b721f4f1
Fixed some more whitespace 2020-04-28 19:22:03 -04:00
dherrada aacca61598
Fixed whitespace on audiocore 2020-04-28 18:56:19 -04:00
dherrada c3897d0add
Fixed whitespace in analogio 2020-04-28 18:43:40 -04:00
dherrada 724dcda3ec
Fixed whitespace in busio 2020-04-28 18:39:58 -04:00
Scott Shawcroft 755d404edf
Merge remote-tracking branch 'adafruit/master' into lower_power 2020-04-27 16:45:10 -07:00
dherrada 829da5c127
Added inline pyi to audiomp3 2020-04-27 17:29:50 -04:00
dherrada 8330471068
Added inline pyi to audiomixer 2020-04-27 17:20:40 -04:00
dherrada 1363e6e724
Added inline pyi to audiocore 2020-04-27 17:02:48 -04:00
dherrada 088b5b1785
Added inline pyi to audiocore 2020-04-27 16:49:12 -04:00
dherrada e96235d0cf
Added inline pyi to audiobusio 2020-04-27 16:35:03 -04:00
dherrada 8344fce994
Added inline pyi to analogio 2020-04-27 13:06:47 -04:00
dherrada 27e085ec36
Added pyi to OneWire.c 2020-04-25 15:36:16 -04:00
dherrada e7874277ab
Fixed empty lines 2020-04-25 15:35:24 -04:00
dherrada 7070fe1995
Added inline pyi to UART.c 2020-04-25 15:25:31 -04:00
dherrada 28430a9919
Added inline pyi to I2C.c 2020-04-25 15:07:58 -04:00
dherrada 55bdee688f
Reorganized pyi again 2020-04-23 16:14:17 -04:00
dherrada 855c2033b5
Reogranized pyi in spi.c 2020-04-23 15:35:20 -04:00
dherrada a18b991ca9
Added pyi to SPI.c 2020-04-22 15:22:34 -04:00
Jeff Epler b87af3b071 ulab: Update from upstream
Closes: #2787
2020-04-22 09:04:12 -05:00
Dan Halbert 77cd93ac2d merge from adafruit 2020-04-21 17:47:51 -04:00
Dan Halbert 38ec3bc574 further ringbuf cleanup 2020-04-21 17:38:20 -04:00
Jeff Epler 507e17fbf1 displayio: Fix "bus type" problem introduced at 8cba145c90
When allocate_display_bus_or_raise was factored out, the assignment
of the bus's Python type was lost.  Restore it.

This would have affected displays of any type other than RGBMatrix, when
they were created dynamically.  Boards with displays configured in flash
were unaffected.

Closes: #2792
2020-04-21 13:48:34 -05:00
Scott Shawcroft bebf27e733
Merge remote-tracking branch 'adafruit/master' into lower_power
This isn't perfect and needs a bit more testing.
2020-04-20 18:25:13 -07:00
Jeff Epler 898c09c35e RGBMatrix: nonessential change to kick Actions 2020-04-19 09:10:08 -05:00
Jeff Epler 9bfe6b7197 framebufferio: update copyright information 2020-04-17 18:44:07 -05:00
Jeff Epler 8c455f24bf RGBMatrix: this comment no longer describes the code
... allocate_display_bus_or_raise() uses fixed storage, not heap storage.
2020-04-17 18:44:07 -05:00
Jeff Epler 37cb6bafa8 RGBMatrix: documentation got behind the code 2020-04-17 18:44:07 -05:00
Jeff Epler 5fcc6d6286 RGBMatrix: finish renaming from Protomatter
This gets all the purely internal references.  Some uses of
protomatter/Protomatter/PROTOMATTER remain, as they are references
to symbols in the Protomatter C library itself.
2020-04-17 18:44:07 -05:00
Jeff Epler 1b478bbae6 RGBMatrix: remove unneeded properties 2020-04-17 18:43:57 -05:00
Jeff Epler 57ce2d1f41 framebufferio: get width, etc., from protocol, not object property 2020-04-17 18:43:57 -05:00
Jeff Epler 3d6258f63d Rename Protomatter -> RGBMatrix
This is a quick rename, it changes the user-facing names but not the
internal names of things.
2020-04-17 18:43:57 -05:00
Jeff Epler 64c3968a2e protomatter: move get_width/height to common_hal 2020-04-17 18:43:57 -05:00
Jeff Epler 545b6e560a fix doc build 2020-04-17 18:43:57 -05:00
Jeff Epler 1a91a75b9c framebufferio: get more properties direct from underlying framebuffer 2020-04-17 18:43:57 -05:00
Jeff Epler a32337718d Rename _protomatter -> protomatter
I originally believed that there would be a wrapper library around it,
like with _pixelbuf; but this proves not to be the case, as there's
too little for the library to do.
2020-04-17 18:43:57 -05:00
Jeff Epler d1ff23e004 framebufferio: get width, height from framebuffer properties 2020-04-17 18:43:57 -05:00
Jeff Epler d2aac7a754 Protomatter: add width, height properties 2020-04-17 18:43:57 -05:00
Scott Shawcroft b580b34cbf
Merge remote-tracking branch 'adafruit/master' into lower_power 2020-04-14 17:14:44 -07:00
Jeff Epler 0ce9c008c5 Protomatter: Make all arguments kw-only, add rgb count and optional height checking
They're not readily distinguishable by type.

I also added the requested height optional parameter; this is checked
against the computed one.  It's not feasible to use this parameter to
artificailly reduce the number of used rows, because changes in the
underlying C protomatter library would be required.

Finally, I added a better error message when the number of RGB pins was
not what was expected.
2020-04-14 18:24:59 -05:00
Jeff Epler 880fff80e9 protomatter: Respond to review comments
- rename oe_pin -> output_enable_pin
 - improve and reorganize docstrings
 - rename swapbuffers->refresh
 - rename "paused" -> "brightness", change semantics slightly
 - common_hal several functions
 - clarify why the common_hal routines can't be used directly in the
   protocol's function pointers
 - whitespace cleanups
 - remove prototypes for nonexistent functions
2020-04-14 18:24:59 -05:00
Jeff Epler 5d328c3b44 protomatter: clarify by comment why these functions exist 2020-04-14 18:24:58 -05:00
Jeff Epler ba20bc8b43 framebufferio: move backlight down to the underlying framebuffer 2020-04-14 18:24:58 -05:00
Jeff Epler 129c6369cf protomatter: code style 2020-04-14 18:24:58 -05:00
Jeff Epler 4a05e938ed protomatter: validate pins to give better error message
The numbered error from the underlying library is not helpful for
beginning users
2020-04-14 18:24:58 -05:00
Jeff Epler 9019710a1e protomatter: improve an error message 2020-04-14 18:24:58 -05:00
Jeff Epler baf04b7738 FramebufferDisplay: remove probably not needed constructor arguments 2020-04-14 18:24:58 -05:00
Jeff Epler 50219862e1 protomatter: make docstring match implementation 2020-04-14 18:24:58 -05:00
Jeff Epler a663a7dd30 _protomatter: move get/set paused into shared-module 2020-04-14 18:24:58 -05:00
Jeff Epler 5fcba97a51 Make function name more descriptive 2020-04-14 18:24:58 -05:00
Jeff Epler 89eb45a13c use floor division in docstring
Co-Authored-By: Scott Shawcroft <scott@tannewt.org>
2020-04-14 18:24:58 -05:00
Jeff Epler 09dc46a984 Add Protomatter and FramebufferDisplay 2020-04-14 18:24:54 -05:00
Jeff Epler 8cba145c90 displayio: implement, use allocate_new_display_bus_or_raise 2020-04-14 18:24:54 -05:00
Jeff Epler 6378d600c4 displayio: implement, use allocate_display_or_raise 2020-04-14 18:24:54 -05:00
Scott Shawcroft ada102dd98
Merge pull request #2767 from jepler/update-ulab
ulab: Get updates from upstream
2020-04-14 15:59:33 -07:00
Scott Shawcroft e063b066f0
Merge pull request #2756 from caternuson/bitmap_fill
Add fill method to displayio.Bitmap
2020-04-14 12:54:44 -07:00
Jeff Epler 693928d201 doc updates 2020-04-13 20:10:02 -05:00
caternuson dc75746842 add docstring, clean up 2020-04-09 08:59:26 -07:00
caternuson 49fff2d9b4 initial working fill 2020-04-09 08:43:50 -07:00
sommersoft 61bab8e62e ulab/__init__.rst: fix attribute name; uint8 -> uint16 2020-04-09 08:45:26 -05:00
Scott Shawcroft 317b96e93a
Fix iMX builds 2020-03-31 17:00:30 -07:00
Scott Shawcroft cbe9512691
Merge pull request #2741 from tannewt/fix_packetbuffer_server
Fix PacketBuffer server support
2020-03-31 13:39:34 -07:00
Jeff Epler 54e8c63b4f
Merge pull request #2730 from tannewt/fix_fourwire_phase_polarity
Add polarity and phase to FourWire.
2020-03-28 07:28:37 -05:00
Scott Shawcroft a870908718
Don't break the function signature 2020-03-26 14:11:20 -07:00
siddacious 9e0c00dfd4 adding a backlight polarity flag to Display 2020-03-25 22:51:20 -07:00
Scott Shawcroft 8a5d3cd6c4
Add exception on small buffer and fix Connecion WRITE handling 2020-03-25 17:41:47 -07:00
Scott Shawcroft 6b7acc65b6
Add polarity and phase to FourWire.
It was fixed as 0/0 even though it used to get it from the current
SPI state. This makes it more explicit with kwargs.

Thanks to magpie_lark and kmatocha on the Adafruit Support forum
for finding the issue: https://forums.adafruit.com/viewtopic.php?f=60&t=162515
2020-03-25 11:22:46 -07:00
Jeff Epler aaf07ce72f
Update shared-bindings/ulab/__init__.rst
Co-Authored-By: Scott Shawcroft <scott@tannewt.org>
2020-03-17 16:37:16 -05:00
Jeff Epler aa54a7e76e ulab: update documentation 2020-03-17 09:25:33 -05:00
Dan Halbert fdcdc1320b Make ParallelBus reset ping arg required 2020-03-06 14:30:30 -05:00
Dan Halbert 210c3274e5 Merge remote-tracking branch 'adafruit/master' into assert_pin-and-mp_const_none-cleanup 2020-03-05 17:47:01 -05:00
Dan Halbert 817b5be320 rename routines to be clearer; fix wiznet arg types 2020-03-05 16:35:31 -05:00
Dan Halbert e30b1d3121 missing semicolon 2020-02-29 22:48:11 -05:00
Dan Halbert 8435935429 update uses of assert_pin_free; remove redundant checks 2020-02-29 15:37:32 -05:00
Dan Halbert b6206406de new pin validation routines; don't use mp_const_none if NULL will do 2020-02-28 23:43:04 -05:00
Jeff Epler 39cfe32c34 Update ulab from upstream again 2020-02-27 14:14:05 -06:00
Jeff Epler 645df931ae typos 2020-02-27 11:07:37 -06:00
Jeff Epler fa3b9eba92 ulab: Incorporate it 2020-02-27 11:03:03 -06:00
Dan Halbert e31ac710be Enable _bleio adapter when _bleio is imported 2020-02-20 21:55:04 -05:00
Dave Marples d388899985 Addition of RS485 support 2020-02-18 23:16:40 +00:00
Dave Marples 84ad3d8393 Addition of RTS/CTS/RS485 UART functionality 2020-02-18 23:16:40 +00:00
Scott Shawcroft 52d96ca151
Merge pull request #2626 from dhalbert/stat-for-shortint
avoid os.stat() int overflow on smallint-only builds
2020-02-18 13:40:52 -08:00
Dan Halbert e0753c4ad2 avoid os.stat() int overflow on smallint-only builds 2020-02-14 18:33:37 -05:00
Melissa LeBlanc-Williams 33774e790c Updated OnDiskBitmap RTD example for 5.x 2020-02-14 10:23:23 -08:00
Scott Shawcroft e97b0cfc61
Merge pull request #2581 from jamesbowman/master
First draft of eveL, the low-level module of the Gameduino bindings
2020-02-13 11:21:32 -08:00
James Bowman b02937d1a7 Split ROMDECLS for readability 2020-02-13 07:28:21 -08:00
Dan Halbert c57ccd5eb4 doc typo 2020-02-11 20:03:47 -05:00
Dan Halbert f73b58a2c6 fix doc indentation 2020-02-11 19:57:48 -05:00
Dan Halbert 2e029d55fc nrf: add SPIM3 support 2020-02-11 19:22:14 -05:00
James Bowman a87dee2f66 Correct the BitmapTransform operations.
Correct argument order
better argument naming
fix copypaste bug on C and F arguments
2020-02-10 19:34:38 -08:00
James Bowman 1f44029c56 Remove unused code 2020-02-10 18:57:04 -08:00
James Bowman f101ff60c5 Move _eve module declarations into shared-bindings header 2020-02-07 17:10:19 -08:00
James Bowman c631b4d60e Add doc strings, inline mod_eve-gen.h and remove it 2020-02-07 16:44:48 -08:00
James Bowman 5c6d94d3e5 Split into shared-module and shared-bindings 2020-02-07 10:30:49 -08:00
Dan Halbert cbd519bfa6 time.sleep() rounds to nearest msec 2020-02-07 10:24:11 -05:00
Dan Halbert 857d8ab40a improve time.monotonic_ns() accuracy from ms to us 2020-02-07 10:02:50 -05:00
James Bowman a20490c0b3 Add method VertexFormat() and variable fixed-point scaling in Vertex2f() 2020-02-06 08:49:07 -08:00
James Bowman acef93a253 Rename eveL to _eve, EVEL to _EVE 2020-02-05 18:17:58 -08:00
James Bowman a9b34f45dc My name 2020-02-05 18:01:25 -08:00
James Bowman 53f7e2be4f Use mp_instance_cast_to_native_base() throughout 2020-02-05 17:58:59 -08:00
Dan Halbert a4ebd2f7c1 allow tuple or list for Palette color 2020-02-03 22:09:53 -05:00
James Bowman 0bcfabbc87 Add header for module eveL explaining what it is.
Exclude modeveL-gen.h from Sphinx build
2020-02-03 18:41:32 -08:00
James Bowman 7fd30e7d20 First draft of eveL, the low-level module of the Gameduino (and BridgeTek EVE) bindings.
[adafruit/circuitpython#2578]
2020-02-03 16:46:14 -08:00
Scott Shawcroft 55eb1730b8
Merge remote-tracking branch 'adafruit/master' into tweak_pixelbuf 2020-01-30 10:59:21 -08:00
Radomir Dopieralski 27c36eea2b circuitpython-stage: allow choosing background color 2020-01-30 15:24:04 +01:00
Scott Shawcroft 5d24ade5c9
Tweak error messages to reduce code size. 2020-01-29 17:32:07 -08:00
Dan Halbert e21580b67f PacketBuffer.packet_size was returning bool instead of int 2020-01-27 17:10:56 -05:00
Scott Shawcroft 39971794dd
Encapsulate buffers inside PixelBuf and refactor it. 2020-01-24 18:23:07 -08:00
Dan Halbert 2a75196aa3 merge from adafruit/circuitpython 2020-01-13 18:15:32 -05:00
Dan Halbert 9e7f8743c2 fix CCCD bonding store; avoid excessive bonding writes 2020-01-12 23:32:51 -05:00
Dan Halbert 346ce3b73b wip: HID bonding works! 2020-01-10 23:55:45 -05:00
Scott Shawcroft 8708d3dc45
Merge pull request #2461 from jepler/urandom-hardfaults
Urandom hardfaults
2020-01-10 11:37:59 -08:00
Dan Halbert 9c167af17a wip; redid flash writing to be compatible with SD 2020-01-09 17:40:02 -05:00
Scott Shawcroft a10cd8580c
Merge pull request #2445 from jepler/mp3-jeplayer-fixes
Fixes for JEplayer
2020-01-08 12:50:13 -08:00
Jeff Epler 6735283d8f os: Don't require an on-stack buffer
This allows urandom requests of even 100k bytes to succeed on a fresh
VM session on a Metro M4 express.
2020-01-08 09:43:13 -06:00
Jeff Epler b1b4a9e842 fix doc build error 2020-01-06 09:26:32 -06:00
Jeff Epler dc729718eb audiomp3: rename to MP3Decoder 2020-01-06 07:51:41 -06:00
Scott Shawcroft 82fb761c0f
Add PacketBuffer and MTU negotiation support.
PacketBuffer facilitates packet oriented BLE protocols such as BLE
MIDI and the Apple Media Service.

This also adds PHY, MTU and connection event extension negotiation
to speed up data transfer when possible.
2020-01-03 17:29:54 -08:00
Dan Halbert fc5f776429
Merge pull request #2034 from rhooper/new-pixelbuf-api
Updates to pixelbuf API - Addresses #884
2020-01-03 17:19:02 -05:00
Roy Hooper 767ce1cdf8 remove unnecessary GCC pragmas 2020-01-02 18:03:18 -05:00
Roy Hooper ccf158b030 raise mp_raise_NotImplementedError 2020-01-02 18:00:36 -05:00
Roy Hooper fdddb54db4 rename call_show to pixelbuf_call_show 2020-01-02 17:56:04 -05:00
Jeff Epler ec22520992 MP3File: Add rms_level property
This lets a music player show it vu-meter style
2020-01-02 15:23:42 -06:00
Roy Hooper 4e1996856f Fix docstring for byteorder 2020-01-01 19:25:44 -05:00
Roy Hooper 12193913a8 move native fill to a helper to work around being unable to call a subclass show method from the native superclass 2020-01-01 17:30:17 -05:00
Roy Hooper 8129a8503a Revert "try a property with a callable static class"
This reverts commit ca5b2770cf.
2020-01-01 16:10:22 -05:00