<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/shared-module, branch audiocore-rawsample-sinewave</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=audiocore-rawsample-sinewave</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=audiocore-rawsample-sinewave'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2020-05-13T15:14:37+00:00</updated>
<entry>
<title>Gamepad &amp; GamepadShift: Enable ticks while object exists</title>
<updated>2020-05-13T15:14:37+00:00</updated>
<author>
<name>Jeff Epler</name>
<email>jepler@gmail.com</email>
</author>
<published>2020-05-13T15:04:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=fbf052bb2755b2a3afb85b94ea9625ab29da4ab0'/>
<id>urn:sha1:fbf052bb2755b2a3afb85b94ea9625ab29da4ab0</id>
<content type='text'>
Otherwise, button presses might not be noticed.
</content>
</entry>
<entry>
<title>add performance measurement to VectorShape</title>
<updated>2020-05-12T18:49:15+00:00</updated>
<author>
<name>warriorofwire</name>
<email>3454741+WarriorOfWire@users.noreply.github.com</email>
</author>
<published>2020-05-12T18:49:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=fd94c08cf45d1b0669c276ba61bbad1b501ee13f'/>
<id>urn:sha1:fd94c08cf45d1b0669c276ba61bbad1b501ee13f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>make Circle return explicit</title>
<updated>2020-05-12T18:47:19+00:00</updated>
<author>
<name>warriorofwire</name>
<email>3454741+WarriorOfWire@users.noreply.github.com</email>
</author>
<published>2020-05-12T18:47:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=6aa9709d98c578bf9de342117137ef6595251960'/>
<id>urn:sha1:6aa9709d98c578bf9de342117137ef6595251960</id>
<content type='text'>
</content>
</entry>
<entry>
<title>vectorio: fix up Rectangle</title>
<updated>2020-05-10T23:21:07+00:00</updated>
<author>
<name>warriorofwire</name>
<email>3454741+WarriorOfWire@users.noreply.github.com</email>
</author>
<published>2020-05-10T23:21:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=32f85f7a44b6ce753070168b4f008a9499d70883'/>
<id>urn:sha1:32f85f7a44b6ce753070168b4f008a9499d70883</id>
<content type='text'>
* Fix drawing 1 pixel too large
* Need to pad dirty area to ensure removed shapes are fully removed
</content>
</entry>
<entry>
<title>vectorio: clean up after group removal</title>
<updated>2020-05-10T22:36:23+00:00</updated>
<author>
<name>warriorofwire</name>
<email>3454741+WarriorOfWire@users.noreply.github.com</email>
</author>
<published>2020-05-10T22:36:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=58c8e00745064bd290fc9ec18a838960b27c1eea'/>
<id>urn:sha1:58c8e00745064bd290fc9ec18a838960b27c1eea</id>
<content type='text'>
VectorShape tells the Group to redraw whatever it left behind when it is removed now.
</content>
</entry>
<entry>
<title>vectorio: respect display transpose and mirror.</title>
<updated>2020-05-10T21:18:13+00:00</updated>
<author>
<name>warriorofwire</name>
<email>3454741+WarriorOfWire@users.noreply.github.com</email>
</author>
<published>2020-05-10T21:17:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=6660311a96f063e935e85a228f8b12e3a07ca95c'/>
<id>urn:sha1:6660311a96f063e935e85a228f8b12e3a07ca95c</id>
<content type='text'>
VectorShape now just uses the Group's and Display's absolute transforms.
</content>
</entry>
<entry>
<title>vectorio: switch per-shape transform to Display</title>
<updated>2020-05-10T05:15:51+00:00</updated>
<author>
<name>warriorofwire</name>
<email>3454741+WarriorOfWire@users.noreply.github.com</email>
</author>
<published>2020-05-09T06:03:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=4086600b61f14e043f02c1b8771e7780b82f313c'/>
<id>urn:sha1:4086600b61f14e043f02c1b8771e7780b82f313c</id>
<content type='text'>
Rather than maintain a transform per-shape, we'll just use whatever
  settings are on the Display.  Currently only transpose is done.
</content>
</entry>
<entry>
<title>Add vectorio: for drawing shapes</title>
<updated>2020-05-09T22:38:22+00:00</updated>
<author>
<name>warriorofwire</name>
<email>3454741+WarriorOfWire@users.noreply.github.com</email>
</author>
<published>2020-05-02T09:21:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=206d0e598adb66e2b23a39a7d11e2f5087513205'/>
<id>urn:sha1:206d0e598adb66e2b23a39a7d11e2f5087513205</id>
<content type='text'>
vectorio builds on m4 express feather

Concrete shapes are composed into a VectorShape which is put into a displayio Group for display.

VectorShape provides transpose and x/y positioning for shape implementations.

Included Shapes:

* Circle
  - A radius; Circle is positioned at its axis in the VectorShape.
  - You can freely modify the radius to grow and shrink the circle in-place.

* Polygon
  - An ordered list of points.
  - Beteween each successive point an edge is inferred.  A final edge closing the shape is inferred between the last
    point and the first point.
  - You can modify the points in a Polygon.  The points' coordinate system is relative to (0, 0) so if you'd like a
      top-center justified 10x20 rectangle you can do points [(-5, 0), (5, 0), (5, 20), (0, 20)] and your VectorShape
      x and y properties will position the rectangle relative to its top center point

* Rectangle
  A width and a height.
</content>
</entry>
<entry>
<title>aesio: add basic AES encryption and decryption</title>
<updated>2020-05-06T09:40:06+00:00</updated>
<author>
<name>Sean Cross</name>
<email>sean@xobs.io</email>
</author>
<published>2020-04-14T03:18:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=b168784fa0fd97b17807836b390c79abaadfa8e4'/>
<id>urn:sha1:b168784fa0fd97b17807836b390c79abaadfa8e4</id>
<content type='text'>
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:

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

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
https://github.com/Legrandin/pycryptodome/tree/39626a5b01ce5c1cf51d022be166ad0aea722177/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 &lt;sean@xobs.io&gt;
</content>
</entry>
<entry>
<title>Merge pull request #2842 from hierophect/stm32-h7-displayio</title>
<updated>2020-05-05T16:37:08+00:00</updated>
<author>
<name>hierophect</name>
<email>hierophect@gmail.com</email>
</author>
<published>2020-05-05T16:37:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=c311b5c002d004d7a985ecdaf8e0344b35dca209'/>
<id>urn:sha1:c311b5c002d004d7a985ecdaf8e0344b35dca209</id>
<content type='text'>
STM32: Add displayio to F7/H7</content>
</entry>
</feed>
