Commit Graph

1152 Commits

Author SHA1 Message Date
warriorofwire
eb3d5fa453 ujson: do not eat trailing whitespace
Ujson should only worry about whitespace before JSON.  This becomes apparent when you are using MP stream protocol to read directly from input buffers.

When you attempt to read(1) on a UART (and possibly other protocols) you have to wait for either the byte or the timeout.

Fixes:
- Waiting for a timeout after you have completed reading a correct and complete JSON off the input.
- Raising an OSError after reading a correct and complete JSON off the input.
- Eating more data than semantically owned off the input buffer.
- Blocking to start parsing JSON until the entire JSON body has been loaded into a potentially large, contiguous Python object.

Code you would write before:
```
line = board_busio_uart_port.read_line()
json_dict = json.loads(line)
```
or reaching for fixed buffers and swapping them around in Python.

Code that did not work before that does now:
```
json_dict = json.load(board_busio_uart_port)
```

- This removes the need for intermediate copies of data when reading JSON from micropython stream protocol inputs.
- It also increases total application speed by parsing JSON concurrently with receiving on boards that read from UART via DMA.
- It simplifies code that users write while improving their apps.
2020-05-10 20:45:42 -07:00
warriorofwire
206d0e598a Add vectorio: for drawing shapes
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.
2020-05-09 15:38:22 -07:00
Dan Halbert
8d00d99ca0
Shrink hallowing_m0_express to fit ko build 2020-05-08 22:51:21 -04:00
Daniel Pollard
7f1be814c8 changed build variables as per advice 2020-05-06 09:04:15 +10:00
Daniel Pollard
f63ee9fb9b excluded countio from other smaller boards 2020-05-05 16:15:57 +10:00
Daniel Pollard
d5c24b99b8 hallowing m0 - exclude countio 2020-05-05 16:04:28 +10:00
Daniel Pollard
bfa5cd9c13 refactor countio based on feedback 2020-05-05 15:23:38 +10:00
Dan Halbert
602eabe668
Squeeze hallowing_m0_express build slightly
ko build is a little too big.
2020-05-04 17:18:53 -04:00
Dan Halbert
c377d4bea7
Merge branch 'master' into non-standard-nvm 2020-05-04 16:08:45 -04:00
Scott Shawcroft
3799c34564
Disable bitbangio on CPX Crickit so we have room for lower_power.
Enable pixelbuf in its place because we'll need it soon.
2020-04-29 13:57:09 -07:00
Max Holliday
b2de5a9df9 fixing my goofy gcc-arm local stuff 2020-04-28 12:24:10 -07:00
Max Holliday
6c4decd4e2 decoupling chip specific functions from EXTERNAL_FLASH_QSPI_SINGLE 2020-04-28 11:51:07 -07:00
Scott Shawcroft
755d404edf
Merge remote-tracking branch 'adafruit/master' into lower_power 2020-04-27 16:45:10 -07:00
Max Holliday
86943ca8a1 Merge remote-tracking branch 'adafruit/master' 2020-04-27 13:51:51 -07:00
Scott Shawcroft
9e4b94f466
Merge pull request #2805 from tannewt/update_tinyusb
Update tinyusb
2020-04-26 20:55:36 -07:00
Lucian Copeland
bd0df9e3bc Minor redundancy fix 2020-04-23 17:43:35 -04:00
Lucian Copeland
c6c77726e7 Merge remote-tracking branch 'upstream/master' into stm32-docfix 2020-04-23 13:39:48 -04:00
Lucian Copeland
8791ca6af3 implement requested changes 2020-04-23 13:33:41 -04:00
Scott Shawcroft
dcb0e50f04
Fix USB midi and hid disable. 2020-04-21 14:15:44 -07: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
Scott Shawcroft
a4d86b96fd
Merge pull request #2777 from pewpew-game/master
Fix RGB/BGR colors in Stage
2020-04-20 15:25:29 -07: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
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
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
Scott Shawcroft
7e3d4c61b5
Update TinyUSB and add interrupt hooks. 2020-04-17 14:16:49 -07:00
Radomir Dopieralski
43022d8294 Add copyrights to pewpew m4 and ugame board.c 2020-04-17 09:50:11 +02:00
Scott Shawcroft
b3552efc76
Remove accidental file 2020-04-16 11:28:01 -07:00
Radomir Dopieralski
f39ca6052e Fix RGB/BGR colors in Stage
This makes the colors used by the stage library compatible with those
used by the displayio library.
2020-04-15 23:41:38 +02:00
Scott Shawcroft
b580b34cbf
Merge remote-tracking branch 'adafruit/master' into lower_power 2020-04-14 17:14:44 -07:00
Jeff Epler
23bced26da samd: actually disable protomatter timer
Just setting the timer handler to NO_INTERRUPT doesn't stop the
interrupt from occurring.
2020-04-14 18:24:58 -05:00
Jeff Epler
759fdffda5 Update ports/atmel-samd/boards/pyportal_titano/board.c
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
a51d4f7a45 pycubed: add trailing newline to file
POSIX specifies that text files end in a trailing newline
2020-04-14 18:24:54 -05:00
Sabas
cac4fb0318
Merge branch 'master' into nfc_copy 2020-04-09 17:05:11 -05:00
sabas1080
49771b4d7f Update to v1.3 2020-04-09 14:27:51 -05:00
Scott Shawcroft
d0a25ca9ac
Tweaks based on dhalberts feedback 2020-04-08 10:49:46 -07:00
Max Holliday
181ecf4a9b fixing my goofy CROSS_COMPILE fix 2020-04-07 21:54:46 -07:00
Max Holliday
a53a26be70 missed a debug flag 2020-04-07 18:24:53 -07:00
Max Holliday
826837186c adds standard (non-queued) SPI support to QSPI for external flash 2020-04-07 18:17:25 -07:00
Scott Shawcroft
c0ba2a839f
Updates based on feedback from jepler 2020-04-06 16:03:31 -07:00
Scott Shawcroft
e99cf6e441
Rework sleep timing
It didn't account for background task time and could end up
sleeping for way longer than it should because the RTC compare time
had already passed.
2020-04-03 18:07:56 -07:00
Scott Shawcroft
46af4bdd0e
Fix SAMD21 PulseIn 2020-04-02 17:35:52 -07:00
Scott Shawcroft
77562a2acd
Update the supported ports 2020-03-31 18:27:55 -07:00
Scott Shawcroft
8fe512c7e9
Merge remote-tracking branch 'adafruit/master' into lower_power 2020-03-31 15:13:58 -07:00
Brian Dean
7cfa8e1a68 board_vina_m0:pins.c: PGM_LED is on PA28 not PA15. 2020-03-29 18:59:00 -04: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
798118b74f
Update board.c's to remove remaining tick.h 2020-03-27 14:52:35 -07:00
Scott Shawcroft
e4c4a4a3de
Swap to committed dependencies 2020-03-27 14:39:59 -07:00
Scott Shawcroft
b043384949
Update built in display init 2020-03-27 14:35:29 -07:00
Brian Dean
7fa38e8725 Update board name to bdmicro_vina_m0 to eliminate hyphens. 2020-03-27 13:37:59 -04:00
Brian Dean
14a1e5756e Merge branch 'master' of https://github.com/adafruit/circuitpython 2020-03-26 20:28:54 -04:00
Brian Dean
2ae9edcbff Add new board BDMICRO 'Vina M0'.
ports/atmel-samd/boards/bdmicro_vina_m0/board.c
ports/atmel-samd/boards/bdmicro_vina_m0/mpconfigboard.h
ports/atmel-samd/boards/bdmicro_vina_m0/mpconfigboard.mk
ports/atmel-samd/boards/bdmicro_vina_m0/board.c

This board includes the newly added MX25L51245G 64MB SPI flash chip
for the CircuitPython file system. Also included is the PCF2129T/2,518
high accuracy, battery backed, RTC. Also includes an independent USB
HOST connector in addition to USB DEVICE making it easy to connect USB
peripherals. Designed mainly as a general purpose module to piggy back
onto application-specific boards, it can also run low power standalone
in harsh environments for data logging and other control applications
using an appropriate enclosure.

Has been extensively tested with CircuitPython and works well.
2020-03-26 20:15:54 -04:00
Scott Shawcroft
aec3b2419b
Merge pull request #2733 from oshwabadge2020/change_backlight
Add backlight polarity flag to Display
2020-03-26 14:00:47 -07:00
Thea Flowers
ff67571e9a Add GD25Q64C as a flash chip for Sol 2020-03-26 12:33:27 -07:00
siddacious
9e0c00dfd4 adding a backlight polarity flag to Display 2020-03-25 22:51:20 -07:00
Chris Burton
5e559be9b5 Remove Adafruit_CircuitPython_CircuitPlayground 2020-03-24 21:10:34 +00:00
Chris Burton
39a19d54c2 Add support for Commander 2020-03-22 16:23:56 +00:00
Scott Shawcroft
5dc3a8960b
Merge pull request #2719 from theacodes/add-honking-button
Add board support for Winterbloom Big Honking Button
2020-03-18 17:37:59 -07:00
Thea Flowers
e027aaf433 Remove some build options, fix order of boards in build.yml 2020-03-18 16:49:10 -07:00
Thea Flowers
7332adfa21 Add board support for Winterbloom Big Honking Button 2020-03-18 16:29:44 -07:00
Scott Shawcroft
4603c6ddd7
Merge pull request #2711 from jepler/update-ulab
update ulab
2020-03-17 15:33:08 -07:00
Scott Shawcroft
6db11cf68b
Fix up Spresense build. It doesn't sleep. 2020-03-17 14:21:45 -07:00
Scott Shawcroft
d9e68156b2
fix up SAMD21 sleep 2020-03-17 12:10:35 -07:00
Jeff Epler
d6342af980 ulab: rename enable macro so it appears in the support matrix 2020-03-17 09:33:03 -05:00
Scott Shawcroft
76ca13b6ed
Fix SAMD51 pulsein 2020-03-13 17:21:15 -07:00
Scott Shawcroft
7100d5e485
Fix autoreload and ticks in general 2020-03-13 16:13:24 -07:00
Scott Shawcroft
df5be65423
Update FrequencyIn for new clock API. 2020-03-13 16:12:52 -07:00
Szymon Klause
c9aa50817c add UARTLogger2 board support for CircuitPython 2020-03-13 21:39:17 +01:00
Scott Shawcroft
4fba4eb133
Switch from 1k RTC input to 32k output 2020-03-13 11:16:41 -07:00
Scott Shawcroft
48b5f2a384
Initial work on SAMD 2020-03-13 11:16:41 -07:00
Dan Halbert
6363b5ad06
Merge pull request #2693 from jepler/ulab-enable
ulab: enable on most builds
2020-03-10 09:48:46 -04:00
Jeff Epler
03a2b2faf1 ulab: don't enable on m0 boards 2020-03-09 23:00:21 -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
Thea Flowers
409a4a9490 Disable the HID USB descriptor for Sol
It's not used and ends up being confusing for folks.
2020-03-04 23:22:46 -08: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
fa3b9eba92 ulab: Incorporate it 2020-02-27 11:03:03 -06:00
jepler
f20255813f samd51 thing plus: new port
testing performed:
 * successfully store and retrieve a 500kB file on the flash
 * square wave output on each pin appears on o'scope
 * board.SPI(), board.SERIAL(), board.I2C() all construct
2020-02-25 11:52:23 -06:00
Dan Halbert
dcc8abf74e
Merge pull request #2638 from fgallaire/master
Arduino Nano 33 IoT support
2020-02-22 00:12:06 -05:00
Florent Gallaire
96db16a7a2 Last NINA pins 2020-02-22 04:30:18 +01:00
Florent Gallaire
39ec5d0e51 Add NINA pins 2020-02-21 01:34:52 +01:00
Scott Shawcroft
4552aff125
Merge pull request #2629 from mubes/rtsctsrs485
Addition of RTS/CTS/RS485 capability
2020-02-19 10:35:57 -08:00
Florent Gallaire
fba0b302ff Add Arduino Nano 33 IoT support 2020-02-19 08:56:06 +01:00
Florent Gallaire
63bcd52a5a Add Arduino Nano 33 IoT documentation 2020-02-19 08:50:27 +01:00
Dan Halbert
1f148242db
Merge pull request #2605 from maholli/master
New board: PyCubed + updates to SAM32 board
2020-02-18 22:01:41 -05:00
Dave Marples
24405cabaf Edits as a result of review 2020-02-19 00:07:01 +00:00
Dave Marples
490a808bf6 Addition of stubs for rs485/CTS/RTS handling on non-implemented chips 2020-02-18 23:16:40 +00:00
Max Holliday
2b79d8ffe9 adding PWM to board.c for external WDT 2020-02-18 14:16:54 -08:00
Max Holliday
93760042fa no current need for NVM 2020-02-16 11:43:19 -08:00
Dan Halbert
dc97b0d844 correct chec^Cfor flash erase boundaries 2020-02-13 17:41:05 -05: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
Max Holliday
b91c4e66cb adding Adafruit_CircuitPython_Register to frozen + updating SAM32 2020-02-08 16:09:47 -08:00
Max Holliday
84fa0c187e adding new board - PyCubed
open source and radiation tested hardware + software platform for small satellites called CubeSats. See pycubed.org for more info. See quickstart.pycubed.org for lots of circuitpython examples
2020-02-08 15:33:25 -08:00
Scott Shawcroft
51004f8336
Merge pull request #2601 from dhalbert/monotonic_ns-improvement
Monotonic ns improvement; time.sleep rounds to nearest msec
2020-02-07 11:03:37 -08:00
Limor "Ladyada" Fried
71672fd244
Merge pull request #2599 from ladyada/master
update rotation so 0 is the default, for much faster ondiskbitmaps
2020-02-07 12:59:30 -05:00
Dan Halbert
005c4caf8c fix function defs for compiler 2020-02-07 10:32:37 -05:00
Dan Halbert
857d8ab40a improve time.monotonic_ns() accuracy from ms to us 2020-02-07 10:02:50 -05:00
Lady Ada
789e311b63 update rotation so 0 is the default, for much faster ondiskbitmaps 2020-02-06 16:28:02 -05:00
neubauek
d93d491a61 Cleaned up CircuitBrains Basic and Deluxe board definitions 2020-02-06 14:47:22 -06:00
James Bowman
acef93a253 Rename eveL to _eve, EVEL to _EVE 2020-02-05 18:17:58 -08:00