Commit Graph

4527 Commits

Author SHA1 Message Date
Sean Cross 77cf4dce8f nrf: disable interrupts before running wfi
In order to ensure we don't have any outstanding requests, disable
interrupts prior to issuing `WFI`.

As part of this process, check to see if there are any pending USB
requests, and only execute the `WFI` if there is no pending data.

This fixes #2855 on NRF.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-21 21:43:52 +08:00
jason 4f54514be4 Initial version 2020-05-20 21:11:06 -05:00
Scott Shawcroft c32214ccc7
Merge pull request #2932 from simmel-project/nrf-rtc-reset
nrf: reset rtc as part of port_reset()
2020-05-20 11:39:16 -07:00
Scott Shawcroft a43876ad1e
Fix esp wrover 2020-05-20 11:37:29 -07:00
Scott Shawcroft 0af5dd59f2
Merge pull request #2898 from hierophect/mimxrt-claiming
MIMXRT: Implement pin claiming, pin reset, and pin protections
2020-05-20 11:32:22 -07:00
Scott Shawcroft ba724fffb4
Merge remote-tracking branch 'adafruit/master' into esp32s2_digitalio 2020-05-20 10:48:27 -07:00
Lucian Copeland 66c09efae2 Add UART one-way instance search, fix bugs in stm32 implementation 2020-05-20 12:48:01 -04:00
Scott Shawcroft fd0420d432
Update digitalio api for other ports 2020-05-20 09:23:42 -07:00
Sean Cross 4cca455c9b nrf: reset rtc as part of port_reset()
On NRF, the `rtc_reset()` function is never called.  As a result,
calls to `time.time()` return a cryptic error>

```
>>> import time
>>> time.time()
'' object has no attribute 'datetime'
>>>
```

This is because `MP_STATE_VM(rtc_time_source)` is not initialized
due to `rtc_reset()` never being called.

If `CIRCUITPY_RTC` is enabled, call `rtc_reset()` as part of the
`reset_port()` call. This ensures that `time.time()` works as expected.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-20 16:44:18 +08:00
Scott Shawcroft 80517c4cf6
First try at critical section support 2020-05-19 17:49:17 -07:00
Scott Shawcroft 49090d1378
Fully implement digitalio and pin-in-use tracking.
Fixes #2901
2020-05-19 17:46:29 -07:00
Scott Shawcroft 916ca9f8a6
Merge pull request #2910 from tannewt/esp32s2
Add initial ESP32S2 support
2020-05-19 12:53:23 -07:00
Lucian Copeland 38fd9c25f2 Re-add APA102 2020-05-19 15:33:34 -04:00
Scott Shawcroft acf4b1bede
Remove reverse methods from per-board defs 2020-05-19 11:43:57 -07:00
Lucian Copeland b310b04007 Remove pin/port distinction 2020-05-19 14:20:07 -04:00
Scott Shawcroft 9eb85a5feb
shrink Xinabox CS11 by turning off unused pins 2020-05-19 10:55:02 -07:00
Lucian Copeland 2acd173e14 Implement core requested changes 2020-05-19 13:54:47 -04:00
Sean Cross c1bcc25b88 nrf: _bleio: clean up timeout calculation
The timeout value is calculated by the common-hal layer now, so we don't
need to be quite so clever about calculating it here.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-19 21:56:39 +08:00
Sean Cross 34f91f01c6 bleio: adapter: add advertising timeout and status
Add a field to allow specifying a timeout when initiating advertising.
As part of this, add a new property to determine if the device is still
advertising.

Additionally, have the `anonymous` property require a timeout, and set
the timeout to the maximum possible value if no timeout is specified.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-19 15:01:19 +08:00
Sean Cross cfe65742a3 _bleio: support anonymous advertising
Add a new parameter to the `start_advertising()` function to enable
anonymous advertising.  This forces a call to `sd_ble_gap_privacy_set()`
with `privacy_mode` set to `BLE_GAP_PRIVACY_MODE_DEVICE_PRIVACY` and
`private_addr_type` set to
`BLE_GAP_ADDR_TYPE_RANDOM_PRIVATE_RESOLVABLE`.

With this, addresses will cycle at a predefined rate (currently once
every 15 minutes).

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-19 15:01:18 +08:00
Scott Shawcroft 2c2b53303d
Merge pull request #2837 from k0d/serial-debug
Add support for a debug console, such as ST-Link VCP.
2020-05-18 18:13:31 -07:00
Scott Shawcroft 03b6f7b87b
Add commend about FreeRTOS stack canary 2020-05-18 17:28:13 -07:00
Scott Shawcroft 164628282d
Update TinyUSB and shorten USB task delay 2020-05-18 17:27:49 -07:00
Mark Olsson 007c92ee6a Enable showing the console on a debug uart 2020-05-19 02:02:52 +02:00
Scott Shawcroft cf690bd390
Merge remote-tracking branch 'adafruit/master' into esp32s2 2020-05-18 16:46:41 -07:00
Scott Shawcroft 32617d5f2f
Merge pull request #2925 from arturo182/imx-spi
mimxrt1010: Increase max SPI speed
2020-05-18 15:22:42 -07:00
Scott Shawcroft ebfc1f2599
Merge pull request #2926 from arturo182/imx-temperature-fix
mimxrt10xx: Fix cpu.temperature crash
2020-05-18 15:20:21 -07:00
Scott Shawcroft af68ddebef
Merge pull request #2924 from simmel-project/nrf-rtc-persist
NRF: Persist RTC offset across reboots
2020-05-18 15:06:42 -07:00
Scott Shawcroft 9811c1fe4b
Merge pull request #2896 from theacodes/add-bytearray-decode
Add bytearray.decode() for CPython compatibility
2020-05-18 14:38:45 -07:00
arturo182 058a73128c mimxrt10xx: Fix cpu.temperature crash
Fixes #2514
2020-05-18 22:30:50 +02:00
arturo182 f92d53eaab mimxrt1010: Increase max SPI speed 2020-05-18 22:07:38 +02:00
Sean Cross 9f7c26c60d nrf: port: call common_hal_rtc_init() during init
Call the new function to set the RTC, or reset it if the offset is not
valid.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-18 11:52:30 +08:00
Sean Cross 83680c41db nrf: rtc: persist rtc offset across reboots
Store the RTC value in the .uninitialized section, but make sure to
flank it with some known values.  That way we can determine if the RTC
value has been initialized, or if it's random uninitialized garbage.

As part of this, add a `common_hal_rtc_init()` routine to determine if
the value is correct, or reset it to 0 if it is not valid.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-18 11:52:27 +08:00
Sean Cross 3b5f5ddaa6 nrf: port: move saved word into .uninitialized section
Circuit Python supports saving a single word of data across reboots.
Previously, this data was placed immediately following the .bss.

However, this appeared to not work, as Circuit Python zeroes out the
heap when it starts up, and the heap begins immediately after the .bss.

Switch to using the new .uninitialized section in order to store this
word across resets.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-18 11:52:25 +08:00
Sean Cross 192bb155fa nrf: port: move the heap after .uninitialized
Previously, it was placed following .bss.  However, now that there is a
new section after .bss, the heap must be moved forward.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-18 11:52:20 +08:00
Sean Cross f002c784c0 nrf: linker: add a new .uninitialized section
This section immediately follows the .bss section, and is designed to
contain uninitialized variables that should persist across reboots.

The section is placed directly after .bss, under the theory that the
size of Circuit Python's .bss + .data is bigger than the bootloader's
.bss + .data, so there is less likely to be a conflict.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-18 11:52:17 +08:00
cyz 4f7b4241a2 add hiibot_bluefi 2020-05-18 09:42:37 +08:00
Dan Halbert e175a64036
disable rotaryio in CPX crickit 2020-05-15 20:35:12 -04:00
Scott Shawcroft a57da6b808
Add port_fixed_stack for more spresence 2020-05-15 17:22:41 -07:00
Scott Shawcroft 8edb8e87c8
Turn reverse methods off for trinket haxpress 2020-05-15 17:22:22 -07:00
Scott Shawcroft 86f865afe0
Turn reverse methods off for cpx_crickit 2020-05-15 16:42:22 -07:00
Scott Shawcroft 3c1469b0a5
Add port_fixed_stack for more builds 2020-05-15 16:22:33 -07:00
Scott Shawcroft 6aaab005c5
Initial ESP32S2 port.
Basic blinky works but doesn't check pins.
2020-05-15 15:36:16 -07:00
Dan Halbert a3ca9401b4
Shrink crickit build 2020-05-15 18:29:37 -04:00
Lucian Copeland 99538c2414 Implement pin claiming, pin reset, and pin protections 2020-05-15 15:16:51 -04:00
Scott Shawcroft 0d8bca92e2
Merge pull request #2810 from dherrada/master
Pyi integration
2020-05-15 10:31:05 -07:00
Scott Shawcroft db4dbe0752
Merge pull request #2889 from jepler/gamepad-tick
Gamepad, GamepadShift: Fix after lower-power by enabling supervisor tick
2020-05-13 11:53:23 -07:00
Jeff Epler eb876e21c3 nrf: code style 2020-05-13 10:40:41 -05:00
Jeff Epler 011acf41c0 nrf: Ensure ticks enabled while playing audio 2020-05-13 10:40:36 -05:00
Jeff Epler adef45403b samd: audio dma: enable/disable supervisor tick as needed 2020-05-13 10:29:36 -05:00
Scott Shawcroft 7546d47f77
Merge remote-tracking branch 'adafruit/master' into improve_verification 2020-05-13 08:23:55 -07:00
Scott Shawcroft 80129c5a21
Disable countio on trinket haxpress 2020-05-12 18:55:49 -07:00
Scott Shawcroft cde6651721
Merge remote-tracking branch 'adafruit/master' into improve_verification 2020-05-12 18:23:59 -07:00
Scott Shawcroft 277e8d528b
Merge branch 'master' into Optical-Encoder-Module 2020-05-12 18:22:57 -07:00
Scott Shawcroft 4e8de3c554
Swap sphinx to autoapi and the inline stubs 2020-05-12 17:28:24 -07:00
warriorofwire 5a80f5e606 nerf vectorio on a ton of m0 and overcommitted m4 boards due to translation text size 2020-05-12 15:23:00 -07:00
Scott Shawcroft d274074f01
Merge remote-tracking branch 'adafruit/master' into vectorio 2020-05-12 12:29:05 -07:00
Scott Shawcroft bc40034a08
Merge branch 'master' into Optical-Encoder-Module 2020-05-12 12:12:51 -07:00
Scott Shawcroft f7303e6bd0
Merge pull request #2754 from maholli/non-standard-nvm
Add non-standard nvm to QSPI for external flash support
2020-05-12 11:56:33 -07:00
Daniel Pollard 62bdfb74e3 removed lib from catwan_usbstick - updated transalations overflowed 2020-05-12 16:40:23 +10:00
Daniel Pollard 5e5461e77e removed countio from catwan_usbstick build 2020-05-12 16:32:35 +10:00
Daniel Pollard ee2cb703c8 merged master 2020-05-12 14:41:28 +10:00
Sean Cross ffaeeda749 nrf: simmel: decrease flash filesystem size
The flash filesystem must be reduced in order to allow the current
build to fit.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-12 09:31:51 +08:00
Sean Cross f7fcd43516 nrf: simmel: disable SPIM3
Disable the SPIM3 controller to avoid needing to dedicate 8 kB to
the SPIM3 block.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-12 09:31:51 +08:00
Sean Cross 370fc7293a nrf: support disabling SPIM3
SPIM3 is faster than all other SPI blocks, and is capable of generating
a 32 MHz clock.  However, it cannot be used at the same time as the BLE
radio without dedicating an additional 8 kB of RAM to it.

Therefore, some boards may want to disable this.  Support pre-defining
NRFX_SPIM3_ENABLED on the command line to disable it on some bords.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-12 09:31:51 +08:00
Sean Cross 79c055f958 nrf: simmel: enable aesio
This adds AES support to simmel.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-12 09:31:51 +08:00
Sean Cross 235098efb8 nrf: simmel: correct CSn pin
The CSn pin is pin 6 on bank 1, not bank 0.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-12 09:31:51 +08:00
Scott Shawcroft 62b835ad76
Merge pull request #2833 from xiongyihui/pitaya-go
add nRF52840 based Makerdiary Pitaya Go
2020-05-11 16:34:27 -07:00
Scott Shawcroft 4937d5f1ca
Merge pull request #2866 from hierophect/stm32-lsetimeout
STM32: Fix LSE hang at startup
2020-05-11 16:23:09 -07:00
Scott Shawcroft 55f78bfb70
Merge pull request #2878 from WarriorOfWire/ujson-stream-protocol
ujson: work with mp stream protocol for fast & easy read
2020-05-11 15:40:27 -07:00
Scott Shawcroft 801d9655e5
Merge pull request #2881 from DavePutz/Issue2872
Added call to rtc_reset() to fix Issue #2872
2020-05-11 15:30:32 -07:00
Lucian Copeland 94949fb46f Add recovery domain write access, adjust stack 2020-05-11 18:02:40 -04:00
Scott Shawcroft 61450cbd56
Add Teensy 4.1 board definition 2020-05-11 13:58:58 -07:00
Lucian Copeland 248704b262 Merge remote-tracking branch 'upstream/master' into stm32-lsetimeout 2020-05-11 14:18:37 -04:00
DavePutz 407938bf3a
Added a check for platforms supporting RTC before calling rtc_reset()
Added an #if CIRCUITPY_RTC check  for platforms supporting RTC
2020-05-11 12:03:44 -05:00
DavePutz 2ddfab315c
Added call to rtc_reset() in rtc_init()
Fix for issue #2872. The rtc_time_source had not been initialized; causing a time.time() call to fail.
2020-05-11 11:31:18 -05:00
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
Max Holliday e6df8e0989 Merge branch 'master' into non-standard-nvm 2020-05-09 12:22:50 -07:00
Dan Halbert 8d00d99ca0
Shrink hallowing_m0_express to fit ko build 2020-05-08 22:51:21 -04:00
Lucian Copeland 5249a7b02c Add timeout and adjustment to LSI 2020-05-08 12:36:39 -04:00
Jeff Epler 182ae10080 Fix build after #2831 (stm32f4xx rgbmatrix) broke it 2020-05-07 18:32:50 -05:00
Scott Shawcroft c3b3eb4c21
Merge pull request #2831 from jepler/rgbmatrix-stm
stm: enable RGBMatrix
2020-05-06 08:35:25 -07:00
Scott Shawcroft 4519ddebeb
Merge pull request #2841 from hierophect/mimxrt-spi-oneway
mimxrt10xx: add one-directional SPI
2020-05-06 08:32:21 -07:00
Daniel Pollard 7f1be814c8 changed build variables as per advice 2020-05-06 09:04:15 +10:00
Lucian Copeland a1330747e8 text fixes, postpone warning disable 2020-05-05 12:46:30 -04:00
hierophect c311b5c002
Merge pull request #2842 from hierophect/stm32-h7-displayio
STM32: Add displayio to F7/H7
2020-05-05 12:37:08 -04: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 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 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
Dan Halbert d6c6f9f4f0 add PacketBuffer .incoming_ and .outgoing_packet_length 2020-05-04 15:59:45 -04:00
Dan Halbert 4d7e341e44
Merge pull request #2844 from xobs/add-nrf-pca10100
nrf: add pca10100
2020-05-04 10:51:01 -04:00
Sean Cross b128399d1e nrf: simmel: enable CIRCUITPY_USB_HID
Simmel had USB HID disabled in order to save space.  However, the board
configuration did not set USB_DEVICES, causing it to inherit the default
device bouquet of MSC,CDC,MIDI,HID.  This in turn caused HID to be included
in the USB Configuration Descriptor.

For some reason, this was not a problem in an earlier version of tinyusb or
circuitpython.  However, in the most recent version this has rightfully
caused asserts to appear during configuration.

Re-enable USB_HID for now, as it doesn't add too much in terms of space.
We may disable it again later on if we become pressed for space.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-04 15:37:53 +08:00
Sean Cross cb4fc894d7 nrf: add pca10100
This is the nRF52833-DK board.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-04 15:07:49 +08:00
Lucian Copeland 61b0994631 Fix flag typo 2020-05-01 14:46:06 -04:00
Lucian Copeland bc581fbdfb Add-unidirectional-SPI 2020-05-01 13:15:38 -04:00
Yihui Xiong 7dd3ddc06b use Nordic's VID which seems to be allowed
https://devzone.nordicsemi.com/f/nordic-q-a/50638/usb-pid-for-nrf52840
2020-05-01 06:10:43 +00:00
Scott Shawcroft a863b0a349
Fix openmv_h7 build 2020-04-30 13:46:12 -07:00
Scott Shawcroft 1ca90572f1
Merge remote-tracking branch 'adafruit/master' into lower_power 2020-04-30 13:25:31 -07:00
hierophect 10c5bf666e
Merge pull request #2836 from hierophect/stm32-openmv-pid
STM32: Add correct PID for the OpenMV
2020-04-30 16:07:34 -04:00
Lucian Copeland 06b62721b3 Increase H7 filesystem size 2020-04-30 15:49:17 -04:00
Scott Shawcroft 74a2d0944a
Merge pull request #2834 from Teknikio/fix/bluebird_pinout
Update teknikio bluebird pin assignments
2020-04-30 11:50:02 -07:00
Lucian Copeland 435aa3d055 Add correct PID for the OpenMV 2020-04-30 14:49:47 -04:00
Lucian Copeland 4f71bd295d Make PulseIO optional within DisplayIO 2020-04-30 14:47:50 -04:00
Scott Shawcroft f44e1d6a8d
Merge pull request #2828 from simmel-project/add-simmel
WIP: add simmel board
2020-04-30 11:40:34 -07:00
Lucian Copeland 89ff5589c4 Add the OpenMV-H7 R1 board 2020-04-30 12:39:20 -04:00
Jeff Epler e5be728c1c stm: enable protomatter
Testing performed: on stm32f405 feather, all pins change in plausible ways
on a logic probe.  Didn't actually drive a display yet.
2020-04-30 08:58:58 -05:00
JoeBakalor 36a71560c2 update teknikio bluebird pin assignments 2020-04-30 09:58:27 -04:00
Yihui Xiong 4393a88fb6 add nRF52840 based Makerdiary Pitaya Go 2020-04-30 07:38:20 +00:00
Dan Halbert 241d7e2ae6 change many ifndefs to ?= 2020-04-29 23:31:34 -04:00
Dan Halbert f3078511a6 further cleanup and bug fixing 2020-04-29 23:18:08 -04:00
Sean Cross 6aac9233db nrf: bluetooth: add s147 v7.0.1 softdevice hexfile
This was not added as part of the initial v7.0.1 patchset because
.hex files are in this project's .gitignore, and so git ignored it.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-30 10:43:46 +08: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
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
Scott Shawcroft a30ff70b4e
Merge remote-tracking branch 'adafruit/master' into lower_power 2020-04-29 10:51:21 -07:00
Sean Cross 1d0781bf12 nrf: add simmel board
This adds support for Simmel, an nRF52833-based bluetooth tracking
board designed to aid in pandemic tracing.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-29 11:40:00 +08:00
Scott Shawcroft 2d7cf4b792
Merge pull request #2819 from hierophect/stm32-readme
STM32: Add port readme, make flash
2020-04-28 12:32:03 -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
Max Holliday baad9c11df Merge branch 'master' into non-standard-nvm_cleanup 2020-04-28 11:42:58 -07:00
TG-Techie b9e494b85a add submodule to TG-Watch02A 2020-04-28 00:03:02 -04:00
Scott Shawcroft b7804f450b
Fix stm32746g_discovery
Also, rename it so that matches the other board names.
2020-04-27 20:34:42 -07:00
Scott Shawcroft e45de39998
Fix nucleo_f746zg build 2020-04-27 20:28:05 -07:00
TG-Techie 76b466a38a add submodule to TG-Watch02A 2020-04-27 22:49:30 -04:00
Lucian Copeland 2a0e176a77 Add readme and dfu-flashing 2020-04-27 20:51:47 -04:00
Scott Shawcroft de42e4af02
Merge remote-tracking branch 'adafruit/master' into lower_power 2020-04-27 17:43:32 -07:00
Scott Shawcroft 40a1f3edbc
Merge pull request #2811 from jepler/update-ulab
ulab: actually update the submodule
2020-04-27 17:41:43 -07:00
Scott Shawcroft 755d404edf
Merge remote-tracking branch 'adafruit/master' into lower_power 2020-04-27 16:45:10 -07:00
Dan Halbert faa50df05f
Merge pull request #2817 from jepler/stm-linker-scripts
Standardize on FLASH_FIRMWARE section name in linker scripts
2020-04-27 18:43:26 -04:00
Jeff Epler 7f0f0b30d3 linker scripts: Re-align at ":"
With "git show -b" you can verify that this is a whitespace only change
because the diff will be empty.
2020-04-27 17:17:42 -05:00
Max Holliday 86943ca8a1 Merge remote-tracking branch 'adafruit/master' 2020-04-27 13:51:51 -07:00
Jeff Epler 7eff89e9f9 linker scripts: Re-align at ":"
With "git show -b" you can verify that this is a whitespace only change
because the diff will be empty.
2020-04-27 12:47:52 -05:00
hierophect d9e4155815
Merge branch 'master' into stm32f7_os 2020-04-27 12:58:15 -04:00
Mark Olsson 31d8e46063 Enables os on STM32F7
os.uname() works
os.urandom() doesn't work yet, will enable in another PR
2020-04-27 18:18:43 +02:00
Mark Olsson f9096d83ac Enables PulseIO on STM32F7
Tested on nucleo_f746zg
2020-04-27 17:55:07 +02:00
Jeff Epler 6f6dc835d2 litex: Use FLASH_FIRMWARE instead of FLASH in linker scripts
for compatibility with the build_memory_info script
2020-04-27 09:12:45 -05:00
Jeff Epler 808b456927 mimxrt10xx: Use FLASH_FIRMWARE instead of FLASH_TEXT in linker scripts
for compatibility with the build_memory_info script

This change was scripted:
    git grep -l FLASH_TEXT | xargs sed -i s/FLASH_TEXT/FLASH_FIRMWARE/
2020-04-27 08:07:47 -05:00
Jeff Epler aff42defda stm: Use FLASH_FIRMWARE instead of FLASH_TEXT in linker scripts
for compatibility with the build_memory_info script

This change was scripted:
    git grep -l FLASH_TEXT | xargs sed -i s/FLASH_TEXT/FLASH_FIRMWARE/
2020-04-27 08:07:28 -05:00
Jeff Epler 485f667141 ulab: disable on espruino pico
this non-"express" board is nearly full.  Right now it's actually possible
just to disable the "compare" module, but as this leaves it packed
pretty full I prefer to fully disable it in order to avoid the topic
returning again soon.
2020-04-27 07:47:05 -05:00
Scott Shawcroft 9e4b94f466
Merge pull request #2805 from tannewt/update_tinyusb
Update tinyusb
2020-04-26 20:55:36 -07:00
hierophect 652a5de242
Merge pull request #2809 from k0d/stm32f767xx_fix
Adds missing declarations in periph.h for stm32f767xx
2020-04-25 14:16:34 -04:00
Mark Olsson 8814dd038e Adds missing declarations in periph.h for stm32f767xx 2020-04-25 19:50:48 +02:00
Scott Shawcroft 67c053e9c4
Add USB include for LiteX 2020-04-24 17:24:05 -07:00
Scott Shawcroft 5c7f6e6211
Remove empty #if and add missing includes. 2020-04-24 11:48:55 -07:00
Mark Olsson 91fbbcab19 adds support for the stm32f746g_disco board 2020-04-24 16:43:39 +02:00
Dan Halbert 5a22a5d016
Merge pull request #2598 from hierophect/stm32-docfix
Add stm to docs matrix
2020-04-24 10:07:15 -04:00
Dan Halbert 982a755eae
Merge pull request #2801 from simmel-project/nrf-s140-7.0.1
Add NRF S140 7.0.1
2020-04-23 21:59:51 -04: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
hierophect ead7c6c887
Merge pull request #2785 from k0d/ports_nucleo_f746zg
STM32: adds support for stm32f746xx MCU and the nucleo_f746zg board
2020-04-23 12:32:44 -04:00
Mark Olsson 83cc9783cc STM32: adds support for stm32f746xx MCU and the nucleo_f746zg board 2020-04-23 10:48:27 +02:00
Scott Shawcroft f13de32208
Add HSE_VALUE for STM feather. 2020-04-22 14:37:24 -07:00
Lucian Copeland d0a2106547 Remove old build flags, add fixes for shared_matrix 2020-04-22 16:06:08 -04:00
Scott Shawcroft b277944cf0
Fix STM so it matches the correct RTC fields. 2020-04-22 11:10:51 -07:00
Sean Cross 689dd61379 nrf: nrf52833: use s140 v7.0.1
Previously, we were using v6.1.1 which worked, but was unsupported.
v7.0.1 is the first version of s140 that supports the nRF52833.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-22 13:34:11 +08:00
Sean Cross 09bef7b0e1 nrf: bluetooth: add s140 v7.0.1
This is the first version with official support for nRF52833.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-22 13:33:39 +08:00
Dan Halbert 2f86e31501 fix calculation of nrf firmware size 2020-04-22 00:52:54 -04:00
Dan Halbert fbc8719fad ringbuf tested 2020-04-21 22:40:12 -04: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
Scott Shawcroft dcb0e50f04
Fix USB midi and hid disable. 2020-04-21 14:15:44 -07:00
Scott Shawcroft 5cc8a3ec82
Add back fake us delay. 2020-04-21 14:14:49 -07:00
Scott Shawcroft 17d038830d
Use our own flag for board crystal config. 2020-04-21 14:14:30 -07:00
Sean Cross c04e6d6f52 nrf: bleio: parameterize softradio configuration
Allow for setting various softradio memory settings as part of a
board in order to support lower-memory configurations.  If a
parameter is unspecified then the previously-defined value is used.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-21 12:29:59 +08:00
Sean Cross 3537ad4059 nrf: mpconfigport: support configuration of various sizes
Conditionally set variables such as the softdevice RAM size, bootloader
size, and the spi m3 buffer size.  This allows ports to adjust these
values to suit their needs.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-21 12:29:58 +08:00
Sean Cross 33720af0c6 nrf: mpconfigport: subtract config size from firmware size
The BLE Config area needs to be subtracted from the size of the firmware.
THis is because the firmware is counted by walking backwards from the end
of memory, and the BLE config area is placed lower in memory than the
firmware.  Subtracting the BLE config size ensures the internal flash
filesystem doesn't try to use the firmware as storage.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-21 12:29:57 +08:00
Sean Cross 3ed5b87b8f nrf: add support for nrf52833
This adds preliminary support for the nRF52833, which is a variant of
the nRF52840 with half the RAM, half the flash, and fewer peripherals.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-21 12:29:56 +08:00
Sean Cross 4ad1cbeea3 nrf: make rgbmatrix and framebufferio optional
Ports can set CIRCUITPY_RGBMATRIX and CIRCUITPY_FRAMEBUFFERIO to 0
in their .mk file in order to prevent these from being built.  This
is necessary for resource-constrained devices.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-21 10:44:21 +08:00
Sean Cross 066f486b28 nrf: supervisor: support building without BUSIO
Only initialize i2c, spi, and uart if building with BUSIO.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-21 10:44:20 +08:00
Sean Cross ac9d336f40 nrf: make neopixel support optional
Add a conditional around the call to neopixel_write(), allowing us
to build for nrf without neopixel support.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-21 09:56:27 +08: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
Mark Olsson 506f340c7d STM32: f767: Fixes linker settings. 2020-04-20 19:15:18 +02: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
hierophect 1a71c8c515
Merge pull request #2735 from hierophect/stm32x7-setup
STM32: Add F7 and H7 Support
2020-04-17 13:02:09 -04:00
Radomir Dopieralski 43022d8294 Add copyrights to pewpew m4 and ugame board.c 2020-04-17 09:50:11 +02:00
Lucian Copeland 9e49fc13f4 startup file crash fix, H7 bin fix 2020-04-16 17:33:48 -04:00
Scott Shawcroft 5b0d9bdeb0
Update copyright to bump the CI 2020-04-16 14:21:26 -07:00
Scott Shawcroft b3552efc76
Remove accidental file 2020-04-16 11:28:01 -07:00
Sean Cross 61f777c9c6 litex: enable binascii and ujson modules
Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-16 10:02:08 +08:00
Sean Cross bb527ac9ea litex: disable minimal build
Manually specify available modules and disable any modules
that are currently unsupported on the litex target.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-16 09:26:08 +08:00
Sean Cross db3933429a litex: add os module
Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-16 09:26:08 +08:00
Sean Cross 6885ffc9af litex: mphalport: add fake mp_hal_delay_us
Add a mp_hal_delay_us, which is required by some of the modules,
that simply calls mp_hal_delay_ms / 1000.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-16 09:26:08 +08: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
Lucian Copeland 00b2e6a1db Fix korea translation error, minor submodule change 2020-04-15 13:11:14 -04:00
Lucian Copeland 54abfc2e8b translations-merge 2020-04-15 10:29:05 -04:00
Lucian Copeland 6427994b14 Implement requested changes 2020-04-15 10:22:51 -04:00
Scott Shawcroft b580b34cbf
Merge remote-tracking branch 'adafruit/master' into lower_power 2020-04-14 17:14:44 -07:00
Scott Shawcroft 7dfcae6067
Tweaks from jepler 2020-04-14 17:09:48 -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 1d8a073c05 nrf: protomatter port 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
Jeff Epler db01f88cc3 enable MICROPY_PY_REVERSE_SPECIAL_METHODS where ulab is enabled 2020-04-13 19:58:52 -05:00
Lucian Copeland 83a55f65a4 Implement cache-based reads 2020-04-13 15:14:38 -04:00
Lucian Copeland 426d2afe28 Fix pin mapping for the H7 Nucleo 2020-04-13 14:36:49 -04:00
Lucian Copeland 6227e63cc5 Merge remote-tracking branch 'upstream/master' into stm32x7-setup 2020-04-13 12:03:56 -04:00
Lucian Copeland 5ac38c95cc Various requested fixes 2020-04-13 12:03:05 -04: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
Lucian Copeland 92a0621e59 Add busio support, cleanup 2020-04-09 13:43:19 -04:00
Scott Shawcroft 01941c027b
Fix up STM
Enable the Alarm IRQ earlier and correct bit clearing.
2020-04-08 14:41:57 -07: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 6544bf52fb
Enable SNVS interrupt
The iMX RT has a separate wake up controller, the GPC, that replaces
the NVIC when asleep. It adds the ability to only wake up on certain
interrupts. It seems that it requires at least one enabled interrupt
in the NVIC to turn on it's wake up circuitry. It doesn't need to
be the same interrupt as the wake up signal. For example, the RTC
in the SNVS can wake us up if a USB interrupt is enabled. Before
then it won't work. So, we enable the SNVS interrupt on start up
so it can wake us up.
2020-04-07 17:15:18 -07:00
Scott Shawcroft aae0ce6bad
Fix autoreload and ticks on IMX RT 2020-04-07 14:16:07 -07:00
Scott Shawcroft a8dfba235c
Fix alarm so that it is correctly set. 2020-04-07 13:07:29 -07:00
Scott Shawcroft c0ba2a839f
Updates based on feedback from jepler 2020-04-06 16:03:31 -07:00
arturo182 08f369ea96 mimxrt1011: Only re-init SPI when it's actually needed
If some crazy code (*cough* FourWire) decides to reconfigure the bus
before every transfer, it might get a bit slow...
2020-04-06 22:10:12 +02: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 7e69d30c02
Fix nRF PulseIn 2020-04-03 14:22:56 -07:00
Lucian Copeland 9761672d42 Linker file restructure, TCM and MPU additions 2020-04-03 16:33:18 -04:00
Scott Shawcroft 46af4bdd0e
Fix SAMD21 PulseIn 2020-04-02 17:35:52 -07:00
Lucian Copeland 47a5d83267 Implement F7 Nucleo 2020-04-02 11:47:16 -04:00
Sean Cross 9845a064ad ports: fomu: move more functions into ram for stability
The SPI flash on current Fomu firmware is slow.  Circuitpython runs
XIP from SPI flash, and so execution time can also be slow.  Ordinarily
this isn't a problem, however certain operations are time-sensitive.

In particular, USB function needs to be handled quickly in order to
prevent the host from re-enumerating the device.

Place several critical TinyUSB structures into RAM, as well as several
hot functions that are frequently called.  This reduces execution time
at the expense of system memory, and greatly improves system stability.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-04-02 11:21:22 +08:00
Lucian Copeland 2f764ded63 merge and docs 2020-04-01 13:52:53 -04:00
Lucian Copeland a89928c13c Implement requested changes 2020-04-01 13:02:05 -04:00
Scott Shawcroft 77562a2acd
Update the supported ports 2020-03-31 18:27:55 -07:00
Scott Shawcroft 75b7f583d2
Update LiteX APIs for new tick 2020-03-31 17:52:23 -07:00
Scott Shawcroft 1071924701
Fix thunderpack build 2020-03-31 17:05:37 -07:00
Scott Shawcroft 317b96e93a
Fix iMX builds 2020-03-31 17:00:30 -07:00
Scott Shawcroft 8fe512c7e9
Merge remote-tracking branch 'adafruit/master' into lower_power 2020-03-31 15:13:58 -07:00
Scott Shawcroft 4b063aeb29
Hack up STM32 PulseIn so it builds 2020-03-31 15:12:11 -07:00
Scott Shawcroft f47b964c5f
Merge pull request #2726 from xobs/fomu-circuitpython
ports: litex: add port and fomu board
2020-03-31 13:51:09 -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
Sean Cross c69f7f8657 ports: litex: use dfu.py instead of dfu-suffix.py
dfu.py now generates proper dfu suffixes without the nonstandard prefix.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-03-31 13:04:59 +08:00
Sean Cross 34ea140783 ports: fomu: build dfu as part of Makefile
Now that we have a replacement for `dfu-suffix`, construct a dfu
image rather than a UF2 image.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-03-31 11:42:55 +08:00
Sean Cross 065441e58c ports: litex: enable itcm region for fomu
This adds a new command line flag -DFOMU to indicate we're building
for a Fomu board.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-03-31 09:40:38 +08:00
Sean Cross 786e79ebc9 ports: litex: add port and fomu board
This adds support for Litex, along with support for the Fomu FPGA board.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-03-31 09:40:38 +08:00
Scott Shawcroft e8cffcf978
Merge pull request #2740 from arturo182/mimxrt10xx_neopixel
mimxrt10xx: Fix neopixel_write
2020-03-30 17:49:14 -07:00
arturo182 13022be299 mimxrt10xx: Fix neopixel_write 2020-03-31 01:05:03 +02:00
Brian Dean 7cfa8e1a68 board_vina_m0:pins.c: PGM_LED is on PA28 not PA15. 2020-03-29 18:59:00 -04:00
Lucian Copeland e2be069686 Support cached internal flash on the H743 2020-03-28 18:30:46 -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 a4a458943d
Correct MIMXRT sdk version 2020-03-27 15:40:17 -07: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
Lucian Copeland 7995bcac40 Flash additions 2020-03-27 14:15:33 -04: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
Lucian Copeland 348df4be2b Merge remote-tracking branch 'upstream/master' into stm32x7-setup 2020-03-26 18:16:11 -04:00
Lucian Copeland c4db8b87e2 Add F7 and H7 Support to the STM32 port
Restructures the STM port of Circuitpython to be more generic about the STM32 chip lines to support
the F7 and H7 series of chips. Adds the new Packages directory to organize different chip layouts
between lines. Makes general changes to the Makefile to condense board-level flags to the minimum
and support the new chip series. Adds the new chip line to the Peripherals directory, along with
new python tools used to generate peripheral text automatically in the tools/ directory.
2020-03-26 18:01:17 -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
Scott Shawcroft 3959548054
Merge pull request #2734 from theacodes/add-flash-for-sol
Add GD25Q64C as a flash chip for Sol
2020-03-26 13:27:56 -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
siddacious 7bba79363a allowing backlight change 2020-03-25 22:41:23 -07:00
Scott Shawcroft 8a5d3cd6c4
Add exception on small buffer and fix Connecion WRITE handling 2020-03-25 17:41:47 -07:00
arturo182 18c12e7822 mimxrt10xx: Return proper UART read length when everything was read 2020-03-26 00:15:48 +01:00
Scott Shawcroft 3551b769a2
Fix connection handle tracking in PacketBuffer when a server. 2020-03-25 13:31:18 -07:00
Scott Shawcroft 59eb35da30
Merge pull request #2727 from burtyb/commander-1
Add support for Commander
2020-03-25 11:00:11 -07:00
Scott Shawcroft ea0ce39962
Simplify STM a bit. 2020-03-24 15:49:24 -07:00
Scott Shawcroft 5e1e4d32db
Get basic sleep going on the iMX RT 1011 2020-03-24 15:46:10 -07:00
Chris Burton 5e559be9b5 Remove Adafruit_CircuitPython_CircuitPlayground 2020-03-24 21:10:34 +00:00
Scott Shawcroft f414f2b588
Merge pull request #2723 from jgillick/jgillick/circuitpython/stm32f411
Add new STM board: Thunderpack
2020-03-24 12:27:20 -07:00
William Moser c961ed9025 Added 31250 and 56000 to baudrate_map in UART.c, to parallel definitions in nrfx/mdk/nrf*_bitfields.h files 2020-03-24 13:25:02 -04:00
jgillick 8ed4deee9d Rename pins 2020-03-23 23:06:55 -07:00
Scott Shawcroft a8ed6d993c
Switch iMX RT to RTC. Untested. 2020-03-23 18:20:58 -07:00
Scott Shawcroft 653b7619ec
Add back microsecond delay to STM32 2020-03-23 16:09:50 -07:00
Scott Shawcroft c0c4c4403a
Factor out stm32f4xx_hal_conf.h 2020-03-23 14:46:25 -07:00
jgillick 29ce756709 PR feedback. 2020-03-22 18:41:19 -07:00
jgillick a79ac35173 Rename NVM_BYTEARRAY_BUFFER_SIZE 2020-03-22 15:20:58 -07:00
jgillick 68195a8dfe Update NVM_BYTEARRAY_BUFFER_LEN 2020-03-22 15:19:53 -07:00
Chris Burton 39a19d54c2 Add support for Commander 2020-03-22 16:23:56 +00:00
jgillick d76b76cb1d Add non-volatile memory support to STM 2020-03-22 02:22:59 -07:00
jgillick c62b724b24 Merge remote-tracking branch 'circuitpython/master' into jgillick/circuitpython/stm32f412c 2020-03-21 23:36:15 -07:00
Scott Shawcroft 2623022c84
Initial work for STM32. Need to fix us delay and PulseIn still. 2020-03-20 12:58:34 -07:00
jgillick d9e491a9e8 Remove unnecessary change 2020-03-19 00:02:23 -07:00
jgillick 284073584a Cleanup 2020-03-19 00:01:32 -07:00
jgillick 9be2ab6008 Change the board to use an STM32F411 chip. 2020-03-18 23:55:18 -07: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
jgillick 679314a22e Fix disable VBUS sensing. 2020-03-18 00:35:20 -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
jgillick 24d1fd2bf1 PR Cleanup. 2020-03-17 00:48:19 -07:00
jgillick d41ef45a9b Update clock. 2020-03-17 00:36:18 -07:00
jgillick cbc0e0344d Revert changes to system_stm32f4xx.c 2020-03-17 00:36:12 -07:00
jgillick 07549b7fd9 Bring back trimmed spaces. 2020-03-17 00:27:04 -07:00
Scott Shawcroft c8d9edd939
Merge pull request #2705 from NightSkySK/UARTlogger2
add UARTLogger2 board support for CircuitPython
2020-03-16 16:28:42 -07:00
Lucian Copeland bb3ed3a827 Merge branch 'master' into stm32x7-setup 2020-03-16 12:37:53 -04:00
jgillick 8a93a81a26 Chip specific code. 2020-03-15 22:31:36 -07:00
jgillick 5dbdf72472 Fix LED port. 2020-03-15 19:36:16 -07:00
jgillick f884c2b9b6 Incremental update 2020-03-15 19:34:41 -07:00
jgillick 6f153804da Add initial thunderpack port files. 2020-03-14 00:03:14 -07: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
Scott Shawcroft affd3fcc2a
Clear the pending IRQ in the NVIC as well. 2020-03-13 11:16:38 -07:00
Scott Shawcroft 00d5f63e7c
Hopefully fix PulseIn 2020-03-13 11:12:31 -07:00
Scott Shawcroft ed5cdd7e09
Hopefully fix flash flush and hopefully audio as well. 2020-03-13 11:12:31 -07:00
Scott Shawcroft 418333979a
Fix autoreload, neopixel, monotonic_ns and sleep w/o SD 2020-03-13 11:12:31 -07:00
Scott Shawcroft 6f60afe8c5
First try at lowering the power consumption 2020-03-13 11:12:30 -07:00
Scott Shawcroft 3a5f79acef
Merge pull request #2701 from hierophect/stm32-submodule-swap
STM32: Change ST drivers submodule to match TinyUSB
2020-03-13 10:47:54 -07:00
Scott Shawcroft 85f44e20cb
Merge pull request #2695 from TG-Techie/master
Add new TG-Watch02A to the nrf boards directory
2020-03-13 10:46:48 -07:00
Lucian Copeland ef7370d023 Change ST drivers submodule to match TinyUSB 2020-03-12 17:14:09 -04:00
Lucian Copeland 18442c5b00 Merge remote-tracking branch 'upstream/master' into stm32-port-namechange 2020-03-12 15:40:44 -04:00
Lucian Copeland 0155fab356 Revise style on interrupt handler functions 2020-03-12 15:03:47 -04:00
Lucian Copeland bb167f04fa WIP 2020-03-12 14:54:43 -04:00
Lucian Copeland ead32ea6e6 Comment change for CI 2020-03-12 11:21:32 -04:00
TG-Techie 197dc344af fix requested changes 2020-03-12 02:31:13 -04:00
Lucian Copeland 127e531271 remove old directory 2020-03-11 18:16:52 -04:00
Lucian Copeland be7def128a submodule move and sync 2020-03-11 18:16:16 -04:00
Lucian Copeland 53b1544f41 create copy 2020-03-11 18:13:06 -04:00
Lucian Copeland 38064750f9 Merge remote-tracking branch 'upstream/master' into stm32-pulsein 2020-03-11 16:39:11 -04:00
Lucian Copeland 2b161d37df stm32: add PulseIn module 2020-03-11 16:37:40 -04:00
TG-Techie b967a2071f changed TG-Watch02A HW_BOARD_NAME 2020-03-10 23:07:25 -04:00
TG-Techie 50b451ae0c add TG-Watch02A board def 2020-03-10 22:40:55 -04: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
Jeff Epler 66aa0dec60 stm32: enable ulab
This is needed because stm32 defines CIRCUITPY_MINIMAL_BUILD "for early
port".
2020-03-09 15:54:40 -05:00
Jeff Epler e128d770f1 cdx56: prepare to enable ulab
This involves fixing support for SRC_MOD and enabling INTERNAL_LIBM
including adding support for SRC_LIBM.
2020-03-09 15:54:40 -05:00
TG-Techie fec84054d9 ah 2020-03-06 15:03:37 -05:00
TG-Techie 7198056bc3
Merge pull request #2 from adafruit/5.0.x
5.0.x
2020-03-06 13:57:31 -05:00
TG-Techie 03dfd28121 trying to pull 5.0.x 2020-03-06 13:52:47 -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
Scott Shawcroft b4e1955526
Merge pull request #2583 from jepler/ulab
Add 'ulab' as an extmod; enable on nrf and most samd51 boards
2020-03-04 11:46:17 -08:00
Scott Shawcroft 4aec5d1e83
Merge pull request #2680 from hierophect/stm32-clock-hotfix
STM32: Fix restriction on GPIO clock enables for F407 Discovery board
2020-03-04 11:43:33 -08:00
Jeff Epler da31acfcc4 Merge remote-tracking branch 'origin/master' into ulab 2020-03-03 20:13:53 -06:00
Lucian Copeland 55e13715a9 Expand GPIO clock enables for F405 and F407 2020-03-03 17:21:47 -05:00
hierophect 3178462218
Merge branch 'master' into stm32-pulseout 2020-03-03 15:03:19 -05:00
Scott Shawcroft 2fea811c30
Merge pull request #2672 from jepler/fuzz
Makefiles: add targets to build unix port, mpy-cross for fuzzing
2020-03-03 11:36:53 -08:00
Scott Shawcroft 17458ad81a
Merge pull request #2662 from jepler/issue2332
Fix unaligned disk reads properly
2020-03-03 11:27:50 -08:00
Lucian Copeland eb71bfe9d3 Exclude SoCs without basic timers 2020-03-02 11:22:40 -05:00
Jeff Epler 74bf17bb0d Makefiles: add targets to build unix port, mpy-cross for fuzzing
This assumes you have properly install afl-fuzz with afl-clang-fast.
Tested with AFLplusplus 2.60c-75-g2c6847b.
2020-03-01 11:48:33 -06:00
Jeff Epler dc64857a7d
Merge branch 'master' into ulab 2020-02-29 21:54:39 -06:00
Dan Halbert 8435935429 update uses of assert_pin_free; remove redundant checks 2020-02-29 15:37:32 -05:00
Lucian Copeland 611ef27ac2 stm32: Add PulseOut support
Matches the implementations of the NRF and Atmel ports. TIM7 is used as it does not have a tied pin. Contains some register micromanagement since HAL support for the TIM7 timer is limited.
2020-02-29 14:47:47 -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
arturo182 0af00cf914 Freeze adafruit_requests and adafruit_esp32spi into feather_m7_1011 2020-02-29 00:39:22 +01:00
arturo182 3f26a0b06b Freeze adafruit_requests and adafruit_esp32spi into feather_mimxrt1011 2020-02-29 00:26:39 +01:00
Jeff Epler eef742bf45 oofatfs: Remove _FS_DISK_READ_ALIGNED
This workaround is no longer needed, so it can be removed.

Closes: #2332
2020-02-28 10:04:28 -06:00
Jeff Epler 1e6c08fc30 nrf: sqpi_flash: Handle unaligned reads 2020-02-28 10:03:37 -06:00
TG-Techie 527eb2444c added TG-Watch02A pins 2020-02-28 04:11:54 -05:00
TG-Techie 6d4ffc69fd add TG-Watch02A 2020-02-28 02:52:46 -05:00
Jeff Epler fa3b9eba92 ulab: Incorporate it 2020-02-27 11:03:03 -06:00
Jeff Epler 4c710cf13b unix port: add help(), help('modules') 2020-02-27 08:31:01 -06:00
Dave Marples 09a3153bf4 Fix I2C clock divider 2020-02-27 14:08:39 +00:00
arturo182 1b33cd11fc
Merge pull request #2658 from mubes/spi_fixes
Fix SPI clock speed on mimxrt10xx family & mimxrt1020 pinmux fixups
2020-02-26 16:37:05 +01:00
Dave Marples aadb0bfc1e Fix SPI clock speed on mimxrt10xx family & mimxrt1020 pinmux fixup 2020-02-26 14:28:54 +00:00
ladyada 86e9fd170a move red LED to D13 and make D3 lsm6ds IRQ 2020-02-25 18:00:23 -05: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
Scott Shawcroft 28c7a1e9c3
Fix crash after empty REPL session
We were trying to reset bluetooth when it was off and then trying
to raise an exception without the heap.
2020-02-24 16:11:17 -08: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
Dan Halbert f63b2c0d0c use realloc instead 2020-02-21 17:36:15 -05:00
Dan Halbert 9cf46ec947 put neopixel_write buffer in root pointers 2020-02-21 08:44:25 -05:00
Dan Halbert 23d6a3dc1f merge from upstream 2020-02-20 22:27:16 -05:00
Florent Gallaire 39ec5d0e51 Add NINA pins 2020-02-21 01:34:52 +01:00
Dan Halbert 634d246910 relicense nrf SPI.c to MIT 2020-02-20 16:00:21 -05:00
Scott Shawcroft 1e7ec1b952
Merge pull request #2641 from arturo182/feather_m7_1011
mimxrt10xx: Add Feather M7 1011 board config
2020-02-20 10:15:57 -08:00
arturo182 feac87901a mimxrt10xx: Enable displayio
Closes #2466
2020-02-19 22:26:00 +01:00
arturo182 aa0cf38084 mimxrt10xx: Add Feather M7 1011 board config 2020-02-19 22:08:08 +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
Dave Marples f0e5341b0f Addition of support for imxt1010, 1050 and 1060 families 2020-02-18 23:16:40 +00: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
Max Holliday 2b79d8ffe9 adding PWM to board.c for external WDT 2020-02-18 14:16:54 -08:00
Scott Shawcroft 2063867899
Merge pull request #2618 from mubes/alignment-warning
Fix alignment warning
2020-02-18 13:54:24 -08:00
Max Holliday 93760042fa no current need for NVM 2020-02-16 11:43:19 -08:00
Dave Marples 77ad9aff3c Formatting updates 2020-02-16 00:40:04 +00:00
Dave Marples d13f04f953 Updated formatting 2020-02-14 23:02:02 +00: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
Scott Shawcroft a0760206c6
Merge pull request #2597 from hierophect/stm32-espruino-wifi
STM32: Espruino Wifi
2020-02-13 11:17:59 -08:00
Dan Halbert a65ca3ab19
Merge pull request #2617 from dhalbert/nrf-large-spi-transactions
use properly-sized SPI transactions
2020-02-12 23:29:29 -05:00
Dave Marples 4de2a1eb62 Fix alignment warning 2020-02-12 22:36:34 +00:00
Lucian Copeland afc1c88046 remove bad define 2020-02-12 15:56:24 -05:00
Lucian Copeland fd2982f5c9 revert cross-board flag strategy 2020-02-12 15:12:05 -05:00
Dan Halbert e00b3269fe use properly-sized SPI transactions 2020-02-12 15:04:19 -05:00
Lucian Copeland 6d91ed2156 move defaults to avoid conflict 2020-02-12 14:38:27 -05:00
Lucian Copeland b248486c3b cleanup flag changes 2020-02-12 14:32:50 -05:00
Lucian Copeland b7bb85a4da Merge remote-tracking branch 'upstream/master' into stm32-espruino-wifi 2020-02-12 14:31:08 -05:00
Lucian Copeland 7831c475b9 change flag styling 2020-02-12 14:30:29 -05:00
Scott Shawcroft 35abc48a65
Merge pull request #2589 from hierophect/stm32-temperature-us
STM32: Core temperature and voltage
2020-02-12 10:55:00 -08:00
Scott Shawcroft 01507a91db
Merge pull request #2612 from mubes/loadable-binary
Add directly loadable binary target for imxrt family
2020-02-12 10:41:59 -08:00
hierophect 4bc093675c
Merge branch 'master' into stm32-temperature-us 2020-02-12 12:13:56 -05:00
Dave Marples d0870ce484 Update main .bin output file to be bootable artefact 2020-02-12 09:03:11 +00:00
Dan Halbert 2e029d55fc nrf: add SPIM3 support 2020-02-11 19:22:14 -05:00
Dave Marples f3e4fbd7ba Add directly loadable binary target 2020-02-11 23:01:08 +00:00
Scott Shawcroft 8364c60eb2
Merge pull request #2570 from hierophect/stm32-f407-disco
STM32: Add STM32F4Discovery support
2020-02-10 17:19:00 -08:00
Lucian Copeland c4436910c3 create F407 specific files 2020-02-10 12:44:23 -05:00
Max Holliday 80ba4c8661
Merge pull request #2 from adafruit/master
merging from upstream
2020-02-10 09:41:16 -08:00
Lucian Copeland 3f700e7e68 fix missing parameter 2020-02-10 12:16:00 -05:00
Lucian Copeland b4c60c3355 Merge remote-tracking branch 'upstream/master' into stm32-espruino-wifi 2020-02-10 11:52:32 -05:00
Lucian Copeland baf8d9ef5f Merge remote-tracking branch 'upstream/master' into stm32-temperature-us 2020-02-10 11:45:49 -05:00
Drew Fustini 3bf4b42e2e change OH20 badge pin defs to use SWn for buttons
Rather than use A, B, C and D

Use the buttons according to silkscreen references:
SW1
SW2
SW3
SW4
2020-02-10 00:49:13 +01:00
Drew Fustini 0a54f88751 add pin defs for buttons on the OHS2020 badge 2020-02-10 00:32:16 +01: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
hierophect b93d6e861b
Merge pull request #2596 from hierophect/stm32-espruino-pico
STM32: Espruino Pico
2020-02-07 14:14:49 -05: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 b245f9ca5b
Merge pull request #2591 from neubauek/master
Added CircuitBrains Basic and Deluxe Boards
2020-02-07 12:47:20 -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
Lucian Copeland 41b5f73785 revert mixed up linkers 2020-02-06 18:47:06 -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
Lucian Copeland 848577e830 Update PID 2020-02-06 12:55:36 -05:00
Lucian Copeland aee26b1c79 Add proper PID 2020-02-06 12:25:17 -05:00
Lucian Copeland 4122f85888 Create board definitions, add to board list 2020-02-06 12:19:19 -05:00
Lucian Copeland 383854ac50 Add espruino pico to board list 2020-02-06 11:25:07 -05:00
Lucian Copeland 08cf152aa8 Document flashing process 2020-02-06 11:11:51 -05:00
Lucian Copeland 698ad745f6 Fix oscillator issue, add button and LED pins 2020-02-06 10:49:03 -05:00
Dan Halbert a63f49cb83
Merge pull request #2592 from tannewt/add_extra_ble_error
Add another error message to BLE
2020-02-05 23:39:17 -05:00
James Bowman acef93a253 Rename eveL to _eve, EVEL to _EVE 2020-02-05 18:17:58 -08:00
Scott Shawcroft 72a1bdab30
Add another error message for extended advertisements at the same
time as scan response. The SD can't do it.
2020-02-05 15:56:17 -08:00
Lucian Copeland cdd1622350 Fix oscillator oversight in clocks.c 2020-02-05 18:12:48 -05:00
Lucian Copeland e28d244a0d Add espruino pico pinout 2020-02-05 18:03:54 -05:00
neubauek f3188669e4 Added CircuitBrains Basic and Deluxe Boards 2020-02-05 14:52:47 -06:00
Lucian Copeland 788464a594 board uses VBUS 2020-02-05 15:45:27 -05:00
Lucian Copeland cedf6489f7 Add voltage ADC, standardize mphalport 2020-02-05 12:39:12 -05:00
Dan Halbert b6da2fa173 nrf: fix i2c frequency setting 2020-02-05 11:25:31 -05:00
Lucian Copeland 4ba050d46d Add ADC for temp sensor 2020-02-04 16:26:24 -05:00
Scott Shawcroft 65045eb3bc
Merge pull request #2568 from hierophect/stm32-loader-linkers
STM32: UF2 build option for STM32F405
2020-02-04 12:21:45 -08:00
Lucian Copeland 6f73126756 add correct PID 2020-02-04 10:46:44 -05:00
Lucian Copeland c1fded5062 Merge branch 'stm32-loader-linkers' into stm32-f407-disco 2020-02-04 10:40:19 -05:00
Lucian Copeland 3ce6fc89a4 Implement new linker for external flash only 2020-02-04 10:38:45 -05:00
Dan Halbert a4ebd2f7c1 allow tuple or list for Palette color 2020-02-03 22:09:53 -05: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
Lady Ada 5a29b222eb add bluefruit sense - tested 2020-02-03 13:52:30 -05:00
Michael Welling 64cafe82bc Adjust OHS2020 madctl for default rotation
Make to go faster I guess.

Signed-off-by: Michael Welling <mwelling@ieee.org>
2020-02-02 22:14:10 -08:00
Michael Welling 6804b2a7fd Add I2C pin definitions for interoperability with Adafruit libraries
Signed-off-by: Michael Welling <mwelling@ieee.org>
2020-02-02 22:13:39 -08:00
Michael Welling 33dcdd7c03 Updates to enable working SPI TFT
The backlight enable is active low on our board so the driver doesn't like it.
Toggling to GPIO manually for now.

As fixed the improper SPI bus pins definitions and it works!

Signed-off-by: Michael Welling <mwelling@ieee.org>
2020-02-02 22:13:03 -08:00
Michael Welling d99c2ffe4f QSPI flash fixes
We had the pin names swapped on the schematic and a different flash was populated.

Signed-off-by: Michael Welling <mwelling@ieee.org>
2020-02-02 22:11:12 -08:00
Lady Ada dc964b346c adjust CLUE madctl so rotation 0 is 'right' 2020-01-31 20:17:39 -05:00
Dan Halbert be4e681d07 fix UICR check; do not use NULL for no MISO 2020-01-31 18:57:41 -05:00
Lucian Copeland fa11912b9b New configuration values 2020-01-31 17:28:42 -05:00
Lucian Copeland 61944ef08e Merge branch 'stm32-loader-linkers' into stm32-f407-disco 2020-01-31 16:38:17 -05:00
Dan Halbert 8258cb851e
Merge pull request #2569 from dhalbert/nrf-increase-connections
increase max BLE connections from 2 to 5
2020-01-31 15:59:27 -05:00
Dan Halbert 4abd5f1f7b increase max connections from 2 to 5 2020-01-31 14:58:23 -05:00
Lucian Copeland cabc3aa90e Merge branch 'stm32-loader-linkers' of https://github.com/hierophect/circuitpython into stm32-loader-linkers 2020-01-31 14:36:03 -05:00
Lucian Copeland 41aefc819b Fix pyboard 2020-01-31 14:35:54 -05:00
Lucian Copeland 19553b8f7c WIP 2020-01-31 14:33:10 -05:00
Lucian Copeland c1cf80180d Merge branch 'stm32-loader-linkers' into stm32-f407-disco 2020-01-31 14:10:21 -05:00
Lucian Copeland ab031bc25f Create basic board profile 2020-01-31 14:04:54 -05:00
hierophect f38e12f0ab
Update ports/stm32f4/boards/STM32F405_boot.ld
Co-Authored-By: Scott Shawcroft <scott@tannewt.org>
2020-01-31 13:56:08 -05:00
Lucian Copeland a10e5d1da2 text fixes 2020-01-31 13:17:43 -05:00
Lucian Copeland 7085d91278 dangling edit 2020-01-31 13:13:51 -05:00
Lucian Copeland b4dcecb266 Add build option for UF2 flash offset 2020-01-31 13:12:58 -05:00
Lucian Copeland d8016bd52b Merge branch 'master' into stm32-loader-linkers 2020-01-31 12:21:46 -05:00
Dan Halbert 3b95d7c16a add gamepad to specialty cpx builds; update frozen libs 2020-01-30 21:00:47 -05:00
Dan Halbert b6358182d3 Update CLUE to Rev C 2020-01-30 15:22:26 -05:00
Scott Shawcroft 55eb1730b8
Merge remote-tracking branch 'adafruit/master' into tweak_pixelbuf 2020-01-30 10:59:21 -08:00
Scott Shawcroft 298bca3fdd
Merge pull request #2562 from dhalbert/ble-fixes
nrf: track vm_used_ble better
2020-01-30 10:33:19 -08:00
Dan Halbert 87f73e2729 track vm_used_ble better 2020-01-30 09:52:06 -05:00
Scott Shawcroft 5d24ade5c9
Tweak error messages to reduce code size. 2020-01-29 17:32:07 -08:00
Lucian Copeland 1a25d3ca83 fix merge issue 2020-01-29 18:46:14 -05:00
hierophect 898f4e1f72
Merge branch 'master' into stm32-meowbit 2020-01-29 16:32:08 -05:00
Lucian Copeland 100409961a Move board_init to main.c 2020-01-29 16:29:43 -05:00
Lucian Copeland b9bed98538 Merge stm32-meowbit 2020-01-29 16:05:19 -05:00
Lucian Copeland 8a9c3097e3 Add port-specific requested changes 2020-01-29 16:00:38 -05:00
Lucian Copeland 947c2243bd add feather bootloader settings, cleanup 2020-01-29 15:30:35 -05:00
Lucian Copeland 3c86005546 Implement requested changes 2020-01-28 17:11:25 -05:00
Lucian Copeland ab9483b7fb Add internal display definitions, fails at startup 2020-01-28 16:00:34 -05:00
Wojtek Siudzinski df5e58fc6e Add support for the Particle Ethernet FeatherWing 2020-01-28 10:53:50 +01:00
Scott Shawcroft eb0ef3726f
Merge pull request #2552 from jepler/samd-stereo-single-dma
samd: When possible, use one DMA channel for stereo AudioOut
2020-01-27 14:15:26 -08:00
Scott Shawcroft b36b2493bc
Merge pull request #2532 from tannewt/teensy4-dev
Refine iMX RT memory layout and add three boards
2020-01-27 14:11:08 -08:00
Jeff Epler c8f969feb5 samd: audio-dma: avoid memory allocations
With the previous change, stereo mp3 playback changed from needing
4 2304-byte allocations to needing 2 4604-byte allocations.  This was
enough to cause MemoryErrors with regularity.

By using m_realloc() here, the existing memory region can be used.
m_realloc() also works on the first invocation, because m_realloc(NULL, sz)
just calls m_malloc of sz.
2020-01-27 08:49:41 -06:00
Lady Ada f2dfcee042 add missing displayref 2020-01-26 20:10:20 -05:00
Jeff Epler cb6193bbc7 samd: When possible, use one DMA channel for stereo AudioOut
.. the documentation doesn't make this clear, but in practice it works
to write both of the DATABUF registers at the same time.  This should
also reduce the amount of wear and tear DMA puts on the system, as the
number of transfers is cut in half.  (the number of bytes transferred
remains the same, though)

In principle, this could cover all stereo cases if audio_dma_convert_signed
also learned to 16-bit extend and swap values.  However, this is the
case that matters for stereo mp3 playback on PyGamer.

Testing performed: Listened to some tracks with good stereo separation.
2020-01-26 15:36:24 -06:00
Lucian Copeland b5b94b72c1 Return to bootloader options 2020-01-24 14:47:13 -05:00
Lucian Copeland 70932cab42 Simplify the flash-display conflict fix 2020-01-24 14:33:28 -05:00
Lucian Copeland 2afca4e942 Fix flash-display conflict error 2020-01-24 14:25:36 -05:00
Dan Halbert 6f13979c9b pygamer and pybadge boards were not resetting neopixels 2020-01-24 09:32:28 -05:00
Dan Halbert 68f9aee992 reset NeoPixels on CPB on soft reload 2020-01-23 20:16:31 -05:00
Lucian Copeland d8bc57c1dc Flash and display control 2020-01-23 17:17:02 -05:00
Limor "Ladyada" Fried fe70072d68
Merge branch 'master' into ndbit6 2020-01-23 12:32:19 -05:00
ndgarage 4675783545 change-name-to-ndgarage_ndbit6 2020-01-23 09:55:17 -07:00
Sabas 41a85b71fc init nfc copy 2020-01-22 20:30:33 -06:00
Lucian Copeland e9f9cee4d6 Invert duty cycle intensity 2020-01-22 18:47:41 -05:00
Lucian Copeland 36792926d2 Revert dangling pointer issue in PWMOut 2020-01-22 14:41:37 -05:00
Lucian Copeland b326ee0a3d fix microcontroller pin ommission 2020-01-22 12:12:27 -05:00
Scott Shawcroft 085242bf5c
Use new USB PIDs that aren't used yet. 2020-01-21 18:45:00 -08:00
Scott Shawcroft 87344ff53a
Disable the DCache when USB is initialized. There are still issues enabling it. 2020-01-21 18:32:19 -08:00
Dan Halbert 4923caf85e Increase CPX stack size by 256 2020-01-21 18:53:55 -05:00
Chris Osterwood 97420994e8 Merge remote-tracking branch 'origin/master' into capablerobot-usbhub 2020-01-20 13:11:57 -05:00
Scott Shawcroft 1c39606345
Fix other builds missing new heap bounds functions 2020-01-18 18:06:56 -08:00
Scott Shawcroft 9d5742ebd1
Fix start on power up by providing Reset_Handler ourselves.
On power up the FlexRAM banks are in an unknown config so we can't
rely on the stack until after we configure FlexRAM.
2020-01-18 11:54:01 -08:00
Scott Shawcroft 9f4ea2122a
teensy fixes 2020-01-17 18:35:09 -08:00
Scott Shawcroft 7d8dac9211
Refine iMX RT memory layout and add three boards
Introduces a way to place CircuitPython code and data into
tightly coupled memory (TCM) which is accessible by the CPU in a
single cycle. It also frees up room in the corresponding cache for
intermittent data. Loading from external flash is slow!

The data cache is also now enabled.

Adds support for the iMX RT 1021 chip. Adds three new boards:
* iMX RT 1020 EVK
* iMX RT 1060 EVK
* Teensy 4.0

Related to #2492, #2472 and #2477. Fixes #2475.
2020-01-17 17:36:08 -08:00
Hierophect 3f43155b63 Meowbit bus conflict WIP 2020-01-17 13:31:12 -05:00
arturo182 69785cccfe
mimxrt1011: Fix pin definition 2020-01-17 14:45:29 +01:00
Michael Welling cc77e86408 Update the VID and USB company string
Signed-off-by: Michael Welling <mwelling@ieee.org>
2020-01-16 15:43:49 -08:00
Michael Welling cc03d68984 Fix backlight pin registration
Signed-off-by: Michael Welling <mwelling@ieee.org>
2020-01-16 14:53:07 -08:00
Michael Welling 86d454adf3 Initial board support for OHS2020 Badge
Not tested but builds.

Signed-off-by: Michael Welling <mwelling@ieee.org>
2020-01-16 13:46:56 -08:00
Scott Shawcroft 8b61333937
Merge pull request #2510 from dhalbert/bonding-nvm
nrf: Add bonding to BLE pairing support
2020-01-15 16:11:09 -08:00
Dan Halbert 765a54afb5
Merge pull request #2525 from aramcon-badge/badge_2019_upstream
Add board definition files for AramCon Badge 2019
2020-01-15 18:29:36 -05:00
Benny Meisels 4bf10a75c7 Add board definition files for AramCon Badge 2019 2020-01-16 00:44:18 +02:00
Dan Halbert f496b6cdc8
Merge pull request #2520 from joeycastillo/openbook-squashed
CircuitPython support for the Open Book
2020-01-15 17:21:19 -05:00
Dan Halbert 85dc4089b9 address review comments 2020-01-14 17:23:16 -05:00
dalegrover d6e657b593 Initial commit. 2020-01-14 16:51:27 -05:00
Joey Castillo eb481c9247 add support for the Open Book 2020-01-14 16:34:46 -05:00
Hierophect 1070f2c853 Merge remote-tracking branch 'upstream/master' into stm32-meowbit 2020-01-14 16:11:59 -05:00
Hierophect 05093f7f54 Fix VTOR relocate, add bootloader makefile handling 2020-01-14 15:50:00 -05:00
hierophect 7775513a5b
Merge pull request #2463 from hierophect/stm32-i2c-rework
STM32: I2C fix & general busio cleanup
2020-01-14 15:06:31 -05:00
Scott Shawcroft b5df5ce1ce
Merge pull request #2507 from kamtom480/circuitpython-mkspk
Add mkspk source files
2020-01-14 12:05:36 -08:00
Hierophect 5aae8df5d7 style changes, fix i2c typo 2020-01-14 13:30:16 -05:00
Hierophect c0dacba80f remove comment confusing py tools 2020-01-14 13:06:10 -05:00
scs217 50e718be99 second revision to line breaks for visibility per dhalbert 2020-01-13 22:13:39 -05:00
scs217 18957786f2 inserted line breaks between different pins (grouping together aliases for legibility) per request by dhalbert 2020-01-13 22:00:42 -05:00
scs217 c735289ddf Added Dxx names to analog pins on Feather M4 Express pins.c file 2020-01-13 21:19:17 -05:00
Dan Halbert 0367ba7495 fix some typos and leftovers 2020-01-13 18:29:34 -05:00
Dan Halbert 2a75196aa3 merge from adafruit/circuitpython 2020-01-13 18:15:32 -05:00
Dan Halbert 4ad004f24e put bonding to-do flags into Connection objects instead of using a heap-allocated queue 2020-01-13 17:52:32 -05:00
Hierophect de2379bc30 minor WIP debug edits 2020-01-13 17:24:52 -05:00
Scott Shawcroft 2eb26a6d0b
Merge pull request #2457 from hierophect/stm32-cpython-compat
STM32: Cpython compatibility flag 2
2020-01-13 13:47:55 -08:00
Kamil Tomaszewski 402f6f66bd Add mkspk source files 2020-01-13 07:53:24 +01: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 6ea1785457
Merge pull request #2501 from kamtom480/timerhook
Fix board_timerhook
2020-01-10 11:57:54 -08:00
Scott Shawcroft 6ea8d8a6c2
Merge pull request #2498 from dhalbert/optional-i2c-pullup-checking
Make requiring I2C pullups be optional
2020-01-10 11:42:44 -08:00
Scott Shawcroft 8708d3dc45
Merge pull request #2461 from jepler/urandom-hardfaults
Urandom hardfaults
2020-01-10 11:37:59 -08:00
Hierophect 1544d60000 working control 2020-01-10 13:09:14 -05:00
Hierophect 1229de4499 attempt to get control going again 2020-01-10 12:56:22 -05:00
Dan Halbert 360c876be4 add flag to i.mx port 2020-01-10 09:20:21 -05:00
Kamil Tomaszewski 357506dd9a Fix board_timerhook 2020-01-10 13:59:52 +01:00
Dan Halbert 9c167af17a wip; redid flash writing to be compatible with SD 2020-01-09 17:40:02 -05:00
Dan Halbert 189f2d5f07 Make requiring I2C pullups be optional 2020-01-09 17:31:50 -05:00
Hierophect 4ec588bb37 spacing changes and text fix 2020-01-09 16:17:57 -05:00
Hierophect e509115630 Merge branch 'master' into stm32-i2c-rework 2020-01-09 16:01:31 -05:00
Jeff Epler d7c6d9cabd
Merge pull request #2459 from hierophect/stm32-spi-oneline
STM32: Allow simplex SPI
2020-01-09 10:03:44 -06:00
Jeff Epler 1c6efb9e66 os.urandom: remove unneeded sleep 2020-01-08 16:48:17 -06:00
Hierophect 10eed78dd8 use CFLAG to properly set define 2020-01-08 17:37:20 -05:00
Hierophect b74e78d2c0 Merge remote-tracking branch 'upstream/master' into stm32-cpython-compat 2020-01-08 17:11:50 -05:00
Hierophect 270f0dfc7c text fix 2020-01-08 15:58:20 -05:00
Hierophect ae22305869 Corrections to I2C, style 2020-01-08 15:55:53 -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
Hierophect a9633a3c94 Reorganize I2C workaround, style changes 2020-01-08 15:33:35 -05:00
Roy Hooper 1caf6bd8d3 add missing .h file 2020-01-08 15:23:38 -05:00
Roy Hooper e1c1e32ceb address code review 2020-01-08 15:17:54 -05:00
Roy Hooper 4e040b0152 add reset of heap to board reset for nrf port 2020-01-08 15:15:27 -05:00
Roy Hooper 34c9e00f08 try (re)using the buffer in neopixel_write 2020-01-08 15:14:53 -05:00
Scott Shawcroft 7a94940c89
Replace magic number and add comment. 2020-01-08 11:01:43 -08:00
Scott Shawcroft d4492aaed0
Merge remote-tracking branch 'adafruit/master' into packet_buffer 2020-01-08 10:44:37 -08:00
Hierophect d222c64538 Merge branch 'stm32-spi-oneline' into stm32-i2c-rework 2020-01-08 13:03:38 -05:00
Hierophect 90613aa5fb more cleanup and style syncing 2020-01-08 13:03:25 -05:00
Hierophect b0f08ba465 Close algorithm edge case to match SPI 2020-01-08 12:32:43 -05:00
Jeff Epler b3fb024301 nrf: Call into sd as many times as necessary to fill urandom request
Generating 51200 bytes in one go takes 4.966s, so that's a rate of about
10KiB/s.
2020-01-08 10:06:55 -06:00
Hierophect 3d5528b88f style edits 2020-01-08 10:53:53 -05:00
Dan Halbert 8d629a957d
Merge pull request #2367 from iot49/mtime
fix mtime on file creation
2020-01-07 17:19:40 -05:00
Scott Shawcroft 817c4af60c
Merge pull request #2456 from arturo182/mimxrt10xx
Add initial MIMXRT10XX port implementation
2020-01-07 13:58:09 -08:00
arturo182 cc7b57c8d4 mimxrt10xx: Add license for NXP code 2020-01-07 22:07:27 +01:00
Scott Shawcroft 866ac13405
Merge pull request #2450 from Marius-450/marius-display-limit-2
CIRCUITPY_DISPLAY_LIMIT = 2 for monster m4sk
2020-01-07 12:08:59 -08:00
arturo182 19803c664f mimxrt10xx: Add info on clock config source 2020-01-07 20:05:57 +01:00
Hierophect d645ea222d Text fixes for consistency 2020-01-07 13:25:24 -05:00
Hierophect 6ab75fe8c5 Allow MOSI/MISO exclusion 2020-01-07 13:19:00 -05:00
arturo182 ff6d9d8a52
mimxrt10xx: Use the correct error for not implemented functionality
Co-Authored-By: Scott Shawcroft <scott@tannewt.org>
2020-01-07 09:29:47 +01:00
Hierophect b778aee21d Make inclusion non-conditional 2020-01-06 17:08:52 -05:00
Hierophect 0bbeae1786 WIP edits 2020-01-06 15:37:37 -05:00
arturo182 13e0cba6f1 Add initial MIMXRT10XX port 2020-01-06 21:08:49 +01:00
Hierophect fff5f8eb65 Merge remote-tracking branch 'upstream/master' into stm32-meowbit 2020-01-06 11:31:25 -05:00
Hierophect 7198cc8ed6 Changes to UF2 settings, reboot working, no usb 2020-01-06 11:30:23 -05:00
Radomir Dopieralski 59ded1131f Take display offsets for PewPew M4 from the bootloader config
The PewPew M4 devices come with different displays, which require
different offsets. Since the information about offsets is saved in
the bootloader, we can take it from there.
2020-01-06 14:24:30 +01:00
Dan Halbert 390337b9a5 wip; compiles 2020-01-05 23:33:42 -05:00
Hierophect f355642eab Boot linker edits 2020-01-04 16:29:31 -05:00
Hierophect d0fab1c728 Clean up debugging edits 2020-01-04 13:53:31 -05:00
Hierophect 36088becc9 PWM Fix, plus debugging 2020-01-04 13:35:53 -05:00
Marius-450 3ad3d49959 changes only for monster m4sk 2020-01-04 12:32:49 -05: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
Scott Shawcroft 776c9b011c
Merge pull request #2432 from tannewt/fix_nrf_uart
Fix nRF UART reset
2020-01-03 16:57:59 -08:00
Scott Shawcroft f6ec1ea172
Throw an error when we cannot allocate PWM pixel buffer 2020-01-03 15:15:36 -08:00
Scott Shawcroft 6afb8dadbc
Change SPI and I2C in the same way. 2020-01-03 15:14:37 -08:00
Dan Halbert 242d572470 wip 2020-01-03 10:24:07 -05:00
Jeff Epler bd8650d35b samd/peripherals: take upstream update 2020-01-02 17:55:50 -06:00
Dan Halbert 32b82032a1
Merge pull request #2423 from pewpew-game/pewpew-m4-update
Update the PewPew M4 board and circuitpython-stage
2020-01-01 13:59:02 -05:00
Dan Halbert c7d68fc3bc
Merge pull request #2440 from adafruit/tannewt-hwm4-uart-pins
Fix Hallowing M4 Express UART pin mapping
2019-12-30 23:45:14 -05:00
Dan Halbert f0d34da556 add display support; rotation 270 2019-12-30 17:39:39 -05:00
Dan Halbert 3f9ebd2fed initial CLUE board defn 2019-12-30 17:10:42 -05:00
Hierophect 28b1d718a3 Tests for PWM issues, style changes 2019-12-30 15:15:55 -05:00
Scott Shawcroft 0223589e6c
Fix default UART too 2019-12-30 11:34:51 -08:00
Scott Shawcroft e1d026f815
Update pins.c 2019-12-30 11:33:04 -08:00
Dan Halbert 264abd4741
Merge pull request #2428 from hathach/samd-improve-usb
improve usb dcd samd51
2019-12-30 13:39:17 -05:00
Hierophect e9dbc34d80 add cypthon compat setting 2019-12-30 11:35:02 -05:00
Hierophect 5b9209aa02 Merge remote-tracking branch 'upstream/master' into stm32-meowbit 2019-12-30 11:17:12 -05:00
Scott Shawcroft cfd71d9023
Fix nRF UART reset
disable only turns off ENABLE but doesn't set the init tracking that
nrfx uses. uninit hangs if ENABLE is off and is called because it
waits forever for TX to stop.
2019-12-27 20:18:07 -08:00
hathach 62c4028cde
sync with https://github.com/hathach/tinyusb/pull/246
should fix slow enumeration
2019-12-26 23:04:16 +07:00
Jerry Needell d38a0007f1 define board.VOLTAGE_MONITOR for feather_stm32f405_express 2019-12-26 08:46:27 -05:00
Jeff Epler 5aa3e3eabb samd/peripherals: update 2019-12-24 09:36:19 -06:00
Hierophect b49ecc52b9 text fixes 2019-12-23 14:55:26 -05:00
Radomir Dopieralski b06057395b Update PewPew M4
PewPew M4 now has the pew.py added to its frozen libraries. Some
features needed to be disabled to make room for that.
2019-12-23 18:37:36 +01:00
Ha Thach 21cbd5ce96
Merge pull request #2379 from hierophect/update-tusb
Update Tinyusb
2019-12-23 17:58:26 +07:00
Scott Shawcroft f60b6481e0
Turn off `gamepad` on cpx crickit 2019-12-20 12:14:27 -08:00
Scott Shawcroft b859e2b710
Remove `re` from CPX Displayio build to make space. 2019-12-20 11:43:56 -08:00
Scott Shawcroft f08c7d470d
Merge pull request #2410 from jepler/nrf-extended-samplerate
nrf: PWMAudioOut: 62500Hz limitation is not needed
2019-12-20 09:31:02 -08:00
Jeff Epler d31a387ace circuitplayground_express_displayio: reduce inlining to make .ko translation fit 2019-12-19 16:11:29 -06:00
Jeff Epler 51af8aadb7 nrf: PWMAudioOut: 62500Hz limitation is not needed
.. and it gets in the way of some example programs, due to the way
circuitplayground library generates different frequency sine waves
2019-12-19 10:34:56 -06:00
ndgarage 16688180c6 add-ndbit6 2019-12-19 07:17:43 -07:00
Hierophect 902e242237 Revert "enable internal SPI intercepts. can brick USB"
This reverts commit 5b70fa0a64.
2019-12-18 17:17:06 -05:00
Hierophect 5b70fa0a64 enable internal SPI intercepts. can brick USB 2019-12-18 15:40:08 -05:00
Hierophect 3a5de7effd Remove merge overflow 2019-12-18 14:46:12 -05:00
hathach d1f045880d Merge branch 'master' into hierophect-update-tusb 2019-12-18 16:52:04 +07:00
Ha Thach 25df6e613a
Merge pull request #2395 from hathach/nrfx-v2
upgrade nrfx API to v2
2019-12-18 16:14:25 +07:00
hathach dad2663337 update nrfx submodule to v2 2019-12-18 15:39:11 +07:00
Scott Shawcroft e9cb47ffbd
Merge pull request #2393 from dhalbert/increase-cpx-stack
Increase CPX stack size slightly
2019-12-17 14:35:37 -08:00
Hierophect ba19cd9ecb Internal filesystem displayIO test 2019-12-17 17:33:49 -05:00
Hierophect f136ef2b91 add most remaining pindefs 2019-12-17 14:00:35 -05:00
Hierophect 4bfb255a1c merge Thach's suggestion 2019-12-17 12:58:16 -05:00
Jeff Epler 8137ac4c49 nRF: PWMAudioOut: handle non-looping rawsamples 2019-12-17 08:59:08 -06:00
hathach 894cad2e17 upgrade nrfx API to v2 2019-12-17 21:39:52 +07:00
hathach ebc21144b8
stm32 explicitily enable/disable vbus sense, fix warning 2019-12-17 10:55:19 +07:00
Dan Halbert 81581b345c Increase CPX stack size slightly 2019-12-16 17:25:22 -05:00
JoeBakalor 03ea9ff66e reset atmel-samd submodule to correct commit 2019-12-16 16:31:44 -05:00
Joe Bakalor 822828b9a4
Merge pull request #6 from adafruit/master
Pull master
2019-12-16 15:06:58 -05:00
JoeBakalor 2abccc1745 update vid and pid for teknikio_bluebird 2019-12-16 08:58:56 -05:00
KalbeAbbas 89ed64157d
Merge branch 'master' into master 2019-12-16 13:25:44 +05:00
KalbeAbbas 87dc9bee8b
Update mpconfigboard.mk 2019-12-16 12:25:51 +05:00
KalbeAbbas 6f6d6c01ab
Update mpconfigboard.mk 2019-12-16 12:18:16 +05:00
JoeBakalor 32744a04e1 update bluebird make file 2019-12-13 09:08:21 -05:00
Joe Bakalor 3992a870e5
Merge branch 'master' into teknikio/bluebird 2019-12-13 08:55:15 -05:00
JoeBakalor 4bee6536c9 updates to bluebird 2019-12-13 08:52:03 -05:00
Joe Bakalor b484c89b73
Merge pull request #4 from adafruit/master
Pull master
2019-12-13 08:51:06 -05:00
Hierophect 99c02b5afb usb not working... 2019-12-12 17:53:04 -05:00
Hierophect e4fb414b91 clean up definitions post merge 2019-12-12 17:17:29 -05:00
Hierophect ab3762d8f5 Merge branch 'dumb-git-stuff' into stm32-meowbit 2019-12-12 16:34:11 -05:00
Hierophect 7e0719117b Revert "remove F401 additions to streamline"
This reverts commit 12737e2821.
2019-12-12 16:32:33 -05:00
Hierophect 2be18a7b53 revert dumb thing 2019-12-12 16:30:24 -05:00
Hierophect 842f8b2d3d Revert "Remove meowbit for now"
This reverts commit 006182f4e8.
2019-12-12 16:27:32 -05:00
Dan Halbert ef2ef7a6b8 merge from master 2019-12-12 15:51:13 -05:00
Dan Halbert e11fabd5e0 moved nrf internal filesystem to just below bootloader 2019-12-12 14:57:23 -05:00
Dan Halbert 7889b999cc Fix flash write error handling; clean up safe mode message printing 2019-12-12 14:41:49 -05:00
Hierophect 9339903a30 Revert "delete old boards"
This reverts commit 00e953e86c.
2019-12-12 13:24:46 -05:00
Hierophect d44a758a2d Add no VBUS option to blackpill 2019-12-12 12:48:37 -05:00
Hierophect 39f3063ed4 Merge remote-tracking branch 'upstream/master' into update-tusb 2019-12-12 12:47:48 -05:00
Hierophect 885a1415d0 Update stm32 usb.c 2019-12-12 12:47:40 -05:00
JoeBakalor dde7c5e145 Merge branch 'master' of https://github.com/Teknikio/circuitpython 2019-12-12 08:59:37 -05:00
Joe Bakalor bf4138b0e4
Merge pull request #3 from adafruit/master
Pull master
2019-12-12 08:59:22 -05:00
Dan Halbert fd03fd5e4f sd_flash_operation_status should be volatile 2019-12-12 00:19:03 -05:00
Dan Halbert 8176325130 Merge remote-tracking branch 'adafruit/master' into ld-cleanup 2019-12-11 22:52:59 -05:00
Hierophect 70d899d354 WIP to successful USB test 2019-12-11 17:58:21 -05:00
Dan Halbert ae64a669dd address review comments 2019-12-11 15:43:06 -05:00
JoeBakalor 0da5dceccf update bluebird makefile 2019-12-11 15:25:16 -05:00
JoeBakalor a273a7c55e add remaining peripheral pin maps and digital/analog pin definitions 2019-12-11 15:23:16 -05:00
JoeBakalor 006d85d5c2 add make file and board configuration, add accelerometer pin mappings 2019-12-11 14:49:59 -05:00
Scott Shawcroft e5adf3c43f
Merge pull request #2361 from hierophect/stm32-blackpill
STM32: Blackpill Support
2019-12-11 11:07:23 -08:00
Dan Halbert 1e11f2708b remove debugging leftovers 2019-12-11 09:34:56 -05:00
iot49 73b6e5d8e6 added correct include files 2019-12-10 19:44:11 -08:00
Dan Halbert d9ca4c9a60 fix build failures 2019-12-10 22:39:44 -05:00
Dan Halbert c6221c5956 Remove no-longer-used nrf and atmel-samd .ld files 2019-12-10 21:22:17 -05:00
Dan Halbert 68ae47907c merge from upstream 2019-12-10 21:04:46 -05:00
Dan Halbert 013c840862 working on all ports 2019-12-10 20:27:30 -05:00
hierophect 30aba46735
Merge branch 'master' into stm32-blackpill 2019-12-10 15:38:42 -05:00
Hierophect 33233934e9 text fix 2019-12-10 15:13:11 -05:00
Hierophect 0e2a03e3bd revert usb.c additions 2019-12-10 15:07:39 -05:00
Jeff Epler a08d9e6d8e audiocore: Add MP3File using Adafruit_MP3 library 2019-12-10 14:03:06 -06:00
Jeff Epler a484a93b29 nRF: disk_read must be 4-byte aligned
.. a requirement that oofatfs needs to be taught to respect.

This problem can be demonstrated with the following snippet, except
that the related file ("test.bin") must also be contiguous on the
filesystem.  You can ensure this by reformatting your device's filesystem
before testing, then copying any single file bigger than 4kB to test.bin.

    f = open("test.bin", "rb")
    f.seek(2048)
    b = bytearray(2048)
    v = memoryview(b)
    f.readinto(v[909:])

Closes: #2332
2019-12-10 14:03:06 -06:00
Hierophect e328e9c106 minor text changes 2019-12-10 15:02:38 -05:00
Scott Shawcroft 387ab6c87e
Merge pull request #2315 from hierophect/stm32-pyb-nano
STM32: Add PYB Nano support
2019-12-10 11:25:07 -08:00
Scott Shawcroft dda9ea09b1
Merge pull request #2363 from jepler/samd-neopixel
samd: neopixel: Fix neopixels after #2297
2019-12-10 11:23:18 -08:00
Scott Shawcroft 8497ea8aab
Merge pull request #2365 from dhalbert/cpb-power-switch
Add POWER_SWITCH pin to CPB
2019-12-10 10:53:45 -08:00
Joe Bakalor dbc28e35c5
Merge pull request #2 from adafruit/master
Pull master
2019-12-10 11:50:49 -05:00
iot49 0712c95225 fix mtime on file creation 2019-12-09 23:14:26 -08:00
Dan Halbert 60f399395a Add POWER_SWITCH pin to CPB 2019-12-09 18:30:24 -05:00
Scott Shawcroft 19ac8aea8c
Merge pull request #2353 from jepler/audiosample-protocol
Convert audiosamples to use micropython "protocols" (safely)
2019-12-09 14:50:16 -08:00
Hierophect b0a5e81c46 Merge remote-tracking branch 'upstream/master' into stm32-meowbit 2019-12-09 12:29:00 -05:00
Hierophect 00e953e86c delete old boards 2019-12-09 12:28:25 -05:00
Jeff Epler 13620cc4db nRF: PWMAudioOut: fix half-speed playback of stereo samples
The "spacing" of "buffer structure" is confusing, use the "channel count"
instead.

Testing performed on nrf52840 feather:

Play stereo and mono, 8- and 16-bit, 8kHz RawSamples representing 333.33Hz
square waves.

Use both mono and stereo PWMAudioOut instances.

Scope the RC-filtered signal and use the scope's frequency
measurement function, verify the frequency is 333 or 334Hz in all tested
cases.

In the "stereo output" cases, verify both the L and R channels.  Verify
the output amplitude is the same in both channels.

In the "stereo output" cases, run a second test where the L channel's
amplitude is attenuated 50%. Verify the output amplitude is correct
in each channel.
2019-12-09 10:57:55 -06:00
Jeff Epler 1905d0746d samd: neopixel: Fix neopixels after #2297
This adapts the "inline assembler" code from the UF2 bootloader, which
in turn is said to be adapted from the arduino neopixel library.

This requires the cache remain ON when using M0, and be turned OFF on M4
(determined by trial and error)

Testing performed on a Metro M4:
 * measured timings using o'scope and found all values within
   datasheet tolerance.
 * Drove a string of 96 neopixels without visible glitches
 * on-board neopixel worked

Testing performed on a Circuit Playground Express (M0):
 * Color wheel code works on built-in neopixels
 * Color wheel code works on 96 neopixel strip

As a bonus, this may have freed up a bit of flash on M0 targets. (2988 ->
3068 bytes free on Trinket M0)

Closes: #2297
2019-12-07 19:19:45 -06:00
Dan Halbert f5e913101c
Merge pull request #2301 from tannewt/support_extended_advertising
Add support for extended (>31 byte) BLE advertisements.
2019-12-06 23:51:05 -05:00
Scott Shawcroft da0ea979ff
Check connection validity after service discovery.
Fixes #2347
2019-12-06 16:03:14 -08:00
Hierophect dd4d3a662d conditional for F412 register difference 2019-12-06 16:44:17 -05:00
Hierophect 252da17bc9 Create VBUS disable interface in shared supervisor 2019-12-06 15:55:00 -05:00
Dan Halbert 559ce6a949
Merge pull request #2356 from tannewt/central_pairing
Add connection interval and debugging
2019-12-06 15:19:40 -05:00
Dan Halbert d628d2a261 atmel-samd working 2019-12-06 15:18:20 -05:00
Scott Shawcroft 840f88b8f0
Merge pull request #2350 from hierophect/stm32-neopixel-fix
Fix for neopixels on <100MHz STM32 boards
2019-12-06 10:40:50 -08:00
Hierophect 6c8503b3c6 VBUS fix actually doesn't work 2019-12-06 12:39:22 -05:00
Hierophect 2a01f0806e text fixes 2019-12-06 11:58:26 -05:00
Hierophect 0ae08e275d remove pyb nano folder 2019-12-06 11:54:01 -05:00
Hierophect f6d0e912c9 remove old 401 files 2019-12-06 11:52:40 -05:00
Hierophect 2dcfc9d411 USB fixes and cleanup 2019-12-06 11:41:38 -05:00
Dan Halbert a0721fc94a Merge remote-tracking branch 'adafruit/master' into ld-cleanup 2019-12-05 22:46:38 -05:00
Dan Halbert 40434d6919 wip 2019-12-05 22:45:53 -05:00
Hierophect 9b43d5ced4 Merge remote-tracking branch 'upstream/master' into stm32-blackpill 2019-12-05 14:25:39 -05:00
Hierophect c53496a55e remove redundant NOPs 2019-12-05 12:45:09 -05:00
Hierophect f3f2c7f5de change default phase for SPI 2019-12-05 11:38:20 -05:00
Scott Shawcroft 17c8356b8c
Add connection interval and debugging
This also sets TinyUSB to master and to not include its submodules.

It also fixes an old displayio example comment and retries gattc
reads.
2019-12-04 14:39:02 -08:00
Scott Shawcroft 19dc219ff7
Merge pull request #2351 from hierophect/stm32-i2c-never-reset
STM32: Add I2C never reset
2019-12-04 10:26:51 -08:00
Hierophect 3de1b9edbe Merge remote-tracking branch 'upstream/master' into stm32-displayio 2019-12-04 10:50:14 -05:00
Jeff Epler 238e121236 protocols: Allow them to be (optionally) type-safe
Protocols are nice, but there is no way for C code to verify whether
a type's "protocol" structure actually implements some particular
protocol.  As a result, you can pass an object that implements the
"vfs" protocol to one that expects the "stream" protocol, and the
opposite of awesomeness ensues.

This patch adds an OPTIONAL (but enabled by default) protocol identifier
as the first member of any protocol structure.  This identifier is
simply a unique QSTR chosen by the protocol designer and used by each
protocol implementer.  When checking for protocol support, instead of
just checking whether the object's type has a non-NULL protocol field,
use `mp_proto_get` which implements the protocol check when possible.

The existing protocols are now named:
    protocol_framebuf
    protocol_i2c
    protocol_pin
    protocol_stream
    protocol_spi
    protocol_vfs
(most of these are unused in CP and are just inherited from MP; vfs and
stream are definitely used though)

I did not find any crashing examples, but here's one to give a flavor of what
is improved, using `micropython_coverage`.  Before the change,
the vfs "ioctl" protocol is invoked, and the result is not intelligible
as json (but it could have resulted in a hard fault, potentially):

    >>> import uos, ujson
    >>> u = uos.VfsPosix('/tmp')
    >>> ujson.load(u)
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ValueError: syntax error in JSON

After the change, the vfs object is correctly detected as not supporting
the stream protocol:
    >>> ujson.load(p)
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    OSError: stream operation not supported
2019-12-04 09:29:57 -06:00
Hierophect e6b45656f9 Add module and empty parallelbus 2019-12-03 17:18:42 -05:00
Hierophect 012b3bdf18 Add I2C never reset, SPI bugfix 2019-12-03 16:18:49 -05:00
Hierophect 45a6b03d40 copy from busted branch 2019-12-03 15:30:12 -05:00
Scott Shawcroft fce81e6868
Merge pull request #2297 from jepler/tick-refactor
Call background tasks only once per ms
2019-12-02 16:45:51 -08:00
Hierophect 12737e2821 remove F401 additions to streamline 2019-12-02 12:28:48 -05:00
Jeff Epler 002f5c0f1c samd: trinket_m0: make board fit again 2019-12-02 08:25:48 -06:00
Jeff Epler 899202aca7
Merge branch 'master' into gcc9 2019-12-02 07:27:03 -06:00
Jeff Epler 95d9c49e43 Merge remote-tracking branch 'origin/master' into tick-refactor 2019-11-29 11:27:09 -06:00
Jeff Epler d843156a5e samd: Consolidate small build optimization flags
.. inline-unit-growth was the same across all boards, and the highest
max-inline-insns-auto parameter was shared across 2 of 5 boards, so it's
worth a little work to follow the DRY principle
2019-11-29 10:51:16 -06:00
Dan Halbert dd6dfeb30a Squeeze pyruler zh_Latn_pinyin 2019-11-27 14:47:35 -05:00
Dan Halbert b32a9192df make UART.write be blocking on SAMD; add timeout property 2019-11-27 13:05:29 -05:00
Scott Shawcroft 3fc58cee38
Merge remote-tracking branch 'adafruit/master' into support_extended_advertising 2019-11-26 13:12:43 -08:00
Dan Halbert e560b419f8
Merge pull request #2325 from sarfata/sarfata/add-shirtty-master
Add shIRtty board
2019-11-26 15:23:56 -05:00
Dan Halbert 97d90c6039
Merge pull request #2329 from theacodes/set-winterbloom-sol-usb-name
Set USB_INTERFACE_NAME for winterbloom_sol
2019-11-26 15:17:14 -05:00
Thea Flowers e77046d49b
Set USB_INTERFACE_NAME for winterbloom_sol 2019-11-26 10:59:12 -08:00
Thomas Sarlandie 2647ea0754 fix: disable touchio to save some space 2019-11-26 19:26:18 +01:00
Scott Shawcroft 58ad38a88e
Remove DotStar from pIRkey M0 for now to free up space
Once we use PixelBuf, the library will be much smaller.
2019-11-26 09:31:44 -08:00
Jeff Epler 82f55dc046 atmel-samd: reduce inlining on constrained boards again
pewpew10, pirkey_m0, and uchip all fit now.  However, pirkey_m0
now has just 76 bytes flash available.
2019-11-26 08:50:55 -06:00
Jeff Epler 3ed6de7baf atmel-samd: reduce inlining on pyruler again
By tweaking the optimizer flags further, this build also fits
2019-11-26 08:50:55 -06:00
Jeff Epler 2e4a6b94e7 atmel-samd: get most constrained m0 builds to work again
By tweaking the optimizer flags, we can get back a few hundred bytes
and allow these builds to work with the gcc9 compiler.
2019-11-26 08:50:45 -06:00
Scott Shawcroft e5dd78d393
Merge pull request #2324 from jepler/nrf-i2s-channels-widths
nrf: assign channel width and count correctly
2019-11-25 16:59:08 -08:00
Scott Shawcroft 2653455ded
Merge pull request #2321 from jepler/nrf-i2s-buglets
Nrf i2s buglets
2019-11-25 16:11:43 -08:00
Thomas Sarlandie 11dc572bce feature: our own PID - thanks @ladyada 2019-11-25 21:56:42 +01:00
Jeff Epler 1ee35fd6fd nrf: i2sout: move register settings closer together
.. just for consistency's sake
2019-11-25 11:43:51 -06:00
Jeff Epler 47a6eaa297 nrf: i2sout: Assign SWIDTH
The sample width register was never set, so all samples were played
as though they were 16 bit.

After this change, 8-bit samples no longer produce audio on the MAX 98357A
BOB, because only 16-, 24-, and 32-bit samples are supported by the
hardware.  This will be addressed by a future change to pad samples to
16 bits; see #2323 and the 98357A datasheet page 6.
2019-11-25 11:43:29 -06:00
Jeff Epler 8f4bab2d24 i2sout: Correctly retrieve channel_count
The meaning of the "single channel" parameter is not well-documented,
but in fact it seems that "true" must be passed or else the returned
channel_count is always 1.  This caused stereo samples to be played
incorrectly.
2019-11-25 10:59:59 -06:00
Thomas Sarlandie fc71ed9789 add shirtty board - hackaday supercon 2019 addon 2019-11-25 17:44:41 +01:00
Dan Halbert d154d11911
Merge pull request #2320 from jepler/nrf-unsigned-audio-crash
nrf: i2sout: Fix double-increment when copying samples
2019-11-25 11:42:16 -05:00
Jeff Epler c9946dfd63 nrf: i2sout: Use <, not !=, for loop condition
This is good C style, h/t @danh
2019-11-25 09:35:57 -06:00
Jeff Epler 19d122e546 nrf: i2sout: Fix double-increment when copying samples
This caused two problems when playing unsigned samples:
 * When an even number of samples were present, it "worked" but only
   every other sample was copied into the output, changing the waveform
 * When an odd number of samples were present, the copy continued beyond
   the end of the buffers and caused a hard fault
2019-11-25 09:07:20 -06:00
Dan Halbert 1ccb7b4c5e cosmetic commit, mostly to re-run 2019-11-22 16:30:10 -05:00
Dan Halbert 13375d16f1 change mpconfigport.mk files so they can be overriden by mpconfigboard.mk 2019-11-22 15:44:51 -05:00
Jeff Epler bfdfe0e681 stm32: fix uses of ticks_ms global 2019-11-22 14:30:08 -06:00
Jeff Epler 77b78d7fb9 Merge remote-tracking branch 'origin/master' into tick-refactor 2019-11-22 14:28:51 -06:00
Jeff Epler 1c6c9a3e1f nrf: i2sout: Ensure hardware I2S is stopped at deinit
.. otherwise, it may be possible under some scenario, for the background
task to continue and overwrite unrelated memory.
2019-11-22 14:15:07 -06:00
Dan Halbert e18d3e0f76 Merge branch 'master' into m4-network-ps2io 2019-11-22 15:02:52 -05:00
Jeff Epler aabb56c840 nrf: i2sout: Only update hold_value when appropriate
If we put no samples into the buffer, then there is no last
sample to fill out hold_value with.  (and, in fact, the expression such
as *(uint32_t*)(buffer-4) is outside an allocated region)

Detect this condition, and leave the prior value in place.

This improves clicks heard when pausing and resuming a waveform.
2019-11-22 13:54:37 -06:00
Dan Halbert 1a62a9cb17 remove network from kicksat_sprite 2019-11-22 14:02:44 -05:00
Dan Halbert 2e9aa38700 turn off network in pewpew_m4 2019-11-22 13:49:33 -05:00
Dan Halbert 1d411d2874 Merge remote-tracking branch 'adafruit/master' into testing-fixes 2019-11-22 11:55:34 -05:00
Hierophect 352bd95f5a remove blackpill 2019-11-22 11:19:39 -05:00
Dan Halbert 228a619af5 enable network, wiznet5k, and ps2io by default on M4 2019-11-22 10:59:27 -05:00
Hierophect 0d8eb3cfb4 add correct VID/PID pairs 2019-11-22 10:54:35 -05:00
Hierophect 6a7c8d6341 minor fix 2019-11-21 20:56:05 -05:00
Scott Shawcroft 743bc829ab
Clean up debug changes 2019-11-21 16:39:57 -08:00
Scott Shawcroft e63796c7bc
Special exception message for when pairing prompt is ignored. 2019-11-21 16:32:42 -08:00
Scott Shawcroft 39f4046f70
Fix pairing when peripheral. Central untested. 2019-11-21 16:32:42 -08:00
Hierophect b5ff9684bb remove misplaced status LED definitions 2019-11-21 17:09:28 -05:00
Hierophect 4e4ecafd97 Add definitions for PYB Nano and blackpill 2019-11-21 16:53:06 -05:00
Dan Halbert 2adecda5eb
Merge pull request #2311 from tannewt/redo_bleio_errors
Use BluetoothError in _bleio
2019-11-21 16:44:26 -05:00
Dan Halbert e06dc72359
Merge pull request #2307 from hierophect/stm32-spi-cleanup
STM32: SPI clock rate fix and cleanup
2019-11-21 16:12:06 -05:00
Hierophect a96317d566 requested style changes 2019-11-21 14:30:07 -05:00
Hierophect 13d786b2ef added pin defs 2019-11-21 14:27:59 -05:00
Scott Shawcroft 5e857fdb67
Use BluetoothError in _bleio
This better differentiates errors than using OSError everywhere.
2019-11-20 14:02:15 -08:00
Hierophect 006182f4e8 Remove meowbit for now 2019-11-20 15:56:00 -05:00
Hierophect d8d95d9998 Minor meowbit changes 2019-11-20 15:55:13 -05:00
Hierophect cf4a3237e7 Merge remote-tracking branch 'upstream/master' into stm32-meowbit-etc 2019-11-20 15:31:55 -05:00
Hierophect 9764006f81 add F401 pin definition 2019-11-20 15:30:31 -05:00
Hierophect 3d1b6d9fc8 fix typo 2019-11-20 12:07:12 -05:00
Hierophect bd9893ab98 clean up SPI module readability 2019-11-20 12:00:45 -05:00
Hierophect 0b558e8714 fix error in SPI busclock selection 2019-11-20 11:34:49 -05:00
wallarug fce7b89087 removed Robo HAT MM1 M0 board. 2019-11-20 21:34:24 +11:00
Scott Shawcroft 11c2c3443f
Add support for extended (>31 byte) BLE advertisements. 2019-11-19 13:55:58 -08:00
ndgarage b3d7467719 add-ndbit6 2019-11-19 14:52:09 -07:00
Dan Halbert 1a22d8a0f2
Merge pull request #2291 from hierophect/stm32-neopixel
STM32: Neopixel support
2019-11-18 23:45:09 -05:00
Hierophect 4a25c2344e implement os urandom 2019-11-18 18:27:25 -05:00
Hierophect 256abf5505 Add board folders 2019-11-18 16:13:27 -05:00
Hierophect a4797327cd add microcontroller toggles for status LED 2019-11-18 13:51:59 -05:00
Jeff Epler 40a47d41df samd: background: Allow monitoring time taken in background task
If you define MONITOR_BACKGROUND_TASK, then a physical output pin
(Metro M4 Express's "SCL" pin by default) will be set HIGH while in
the background task and LOW at other times
2019-11-18 11:01:24 -06:00
Jeff Epler 7f744a2369 Supervisor: move most of systick to the supervisor
This code is shared by most parts, except where not all the #ifdefs
inside the tick function were present in all ports.  This mostly would
have broken gamepad tick support on non-samd ports.

The "ms32" and "ms64" variants of the tick functions are introduced
because there is no 64-bit atomic read.  Disabling interrupts avoids
a low probability bug where milliseconds could be off by ~49.5 days
once every ~49.5 days (2^32 ms).

Avoiding disabling interrupts when only the low 32 bits are needed is a minor
optimization.

Testing performed: on metro m4 express, USB still works and
time.monotonic_ns() still counts up
2019-11-18 11:01:23 -06:00
Cedar Grove Maker Studios e7df288a34
add USB interface description
... to "StringCarM0Ex"
2019-11-16 16:40:40 -08:00
Hierophect 51078cc38f timing tweaks with testing 2019-11-15 17:17:05 -05:00
Hierophect 98fd372d5b Add missing define 2019-11-15 13:19:37 -05:00
Hierophect ee1559b921 Merge branch 'pin-commonhal-additions' into stm32-neopixel 2019-11-15 13:09:59 -05:00
Hierophect 81223c76bd revert error 2019-11-15 13:04:25 -05:00
Hierophect 5f290d091e Merge branch 'pin-commonhal-additions' into stm32-neopixel 2019-11-15 13:00:11 -05:00
Hierophect 2c6781f74d move neopixel_in_use flag to shared-bindings 2019-11-15 12:59:52 -05:00
Hierophect e1579a1cc5 Merge branch 'pin-commonhal-additions' into stm32-neopixel 2019-11-15 12:47:23 -05:00
Hierophect de5691acf5 Add never_reset and reset to pin common hal, adjust files 2019-11-15 12:47:00 -05:00
Hierophect 6cce2d6d14 Implement Neopixel write, add defaults to f405 2019-11-15 12:28:16 -05:00
KalbeAbbas 8134ceec83
Update pins.c 2019-11-14 23:16:55 +05:00
KalbeAbbas 799770926b
Update pins.c 2019-11-14 18:51:01 +05:00
KalbeAbbas 949f87fd25
Update pins.c 2019-11-14 18:50:26 +05:00
KalbeAbbas 3db7f2798f updated 2019-11-14 16:34:08 +05:00
Hierophect 6e96b1945e Raise clock speed, adjust divisors 2019-11-13 13:18:43 -05:00
Dan Halbert 166518fc9b
Merge pull request #2272 from hierophect/stm32-microcontroller-fillout
STM32: add us delay
2019-11-12 18:03:55 -05:00
Hierophect e40bd07fcf fix conflicting definitions on discovery boards 2019-11-12 13:03:13 -05:00
Hierophect bbc366b85b Style overhaul, extra error checks 2019-11-12 11:26:14 -05:00
Hierophect ed3e377390 Merge remote-tracking branch 'upstream/master' into stm32-uart 2019-11-12 09:49:17 -05:00
☒ Bjarke Gotfredsen d745c1023e
Support for XinaBox CC03 and CS11
CC03 is a ATSAMD21G18 Cortex-M0+ breakout in xChips format. CS11 is the same, but with a SD Card Interface. 
https://xinabox.cc/products/cc03
https://xinabox.cc/products/cs11
2019-11-12 12:48:31 +02:00
Hierophect 14b70806a5 de-init check 2019-11-11 15:47:47 -05:00
Hierophect e076f14ea3 text fixes 2019-11-11 15:32:47 -05:00
Hierophect c38086fc4a fix typo 2019-11-11 15:04:22 -05:00
Hierophect 3f8b4727f5 Revise us delay to include interrupt/non-interrupt versions 2019-11-11 14:58:45 -05:00
Dan Halbert 91156670e9
Merge pull request #2271 from theacodes/enable-micropython-native
Allow boards to enable the `micropython.native` decorator
2019-11-08 13:42:17 -05:00
Hierophect d42c4b082d revert sublime being a dumb 2019-11-06 14:55:16 -05:00
Hierophect 39dbcb529a revert git being a dumb 2019-11-06 14:54:07 -05:00
Hierophect adfef8b520 Merge remote-tracking branch 'upstream/master' into stm32-dac-deinit 2019-11-06 14:46:56 -05:00
Dan Halbert b8373aca0c
Merge pull request #2266 from hierophect/stm32-defaults
STM32: Add board defaults
2019-11-06 14:29:29 -05:00
Thea Flowers c7195c4bc5
Allow boards to enable the `micropython.native` decorator
Adds the `CIRCUITPY_ENABLE_MPY_NATIVE` for `mpconfigboard.mk` that enables
the `micropython.native` decorator.
2019-11-05 14:27:53 -08:00
Hierophect e66fcb5e1f add missing newline 2019-11-05 16:32:34 -05:00
Hierophect 8a098c154d Fix unsaved file 2019-11-05 16:25:30 -05:00
Hierophect 1a7060af25 Add us delay 2019-11-05 16:23:59 -05:00
Joe Bakalor ba83a4a2ac
Merge pull request #1 from adafruit/master
Update base
2019-11-05 11:06:18 -05:00
Hierophect 0b85c4bb20 Merge remote-tracking branch 'upstream/master' into stm32-uart 2019-11-05 10:56:57 -05:00
JoeBakalor 8ab3ef44dd add bluebird template files 2019-11-05 10:52:25 -05:00
Hierophect dfe73a063d Fix error that would carry past python exception 2019-11-05 10:50:57 -05:00
Thea Flowers 73989dbcaf Add board configuration for Winterbloom Sol 2019-11-04 23:11:42 -08:00
Dan Halbert 8cd2f87e99
Merge pull request #2236 from tannewt/bleio_tweaks
Refine _bleio
2019-11-04 22:27:54 -05:00
Dan Halbert c87d6cc6a5
Merge pull request #2248 from hierophect/stm32-PWM
STM32: PWMOut
2019-11-04 22:08:01 -05:00
Dan Halbert f185b30d71
Update PWMOut.h 2019-11-04 20:41:54 -05:00
Hierophect 38e38b9f8d remove redundant comment 2019-11-04 17:20:10 -05:00
Hierophect 632b3267dc Add auto-shutoff of DAC when channels de-inited 2019-11-04 17:08:00 -05:00
Hierophect 40f920fbdf complete attribution edits 2019-11-04 14:39:41 -05:00
Hierophect ca1eb4def1 Add other board globals 2019-11-04 14:35:23 -05:00
Hierophect 2111a7c4cf Merge branch 'master' into stm32-defaults 2019-11-04 14:32:00 -05:00
Hierophect 3526fed611 add board global 2019-11-04 14:31:57 -05:00
Hierophect 15d8d88950 Add default defines 2019-11-04 14:15:26 -05:00
Hierophect ccff7e70ca Style changes and refactors 2019-11-04 11:30:49 -05:00
Dan Halbert e3638ffaad
Merge pull request #2262 from jepler/cpb-speaker-disable
cpb: Disable the onboard speaker until request
2019-11-03 18:34:29 -05:00
Hierophect 1c4f49bb83 attribution changes 2019-11-03 16:33:01 -05:00
Scott Shawcroft cd3fcc87ab
Merge pull request #2252 from dhalbert/cpb-two-i2c
nrf: allocate two I2C on CPB
2019-11-03 13:15:36 -08:00
Dan Halbert 85a648224f Check for no pullups on I2C on nrf; give arduino nano 33 ble two I2C devices 2019-11-02 22:47:03 -04:00
jepler 2bdccf03a7 cpb: define the SPEAKER_ENABLE_PIN
This allows the board to disable the onboard speaker until explicitly
enabled in user code.

Testing performed on a CPB:
 * Touching the AUDIO pin with a fingertip no longer generates noise/buzz
 * Generating a waveform with `simpleio.tone` produces no sound by default
 * When the board.SPEAKER_ENABLE is configured as a digital output and
   set True, `simpleio.tone` does produce sound

Note that while guides should include information about SPEAKER_ENABLE, it's
possible that some users who omitted it could view this as a breaking change.
They can fix it by simply adding code similar to

    speaker_enable = digitalio.DigitalInOut(board.SPEAKER_ENABLE)
    speaker_enable.direction = digitalio.Direction.OUTPUT
    speaker_enable.value = True

before using the internal speaker.

Closes: #2258
2019-11-01 16:26:03 -05:00
jepler fe47eba97f nRF: Handle SPEAKER_ENABLE_PIN
.. the existing code, which was never activated by the preprocessor,
wasn't quite right.
2019-11-01 16:23:35 -05:00
Hierophect 8d0cc71aee Add write protections, fix edge case read halt 2019-11-01 17:00:01 -04:00
Scott Shawcroft 47e50e5659
Merge remote-tracking branch 'adafruit/master' into bleio_tweaks 2019-11-01 13:20:58 -07:00
Hierophect e605ce6317 Debugging additions 2019-11-01 14:30:28 -04:00
Hierophect 0a1a12b867 Revise PWM period generation algorithm to match other ports 2019-10-31 16:59:44 -04:00
brentru 2f04c5891f flip it around 2019-10-31 14:11:50 -04:00
brentru ab3da3071c flip MADCTL BGR bit to reflect RGB colors 2019-10-31 10:11:47 -04:00
Hierophect c78d79938d remove debug output 2019-10-30 17:07:16 -04:00
Hierophect a8070a4185 Revise IRQ managment, add restart on failure 2019-10-30 16:59:53 -04:00
Hierophect bb8046dbb3 remove debug messages 2019-10-30 10:00:50 -04:00
ladyada d2b613134d we should use native rotation, and tweak madctl (not done yet) 2019-10-29 22:53:44 -04:00
ladyada 1e869d1334 switch to 8-bit mode - tested on hardware! 2019-10-29 21:14:45 -04:00
Hierophect 6b0cb87cbf Dynamic prescaler adjustment, adjust pulse resolution 2019-10-29 17:17:26 -04:00
Hierophect 4de5a33a43 Style changes 2019-10-29 10:24:26 -04:00
Hierophect 33deb6752b Add harder resets to UART 2019-10-29 09:41:52 -04:00
Dan Halbert e35eb08f1d nrf: allocate two I2C on CPB 2019-10-28 21:08:53 -04:00
Dan Halbert 1505da784f wip 2019-10-28 18:15:02 -04:00
Dan Halbert 56ac41fabf
Merge pull request #2240 from theacodes/fix-2086
Track unadjusted PWM duty cycle to avoid accumulating conversion errors
2019-10-28 14:50:01 -04:00
Hierophect 3034cfc82f Merge remote-tracking branch 'upstream/master' into stm32-uart 2019-10-28 12:16:01 -04:00
Hierophect 69bf926211 Merge remote-tracking branch 'upstream/master' into stm32-PWM 2019-10-28 12:01:28 -04:00
Dan Halbert 1d7d9043c1 CXD56 is a better platform name 2019-10-28 10:47:09 -04:00
Dan Halbert 358920db0e Use MICROPY_PY_SYS_PLATFORM in mpconfigport.h only 2019-10-28 10:40:10 -04:00
Hierophect c0f1ce590e Add support across dev boards 2019-10-27 20:17:10 -04:00
Hierophect 7fd5e9b867 Fix issue with changing frequency 2019-10-27 19:41:01 -04:00
Hierophect 0cd8c3d5a8 Add all basic functions, never reset, dynamic pulse changes 2019-10-27 19:17:01 -04:00
Jeff Epler 1103490223
Merge pull request #2244 from dhalbert/itsybitsy_nrf52840_express
Initial Itsy nRF52840 defn
2019-10-27 16:46:28 -05:00
Hierophect cb491e855c WIP 2019-10-27 14:31:25 -04:00
Dan Halbert 76817eaa10 Merge remote-tracking branch 'adafruit/master' into nano-33-ble 2019-10-25 22:41:26 -04:00
Dan Halbert ab6fd34828 add object types to rgb status objects;mark spi rgb objects as never_reset 2019-10-25 22:32:43 -04:00
Dan Halbert 7d04d9109e use bitbang SPI for DotStar; still need to fix hw SPI for dotstar 2019-10-25 15:37:27 -04:00
Thea Flowers 4b742f88d9
Fix spelling 2019-10-25 10:50:27 -07:00
Dan Halbert cdeb0857a9 Initial Itsy nRF52840 defn 2019-10-25 11:15:34 -04:00
Hierophect cf7efee0d3 Add f405 pindefs 2019-10-24 18:00:50 -04:00
Hierophect 7f769580bd Merge remote-tracking branch 'upstream/master' into stm32-PWM 2019-10-24 14:11:51 -04:00
hierophect 3683ee3ffa
Merge pull request #2243 from hierophect/f405-rename-and-fixes
STM32: rename feather_stm32f405_express, fix makefile defs issue
2019-10-24 14:11:17 -04:00
Hierophect 511071e1ba Rename feather across folders and config, fix makefile def issue 2019-10-24 12:51:40 -04:00
Hierophect 64337775f8 PWM Base functionality testing for F405 2019-10-24 12:43:34 -04:00
Thea Flowers 4fdf518251
Track unadjusted PWM duty cycle to avoid accumulating conversion errors
Fixes #2086

When the frequency of a `PWMOut` is change it re-sets the PWM's duty cycle as
well, since the registers have to be re-calculated based on the new frequency.
Unfortunately, `common_hal_pulseio_pwmout_get_duty_cycle`
will return a value very close to, but not exactly, the value passed to `common_hal_pulseio_pwmout_set_duty_cycle`. If the frequency is modified
without the calling code also re-setting the duty cycle then the duty cycle
will decay over time. This fixes that problem by tracking the unadjusted duty
cycle and re-setting the duty cycle to that value when the frequency is changed.
2019-10-23 14:34:14 -07:00
ProductDev 4cd5571203 Adds builds for sparkfun_qwiic_micro with and without flash 2019-10-23 15:05:46 -06:00
Dan Halbert af1fab1915
Merge pull request #2226 from kamtom480/circuitpython-device-open
Do not open the same PWM device if it is already open
2019-10-23 15:08:40 -04:00
Scott Shawcroft 91c9d519ae
Refine comments and switch prefix_len to size_t 2019-10-22 23:09:56 -07:00
Hierophect 1d8a75fa3f minor WIP 2019-10-22 13:11:45 -04:00
Hierophect ca4b7f81e5 Initial template setup 2019-10-22 11:09:46 -04:00
Scott Shawcroft ae30a1e5aa
Refine _bleio
This PR refines the _bleio API. It was originally motivated by
the addition of a new CircuitPython service that enables reading
and modifying files on the device. Moving the BLE lifecycle outside
of the VM motivated a number of changes to remove heap allocations
in some APIs.

It also motivated unifying connection initiation to the Adapter class
rather than the Central and Peripheral classes which have been removed.
Adapter now handles the GAP portion of BLE including advertising, which
has moved but is largely unchanged, and scanning, which has been enhanced
to return an iterator of filtered results.

Once a connection is created (either by us (aka Central) or a remote
device (aka Peripheral)) it is represented by a new Connection class.
This class knows the current connection state and can discover and
instantiate remote Services along with their Characteristics and
Descriptors.

Relates to #586
2019-10-21 18:57:03 -07:00
Hierophect a596213526 non-functional WIP 2019-10-21 17:06:40 -04:00
Kamil Tomaszewski e4574fa3bf Clean UART on reset 2019-10-21 13:17:51 +02:00
Dan Halbert 7b79ac3739 Parameterize linker script 2019-10-20 23:50:12 -04:00
Hierophect af28474b06 IRQ priority and port clearing scratchwork 2019-10-18 14:10:41 -04:00
Kamil Tomaszewski e2cb29f2a0 Change default stack size to 64kiB for Spresense 2019-10-18 15:43:06 +02:00
Kamil Tomaszewski 3ad13e14d8 Do not open the same UART device again 2019-10-18 12:39:52 +02:00
Kamil Tomaszewski b39ca3f8be Do not open the same PWM device again 2019-10-18 12:39:22 +02:00
Kamil Tomaszewski 1decd111d5 Do not open the same ADC device again 2019-10-18 12:38:39 +02:00
Kamil Tomaszewski 4338511b28 Add get top and limit functions for Spresense 2019-10-18 11:10:22 +02:00
Kamil Tomaszewski 96756b3945 Add functions to get top and limit stack 2019-10-18 11:04:45 +02:00
Kamil Tomaszewski 30c9ad2b2a Update Spresense SDK to 1.4.1 2019-10-18 10:29:32 +02:00
wallarug 8f2e5990db
Changed to follow standard that Pad 0 is always TX 2019-10-17 18:02:05 +11:00
Hierophect 14c64159c8 Implement requested changes, refactors 2019-10-16 13:50:54 -04:00
Hierophect 323fe418f7 Add support for other F4 MCUs 2019-10-16 13:14:57 -04:00
Hierophect 552900f18e Merge remote-tracking branch 'upstream/master' into stm32-uart 2019-10-16 12:33:31 -04:00
Hierophect b4a6246e30 Cleanup 2019-10-16 12:32:34 -04:00
Hierophect 14eefaafee Hack in interrupt support 2019-10-16 11:33:55 -04:00
Dan Halbert be8136dc6d Merge remote-tracking branch 'adafruit/master' into bonding1 2019-10-15 15:55:21 -04:00
Scott Shawcroft 63790f01f8
Merge pull request #2218 from CedarGroveStudios/master
Definitions for StringCar M0 Express and AT25SF161-SSHD-T 2MiB SPI flash chip
2019-10-15 09:46:39 -07:00
Scott Shawcroft 6f2e2faff2
Merge pull request #2214 from dhalbert/remove-unused-ports
Remove non-CircuitPython ports
2019-10-15 09:45:53 -07:00
Dan Halbert a0d18ac4e6 add dummy common_hal_mcu_processor_get_voltage() for spresense 2019-10-15 09:07:12 -04:00
Dan Halbert eca73436c9 Merge remote-tracking branch 'adafruit/master' into cpu-voltage 2019-10-15 09:03:24 -04:00
Dan Halbert fdd7ebef2d change calibration from analogin_reset() to analogin_init() 2019-10-14 23:38:41 -04:00
Scott Shawcroft 1a7c787d3c
Merge branch 'master' into master 2019-10-14 19:47:46 -07:00
Dan Halbert 615ec7f74d merge from upstream 2019-10-14 18:12:58 -04:00
Scott Shawcroft 51582abc87
Merge pull request #2207 from kamtom480/circuitpython-spresense
Add Spresense board
2019-10-14 14:19:09 -07:00
Cedar Grove Maker Studios bd608e0807
remove placeholder 2019-10-14 11:56:53 -07:00
Cedar Grove Maker Studios b04a218bbc
initial load of stringcar m0 express defs 2019-10-14 11:56:18 -07:00
Cedar Grove Maker Studios 44ebc4c95d
establish stringcar m0 express definitions 2019-10-14 11:55:22 -07:00
Kamil Tomaszewski b750ed3a0f Change Spresense firmware download link 2019-10-14 08:42:10 +02:00
Kamil Tomaszewski 8dfc8b584f Change Spresense reference_voltage to 0.0 (None) 2019-10-14 08:22:14 +02:00
Dan Halbert 9c8f969b34 remove ports/zephyr 2019-10-13 11:09:55 -04:00
Dan Halbert 0bed5f490a remove ports/windows 2019-10-13 11:09:43 -04:00
Dan Halbert 8f792127da remove ports/teensy 2019-10-13 11:09:03 -04:00
Dan Halbert fc033bd954 remove ports/stm32 2019-10-13 11:08:52 -04:00
Dan Halbert 7bc02ad3ba remove ports/qemu-arm 2019-10-13 11:08:35 -04:00
Dan Halbert 6dcaeae8c7 remove ports/pic16bit 2019-10-13 11:08:08 -04:00
Dan Halbert c575cd7bc7 remove ports/minimal 2019-10-13 11:07:40 -04:00
Dan Halbert 7692e06230 remove ports/esp8266 2019-10-13 11:07:07 -04:00
Dan Halbert 41ef2ab591 remove ports/esp32 2019-10-13 11:06:54 -04:00
Dan Halbert b0d656683b remove ports/cc3200 2019-10-13 11:06:33 -04:00
Dan Halbert 3d17e1d418 remove ports/bare-arm 2019-10-13 11:06:17 -04:00
Dan Halbert c1ab2486f9 return chip vcc value 2019-10-12 15:42:15 -04:00
Jeff Epler fae6e29546 nrf: PWMAudioOut: deactivate PWM when deinitting self
.. otherwise, when an AudioPWMOut object was deinitted without being
explicitly stop()ped, it would use up a slot in active_audio[]; the
5th iteration would create a non-working audio object which would just
buzz instead of playing the right thing.

Closes: #2203
2019-10-12 14:01:35 +09:00
Jeff Epler ef459326cb nrf: PWMAudioOut: coding style 2019-10-12 13:57:31 +09:00
Hierophect 1140ff5cd5 WIP 2019-10-11 15:47:55 -04:00
Kamil Tomaszewski 6b9375804c Rename circuitpython.spk to firmware.spk 2019-10-11 17:15:25 +02:00
Kamil Tomaszewski 771f43591a Add links to serial drivers 2019-10-11 12:57:43 +02:00
Kamil Tomaszewski eb1dfd2312 Add .gitignore 2019-10-11 12:11:48 +02:00
Kamil Tomaszewski 0d139e4eca Add a way to change serial device name 2019-10-11 12:09:51 +02:00
Kamil Tomaszewski c062990830 Make Makefile work across OS 2019-10-11 12:09:51 +02:00
Kamil Tomaszewski 8f653d6238 Use CXD56 pin names 2019-10-11 12:09:51 +02:00
Kamil Tomaszewski 5f09609d41 Add Spresense board folder 2019-10-11 12:09:51 +02:00
Kamil Tomaszewski 1fa8841d20 Change port name to cxd56 2019-10-11 08:23:51 +02:00
Hierophect bfebbaee32 Merge remote-tracking branch 'upstream/master' into stm32-uart 2019-10-10 14:28:19 -04:00
Hierophect 06b2fed518 improve macro readability 2019-10-09 16:06:23 -04:00
hierophect 4ce7a4cfdb
Merge branch 'master' into stm32-DAC 2019-10-09 15:47:43 -04:00
Hierophect 5f33c542b4 Fix include issues 2019-10-09 14:52:30 -04:00
Hierophect 8a94f25181 Text fixes 2019-10-09 13:54:40 -04:00
Hierophect cb0ed264c4 Implement DAC 2019-10-09 13:34:20 -04:00
Kamil Tomaszewski 6d1748fd59 Add spresense-exported-sdk submodule 2019-10-09 08:38:50 +02:00
Kamil Tomaszewski 526925f1c6 Add Spresense board 2019-10-09 08:27:08 +02:00
Hierophect f58d54cd22 Preliminary read system, not buffered 2019-10-08 16:03:51 -04:00
kamtom480 f6e553f89f
Merge branch 'master' into circuitpython-number-endpoint 2019-10-08 09:41:29 +02:00
Chris Osterwood 137a4f8a5d Added new flash SKU for production hardware 2019-10-07 14:50:39 -04:00
Hierophect cc3a17845c Fix USB issues, frequency macro, F412 tests 2019-10-07 14:22:12 -04:00
hierophect 59ed879c8f
Merge pull request #2197 from hierophect/always-build-modules
Sort some modules into ALWAYS-BUILD in mpconfig
2019-10-07 09:09:28 -04:00
Kamil Tomaszewski 7aefcc449a Add an alternative way to number the USB endpoints
Two options available:
- relative numbering (USB_RELATIVE_EP_NUM = 1) - default
- absolute numbering (USB_RELATIVE_EP_NUM = 0) - new!
2019-10-07 12:31:42 +02:00
Dan Halbert fc19e03128 WIP: bonding 2019-10-06 21:30:26 -04:00
Hierophect 0b85172ba6 WIP 2019-10-04 14:37:18 -04:00
Hierophect 51901f7de0 Add peripheral definitions 2019-10-04 11:42:38 -04:00
Hierophect dc4abb922b Revert accidental OS delete 2019-10-03 15:40:46 -04:00
hierophect f4922a530a
Merge pull request #2186 from hierophect/stm32-spi-flash
STM32: SPI Flash
2019-10-03 15:32:56 -04:00
Hierophect 7a2f60c43d Add Always Build flag, remove redundancy 2019-10-03 15:23:45 -04:00
Hierophect eacdb1da6e Disable timeout, remove redundancy 2019-10-03 14:43:25 -04:00
Dan Halbert 463415a7ef update stm32f4 port to use tinyusb synopsys tree 2019-10-03 13:26:03 -04:00
Hierophect 83c49a5c80 Increase SPI timeout duration 2019-10-03 09:14:54 -04:00
Hierophect 5a6194839b Timeout fix for I2C device testing 2019-10-02 17:59:42 -04:00
Hierophect 86305bfdfe Make all errors value errors 2019-10-02 17:32:54 -04:00
Hierophect 9aa6d215fd Add some definitions for when F412 can be implemented 2019-10-02 16:03:22 -04:00
Hierophect 5a2f82095a Implement SPI flash settings, bugfix for SPI pin assignment 2019-10-02 15:17:49 -04:00
Scott Shawcroft d6e987e587
Merge pull request #2182 from hierophect/stm32-spi
STM32: SPI Support
2019-09-30 20:00:23 -07:00
Hierophect b66700720b improve error readability 2019-09-30 18:05:07 -04:00
Hierophect 1f90cffc89 protect against edge case 2019-09-30 13:33:20 -04:00
Hierophect 56eb9666ea Implement never-reset, fix F412 2019-09-30 11:35:40 -04:00
Hierophect a475b667b5 Clean up debugging messages, remove shortcuts 2019-09-30 11:04:09 -04:00
Hierophect 492bc3eedc Expand pin definitions for all boards 2019-09-30 10:45:02 -04:00
Hierophect e2d0ad6adc Add settings reconfiguration 2019-09-29 15:01:32 -04:00
Hierophect bf7b841020 Further reversion 2019-09-29 13:22:12 -04:00
Hierophect 89315999e2 Fix bad returns, revert flash changes 2019-09-29 13:18:43 -04:00
Hierophect 270396a882 Refine SPI settings for testing 2019-09-29 13:01:27 -04:00
Hierophect d7443fce54 First implementation of read write 2019-09-27 17:59:55 -04:00
Hierophect ad33950966 Flash memory changes - non functional 2019-09-27 11:00:09 -04:00
Dan Halbert aa1eed3bd3 initial Arduino Nano 33 BLE board definition 2019-09-26 15:28:57 -04:00
Scott Shawcroft cdc116291b
Merge pull request #2177 from wallarug/walla/robohatmm1-production
Robo HAT MM1 - Fixes after testing
2019-09-26 10:44:55 -07:00
Hierophect 51df8d18b4 Merge remote-tracking branch 'upstream/master' into stm32-spi 2019-09-26 13:44:24 -04:00
Scott Shawcroft 8221553600
Merge pull request #2175 from hierophect/stm32-f405-support
STM32 F405 support
2019-09-26 10:38:03 -07:00
hierophect f4a31a7843
Update PID to suggestion
USB_PID = 0x805C (Pyboard

Co-Authored-By: Scott Shawcroft <scott@tannewt.org>
2019-09-26 11:38:08 -04:00
Hierophect f08127bfcc WIP 2019-09-26 11:35:08 -04:00
arturo182 21f8c3e40a serpente: Update PID and enable as many modules as we can fit 2019-09-26 17:22:18 +02:00
wallarug 3c99a23adb fix spi 2019-09-26 21:47:36 +10:00
wallarug 533a5bc7a3 fixed SPI on M4 2019-09-26 21:43:52 +10:00
wallarug 5cd10b3ba0 updated robohatmm1_m0 2019-09-26 20:02:09 +10:00
wallarug 39265fccf3 included a version number 2019-09-26 19:22:51 +10:00
wallarug db9495b04b updated board name 2019-09-26 19:21:53 +10:00
wallarug 08b0f80879 updated board name 2019-09-26 19:21:24 +10:00
wallarug b7e8a031d0 remove frozen busio library 2019-09-26 19:19:54 +10:00
wallarug ff13b6f682 updated pins.c 2019-09-26 19:18:50 +10:00
Hierophect a926d01509 reorganize pins 2019-09-25 11:53:49 -04:00
Hierophect f286737868 add peripheral definitions 2019-09-25 11:37:27 -04:00
Hierophect 6058677979 whitespace fix 2019-09-24 16:10:43 -04:00
Hierophect 742e747609 Implement another USB ID 2019-09-24 14:53:56 -04:00
Hierophect c3baf286c1 Implement correct USB IDs 2019-09-24 14:51:57 -04:00
Hierophect d597410330 implement suggested changes 2019-09-24 14:15:04 -04:00
Hierophect dc1109dba7 add feather support 2019-09-24 14:07:03 -04:00
Hierophect 61a45cdaed clock fixes 2019-09-24 13:17:46 -04:00
Hierophect 31a22858d5 text fixes 2019-09-24 10:05:40 -04:00
Hierophect 2b65a0e95f WIP 2019-09-23 17:40:28 -04:00
Hierophect f1cd1c5d4d minor edits 2019-09-23 13:30:37 -04:00
Hierophect 19cf716461 Fix missing items 2019-09-23 12:14:27 -04:00
Hierophect 60bb6acf38 Add F405 support 2019-09-23 11:59:14 -04:00
Hierophect fd1a257df3 Merge branch 'master' into stm32-f405-support 2019-09-23 09:36:03 -04:00
wallarug 70860e1352 robohatmm1 removed uart and put in correct order 2019-09-22 19:47:44 +10:00
Limor "Ladyada" Fried 7f1bc48a88
Merge pull request #2173 from hierophect/stm32-os
STM32: Add OS and Struct support
2019-09-20 16:42:31 -04:00
Hierophect 200c474a13 correct typo 2019-09-20 15:55:11 -04:00
Hierophect 00f1e4f1ad WIP 2019-09-20 15:54:34 -04:00
Limor "Ladyada" Fried 8d16379634
Merge pull request #2151 from hierophect/stm32-peripherals
STM32: peripheral management
2019-09-20 15:40:25 -04:00
Hierophect 9af5f3a7a7 Add OS and struct support 2019-09-20 14:51:23 -04:00
Hierophect ef15ebe8c7 Repeated initialization protection, cleanup 2019-09-20 14:33:37 -04:00
Scott Shawcroft 13a9c446ee
Merge pull request #2171 from hierophect/stm32-find-fix
STM32: fix illegal option error on mac builds
2019-09-20 10:19:58 -07:00
Scott Shawcroft 19c6c96929
Merge pull request #2130 from jepler/nrf-debugflags
nrf: Makefile: sensible flags for debugging
2019-09-20 10:18:00 -07:00
Hierophect 7cea078494 Added existance check 2019-09-20 12:39:48 -04:00
Melissa LeBlanc-Williams 9a74bf929b Added TFT pins to HalloWing M4 for code compatibility 2019-09-19 14:50:10 -07:00
Melissa LeBlanc-Williams b7598f7058 Merge branch 'master' of https://github.com/adafruit/circuitpython 2019-09-19 14:20:28 -07:00
Hierophect 18c5be8835 QOL pin adds 2019-09-19 17:01:25 -04:00
Hierophect 9da5723c59 F412 support, cleanup 2019-09-19 16:32:38 -04:00
Hierophect c12860ff7d the code equivalent of smacking something really hard with a wrench 2019-09-19 16:10:26 -04:00
Hierophect b325eadc33 various failed attempts to get I2C to reset 2019-09-19 16:02:52 -04:00
Scott Shawcroft 0fed65e7d2
Merge remote-tracking branch 'adafruit/master' into dac51 2019-09-19 12:21:54 -07:00
Melissa LeBlanc-Williams 341428b4da Added SPEAKER pin to HalloWing M4 for code compatibility 2019-09-19 11:23:37 -07:00
Hierophect d56b62e44c Fix crash related to improper instance assignment 2019-09-19 14:15:12 -04:00
Melissa LeBlanc-Williams 8dfb2237d9 Added TOUCH pins to HalloWing M4 for code compatibility 2019-09-19 10:40:13 -07:00
Hierophect c85873e4e6 index fix 2019-09-19 12:45:47 -04:00
Hierophect 60985968a8 Reorganize storage to per-pin 2019-09-19 12:18:18 -04:00
Hierophect 12cd009bb9 WIP 2019-09-18 16:49:15 -04:00
Hierophect bf62477ff9 Merge branch 'stm32-analogio' into stm32-peripherals 2019-09-18 13:45:22 -04:00
Hierophect cd5ec365d3 Cleanup 2019-09-18 13:44:08 -04:00
Hierophect d60ecc5e3d Rework I2C peripheral check 2019-09-18 13:42:54 -04:00
Hierophect 69a0bfaf34 Merge branch 'stm32-analogio' into stm32-peripherals 2019-09-18 12:15:44 -04:00
Hierophect c9b86111f4 text fix 2019-09-18 11:45:21 -04:00
Hierophect 601c3ea8dc minor HAL swap 2019-09-17 17:54:29 -04:00
Hierophect 97b1208829 Merge remote-tracking branch 'upstream/master' into stm32-analogio 2019-09-17 17:47:15 -04:00
Hierophect 48ae684c6e Adjust settings to support F412 2019-09-17 17:46:44 -04:00
Limor "Ladyada" Fried 69234cc8d6
Merge pull request #2163 from tannewt/cpx_displayio
Add custom CPX build for display support
2019-09-17 16:55:42 -04:00
Hierophect 863655044e Re-expand pin reset 2019-09-17 16:52:44 -04:00
Hierophect 71531dd4d1 Fix out of date HAL inputs in DigitalIO 2019-09-17 16:15:39 -04:00
Hierophect 7c713b9e3b Fix crash related to ADC timeout 2019-09-17 15:45:15 -04:00
Hierophect 168823e096 Retract pin resets, revert to HAL, QOL changes 2019-09-17 15:07:08 -04:00
Scott Shawcroft fc90c942f5
Add custom CPX build for display support 2019-09-17 10:40:07 -07:00
Scott Shawcroft b5a9ed3688
Merge pull request #2161 from jepler/nrf-analog-reference
nRF: Change analog reference voltage
2019-09-17 09:41:52 -07:00
jepler dffedd7c86 samd: peripherals: update submodule reference 2019-09-16 21:48:31 -05:00
jepler d39c85e3f5 nRF: Change analog reference to VCC(/4)
@ladyada says:
"having this be adjustable (reference) would be ideal cause you can get
absolute voltages but for now, VCC/4 + 4x matches every other chip :)"

... and indeed doing it this way happens to give a much more steady
reading when using a VCC-referenced resistance, and so many of the simple
things you'd wire up are actually VCC-referenced anyway.
2019-09-16 21:43:07 -05:00
Jeff Epler c56186da8c nRF: Change analog reference voltage
Datasheet reading explains one reason why readings might have been 10% low.
2019-09-16 18:35:48 -05:00
Scott Shawcroft aa9b57fc81
Merge pull request #2154 from arturo182/master
Add support for Serpente boards
2019-09-16 09:20:17 -07:00
arturo182 e1679acaec
Set as small build regardless of language 2019-09-16 11:51:46 +02:00
jepler 61698eb5d8 AnalogOut / AudioOut: Copy settings from Arduino
Make changes in asf4_conf even though I think in these cases the
"peripherals" submodule is running the show.

Arduino clocks the DAC at 12MHz but uses the CCTRL setting for
clocking < 1.2MHz (100kSPS).

A fresh clock (6) is allocated for the new 12MHz clock.  This matches
the Arduino value, though not the GCLK index.

Modify other settings to more closely resemble Arduino.

In AudioOut, actually clock the waveform data from the timer we set up
for this purpose.

This gives good waveforms when setting AnalogOut full-scale in a loop,
but the rise/fall of waveforms that come from AudioOut are still erratic.
Weirdly, if AudioOut limits its range even slightly (e.g., to 1000..64000)
then the erratic

Note that this will require https://github.com/adafruit/samd-peripherals/pull/26
to be accepted for the submodule update here to work.
2019-09-15 11:30:49 -05:00
Kattni Rembor c94310411b Update board def, enable touchio 2019-09-14 21:19:35 -04:00
arturo182 28bb901d1e Add support for Serpente boards 2019-09-14 16:06:28 +02:00
Hierophect 78de4b70ed Implemented working I2C on F412. 2019-09-13 14:00:53 -04:00
Scott Shawcroft 3422e53bd1
Merge pull request #2147 from jepler/issue2146
nRF: PWMOut: At deinit, make pin available again
2019-09-13 09:32:28 -07:00
Hierophect d96aa8dac4 Merge branch 'stm32-analogio' into stm32-peripherals 2019-09-13 12:10:54 -04:00
Hierophect f5cb2cc14e First pass at I2C pin authentication 2019-09-12 19:00:02 -04:00
Hierophect e445e7930e Merge remote-tracking branch 'upstream/master' into stm32-pin-remap 2019-09-12 16:00:41 -04:00
Hierophect 6b6178613d WIP 2019-09-12 16:00:01 -04:00
Hierophect 1fda6d4a48 Merge branch 'stm32-pin-remap' into stm32-peripherals 2019-09-12 14:27:24 -04:00
Hierophect 55eb8dcfa0 ADC unit select, reset bugfix 2019-09-12 13:47:01 -04:00
jepler df48312ce7 nRF: PWMOut: At deinit, make pin available again
Closes: #2146
2019-09-11 20:09:38 -05:00
Hierophect 57ce381bcd disable claim pin for debug 2019-09-11 17:26:33 -04:00
Hierophect 4b3796a303 Merge remote-tracking branch 'upstream/master' into stm32-analogio 2019-09-11 14:12:01 -04:00
Hierophect a59a8e7a19 Merge branch 'stm32-pin-remap' into stm32-analogio 2019-09-11 14:11:47 -04:00
Hierophect 6e007f4e8c text fixes 2019-09-11 14:09:57 -04:00
Hierophect d888922db6 minor text fix 2019-09-11 13:55:48 -04:00
Hierophect 3d2a4d4165 Merge branch 'stm32-f412-tinyusb' into stm32-analogio 2019-09-11 13:47:20 -04:00
Hierophect 9e25d9a9be Support for F412 2019-09-11 13:45:36 -04:00
Hierophect 9f8c8c6504 Compiler level bit packing 2019-09-11 13:12:49 -04:00
Hierophect 37248037d7 Alternative implementation via HAL for readability comparison 2019-09-11 11:35:37 -04:00
Hierophect 99c3cab00f text fixes 2019-09-10 19:51:26 -04:00
Hierophect 500b21c236 First pass at full LL implementation 2019-09-10 19:48:24 -04:00
Hierophect 49b04f4b77 Minor text fix 2019-09-10 17:52:07 -04:00
Scott Shawcroft 89fed709ad
Merge pull request #2127 from jepler/nrf-i2s
nrf: Add i2s audio output
2019-09-10 11:00:26 -07:00
Dan Halbert b8200d7295 fix atmel-samd filesystem_tick'ing; clear_temp_status() should check for status indicator in use 2019-09-09 23:17:52 -04:00
jepler 7b9dfc9952 nrf: i2s: tune audio buffering
.. based on some tasks I found that caused stuttering:

 # Test SD and printing
 while True: os.listdir('.')

 # Test bulk I/O
 while True: len(open('somefile.wav', 'rb').read())

Each of these tasks *WAS* worse and I am improving them in a separate
PR by adding RUN_BACKGROUND_TASKS to them.
2019-09-09 20:13:12 -05:00
jepler c66f5a8536 nrf: i2s: rewrite without 'goto' 2019-09-09 19:26:18 -05:00
jepler fe9605a6a3 nrf: i2s: Comment this slightly tricksy code 2019-09-09 19:25:52 -05:00
Hierophect c438468a82 Updated VID and PID 2019-09-09 17:05:18 -04:00
Hierophect d8251ae4ab Include full descriptor list 2019-09-09 15:01:04 -04:00
Hierophect 129615a724 text fixes 2019-09-09 11:58:27 -04:00
Hierophect 426ddb356e Add support for F412 via latest tinyusb update 2019-09-09 11:42:55 -04:00
jepler ccf08aa3df nrf: I2SOut: deal more gracefully with errors from the sample 2019-09-08 21:59:07 -05:00
jepler e890bc8efe nrf: Makefile: sensible flags for debugging
This enables the highest level of debug symbols, and all optimizations
except lto that do NOT interfere with debugging, in the view of the gcc
maintainers.
2019-09-08 21:07:00 -05:00
jepler f38ee42874 nrf: Add i2s audio output
Testing performed: I used a Particle Xenon with a HDA1334 I2S DAC.
I played a variety of mono 16-bit samples at 11025 and 22050Hz nominal
bit rates.  With this setup, all the 11025Hz samples sound good.
I tested play, pause,  and loop functionality.

During some runs with 22050Hz samples, there were glitches.  However,
these may have only occurred during runs where I had set breakpoints
and watchpoints in gdb.

I also tested with a MAX98357A I2S amplifier.  On this device, everything
sounded "scratchy".  I was powering it from 5V and the 5V rail seemed
steady, so I don't have an explanation for this.  However, I haven't
tried it with a SAMD board.
2019-09-08 16:46:35 -05:00
Dan Halbert bd7b03fc7e
Merge pull request #2124 from dhalbert/cpb-fixes
Fix Circuit Playground Bluefruit pin errors
2019-09-08 12:07:16 -04:00
Hierophect 0d2e9c3762 WIP 2019-09-07 15:54:16 -04:00
Hierophect beb40a62a7 Fix missed shift replacement 2019-09-07 13:19:50 -04:00
Hierophect 642f4535f4 text fixes 2019-09-06 19:44:57 -04:00
Hierophect 4490fb196d delete analogio for now 2019-09-06 19:42:03 -04:00
Hierophect a3ed5ec27b Add latest USB support 2019-09-06 18:02:57 -04:00
Hierophect 589b502bfc Merge branch 'master' into stm32-analogio 2019-09-06 17:55:33 -04:00
Hierophect a932d2c4a1 Minor fixes 2019-09-06 17:40:45 -04:00
Hierophect 8c0be5fbe2 Pack pin numbers, add ADC to pin structure, support DigitalIO 2019-09-06 17:30:52 -04:00
Dan Halbert cf6fbcbf2d
Merge pull request #2123 from hierophect/stm32-flashstub-fix
Fix stm32f412zg compile warning
2019-09-06 14:56:24 -04:00
Dan Halbert 3c22c690c8 CPB A1 pin mapping wrong; remove A7 2019-09-06 14:17:11 -04:00
Hierophect 3156ee1acb Re-apply warning as error 2019-09-06 11:28:57 -04:00
Hierophect ba45f98073 Add basic analogio files 2019-09-06 11:26:20 -04:00
Scott Shawcroft 8066810abb
Merge pull request #2091 from jepler/samd-dma-tracking
Samd dma tracking
2019-09-05 11:27:59 -07:00
Scott Shawcroft c5caacafdd
Merge pull request #2100 from pewpew-game/pewpew_m4
Add support for PewPew M4 board
2019-09-05 11:26:47 -07:00
Radomir Dopieralski d50ed3b6e7 Add support for PewPew M4 board 2019-09-05 10:50:33 +02:00
Dan Halbert f3af2a6fb7 Merge remote-tracking branch 'adafruit/master' into choose-usb-devices-xac 2019-09-04 21:56:13 -04:00
Dan Halbert 195de97c67 use only one endpoint pair for MSC except on SAMD21 2019-09-04 21:45:16 -04:00
Dan Halbert fca440fb66
Merge pull request #2113 from tannewt/displayio_hidden
Add .hidden to TileGrid and Group
2019-09-04 15:48:00 -04:00
Scott Shawcroft 321b57a5d2
Merge pull request #2080 from sommersoft/mixer_voice
Add audiocore.MixerVoice
2019-09-04 12:46:59 -07:00
Dan Halbert b46c8dcc62
Merge pull request #2065 from hierophect/f411re-feature-buildout
F411re feature buildout
2019-09-04 15:45:54 -04:00
Scott Shawcroft 7951646b9a
Disable bitbangio on uGame10 2019-09-04 11:49:47 -07:00
Hierophect 479b047618 Reverted descriptor changes pending HID restructuring 2019-09-04 13:58:18 -04:00
sommersoft b1c3d47413 Merge branch 'master' of https://github.com/adafruit/circuitpython into mixer_voice 2019-09-01 21:16:12 -05:00
sommersoft c4d6f4f536 disable 'audiomixer' for all M0 boards 2019-09-01 17:39:20 -05:00
Scott Shawcroft b954b2f5df
Merge pull request #2092 from dhalbert/bleio-api-revamp
Bleio attribute api revamp
2019-08-29 21:48:31 -07:00
sommersoft 8120f5cdad Merge branch 'master' of https://github.com/adafruit/circuitpython into mixer_voice 2019-08-29 22:14:53 -05:00
Dan Halbert 7a64af9280 rename bleio module to _bleio 2019-08-29 18:44:27 -04:00
Dan Halbert b11b7916fd address minor issues: typos, make translate, and sphinx 2019-08-29 17:58:21 -04:00
Scott Shawcroft 9730d4aa1c
Merge remote-tracking branch 'adafruit/4.1.x' into hallowing_m4_5.x 2019-08-29 14:38:16 -07:00
Scott Shawcroft 0aa5507c4c
add additional pin aliases 2019-08-29 13:41:28 -07:00
Scott Shawcroft 84839de56f
Hallowing M4 2019-08-29 10:34:46 -07:00
Dan Halbert f17059b10b another API rework: less abstraction leakage 2019-08-28 23:15:22 -04:00
jepler 30a9346373 samd: audio_dma: Track channel allocation
Previously, we depended on allocated channels to always be
"dma_channel_enabled".  However, (A) sometimes, many operations
would take place between find_free_audio_dma_channel and
audio_dma_enable_channel, and (B) some debugging I did led me to believe
that "dma_channel_enabled" would become false when the hardware ended
a scheduled DMA transaction, but while a CP object would still think it
owned the DMA channel.

((B) is not documented in the datasheet and I am not 100% convinced that
my debugging session was not simply missing where we were disabling the
channel, but in either case, it shows a need to directly track allocated
separately from enabled)

Therefore,
 * Add audio_dma_{allocate,free}_channel.
   * audio_dma_free_channel implies audio_dma_disable_channel
   * track via a new array audio_dma_allocated[]
 * clear all allocated flags on soft-reboot
 * Convert find_free_audio_dma_channel to audio_dma_allocate_channel
   * use audio_dma_allocated[] instead of dma_channel_enabled() to check
     availability
 * remove find_free_audio_dma_channel
 * For each one, find a matching audio_dma_disable_channel to convert
   to audio_dma_free_channel

Closes: #2058
2019-08-28 17:00:22 -05:00
jepler 0b00787b4d samd: AudioOut: ensure stopped before deinit
.. otherwise, a sequence like
    >>> a = audioio.AudioOut(board.A0)
    >>> a.play(sample, loop=True)
    >>> a.deinit()
would potentially leave related DMA channel(s) active.
2019-08-28 16:43:55 -05:00
Dan Halbert 19c59b41ed bleio: API change to create and connect related objects simulatenously: no orphan bleio objects 2019-08-28 16:15:09 -04:00
Dan Halbert a72bcab0fd Merge remote-tracking branch 'adafruit/master' into bleio-api-revamp 2019-08-28 16:09:18 -04:00
Scott Shawcroft 0876d5c4ad
Disable bitbangio on Itsy M0
Also, switch CIRCUITPY_BITBANG_APA102 to makefile setting so it can alter included files
2019-08-27 15:21:47 -07:00
Dan Halbert 0364f1dc85 remove some debugging prints 2019-08-26 08:17:59 -04:00
Dan Halbert 76446f634b BLE HID WIP: works everywhere except iOS; fixed a bunch of bugs; pretend bonding 2019-08-25 21:38:13 -04:00
sommersoft 696117b048 disable audiomixer on boards it doesn't fit on 2019-08-25 14:53:34 -05:00
sommersoft 2e4b687ba5 enable audiomixer on nrf 2019-08-25 07:32:48 -05:00
Scott Shawcroft 7324b70a7c
Rework based on Dan's review 2019-08-23 15:27:21 -07:00
Scott Shawcroft b992ca80e7
Rejigger builds to fit under 50 minute limit 2019-08-22 20:29:58 -07:00
Scott Shawcroft 72e7ffa324
More cleanup 2019-08-22 16:16:09 -07:00
Scott Shawcroft fd8050b369
Turn off features to make room for ePaper 2019-08-22 15:19:45 -07:00
Scott Shawcroft 9993a99906
Add initial Monster M4SK build 2019-08-22 14:24:32 -07:00
Scott Shawcroft 2497cbe186
Fix nrf builds 2019-08-22 14:23:33 -07:00
Scott Shawcroft 3a98de1236
Add reset() to display busses to detect whether it works 2019-08-22 14:23:33 -07:00
Scott Shawcroft 36a23e0fe3
Rework refresh API and factor common display stuff out
NOT TESTED! Just compiles

Fixes #1691
2019-08-22 14:23:27 -07:00
Scott Shawcroft c247e7df9c
Begin refresh rework. 2019-08-22 14:08:33 -07:00
Benny Meisels d37dd4d758
Updated ParallelBus implementation in nrf port 2019-08-22 14:08:33 -07:00
Scott Shawcroft 70680d5b22
EPaper displays work mostly. 2019-08-22 14:08:33 -07:00
Dan Halbert 7cc15e56c8 make translate 2019-08-22 15:20:23 -04:00
Dan Halbert 18f441ae35
Merge pull request #2083 from dhalbert/no-32khz-xtal
Fix CPBlue LFCLKSRC; CPB has no status neopixel
2019-08-22 13:14:40 -04:00
Dan Halbert 0b7291d767 fix default crystal value; fix include order 2019-08-22 09:01:05 -04:00
Scott Shawcroft 6aa311aabd
Merge pull request #2027 from dastels/displayio_fill_area
To displayio.Display: expose fill_area and add a property for rotation
2019-08-21 23:48:21 -07:00
Dan Halbert acc6df4959 merge similar fix in 2019-08-22 01:29:34 -04:00
Dan Halbert d94023e9b3 Fix CPBlue LFCLKSRC; CPB has no status neopixel 2019-08-22 01:04:00 -04:00
Scott Shawcroft 524fa82092
Merge pull request #2081 from dhalbert/rotaryio-pin-check-fix
typo in IncrementalEncoder.c
2019-08-21 13:02:06 -07:00
Scott Shawcroft 389e7cc35d
Merge pull request #2072 from bmeisels/nrf-no-crystal-support
Add support for nrf boards that don't have an external crystal
2019-08-21 13:01:26 -07:00
Dave Astels d547d59cba Merge remote-tracking branch 'adafruit/master' into displayio_fill_area 2019-08-21 15:02:51 -04:00
Dave Astels dcf36db263 Make room 2019-08-21 14:46:10 -04:00
Benny Meisels fe2ec6c887 Add support for nrf boards that don't have an external crystal 2019-08-20 23:30:21 +03:00
Dan Halbert 6e3a6d0ac5 typo in IncrementalEncoder.c 2019-08-20 16:23:17 -04:00
Dan Halbert e00696de7f merge from upstream and make translate 2019-08-20 13:06:23 -04:00
Dan Halbert 44b28d1187 update tinyusb to 00c440cb 2019-08-19 19:42:45 -04:00
Dan Halbert e3dc5e3a66 Merge remote-tracking branch 'adafruit/master' into run-background-tasks
Restore dependencies indicated by indentation in circuitpy_mpconfig.h.
2019-08-19 12:41:20 -04:00
Hierophect e490e6361f Add warnings, cosmetic fixes, remove vestigial modules 2019-08-19 10:47:18 -04:00
Jeff Epler 26a05d01dc Merge remote-tracking branch 'origin/master' into nrf-pdm-audioin 2019-08-18 21:30:14 -05:00
Hierophect 95411a62b3 Cosmetic fixes 2019-08-18 19:08:27 -04:00
Jeff Epler 912fd7759d nrf: PDMIn: Implement
So far, this supports only 16kHz and 16-bit samples with a fixed gain.
This is enough to support the basic functionality of e.g., sensing
ambient audio levels.
2019-08-18 15:58:04 -05:00
Jeff Epler 79f8a85786 nrf: stub out audiobusio.PDMIn, audiobusio.I2SOut 2019-08-18 15:55:57 -05:00
Dan Halbert 3f7321af00
Merge pull request #2031 from jepler/nrf-lto
Enable link-time optimization for nrf targets
2019-08-18 12:35:26 -04:00
Dan Halbert e2a4c76a37 make nrf touchio be generic: now available for SAMD51 too 2019-08-18 08:44:10 -04:00
Scott Shawcroft 85d7398476
Merge pull request #2066 from dhalbert/ble-pairing
BLE: more features
2019-08-16 14:50:00 -07:00
Dan Halbert 630c92392a address review comments; avoid calling common_hal_bleio_device... routines from shared-bindings 2019-08-16 15:18:53 -04:00
Hierophect 7dbf1a8caa text fixes 2019-08-15 17:56:15 -04:00
Hierophect 1f42ce5f40 QOL fixes, compatibility fixes, attribution 2019-08-15 17:45:40 -04:00
Hierophect bc7ba33892 Add uid fetch, revert USB hacks 2019-08-15 16:35:01 -04:00
Hierophect a9d3ad86e5 Fix flash size, add filesystem disable flag 2019-08-15 15:55:33 -04:00
Hierophect 0fdb5a032f Text fixes 2019-08-15 15:12:50 -04:00
Hierophect 620d3d14dd Add conditional endpoints to descriptor script 2019-08-15 13:41:51 -04:00
Hierophect 1539dca7f0 Add reset support, minor fixes 2019-08-14 13:14:42 -04:00
Dan Halbert 5877bd6036 CPblue initial definition 2019-08-13 22:12:36 -04:00
Hierophect c4c55fffb1 Fixed remaining issues with flash organization and writing 2019-08-13 18:05:40 -04:00
Scott Shawcroft 583392a5c6
Merge pull request #2046 from brentru/add-pyportal-titano
Add PyPortal Titano
2019-08-12 16:01:10 -07:00
Jeff Epler 11dd3a260e nrf: Use RUN_BACKGROUND_TASKS 2019-08-11 08:53:02 -05:00
Jeff Epler d9ee2d28a0 atmel-samd: Use RUN_BACKGROUND_TASKS 2019-08-11 08:53:02 -05:00
Hierophect 300dc68955 Further non-functional flash changes 2019-08-10 18:00:09 -04:00
Hierophect 294d6dc867 Add flash functions and setup, fix msc descriptor bug 2019-08-09 19:58:54 -04:00
brentru 5a8846d33c remove cruft from prv board 2019-08-08 15:12:01 -04:00
brentru f87f48ab88 adding pyportal titano board definition 2019-08-08 14:56:28 -04:00
Chris Osterwood d5658860aa Added pin definition for battery change enable. Pin used to switch in a 10 ohm resistor during Hub reset & strapping. 2019-08-08 14:39:50 -04:00
Chris Osterwood fb2712410e Merge branch 'master' into capablerobot-usbhub 2019-08-08 14:14:23 -04:00
Dan Halbert 1570ef2dd4 specifying attribute length; fix up value setting 2019-08-07 23:49:09 -04:00
Jeff Epler 33b949abfa samd: audio_dma, audio_background: Gate with CIRCUITPY_ defines
Some ports which actually don't have audioio or audiobusio were still
calling into audio_dma_background().  This wasn't an error until
the assignment to audio_dma_state in audio_dma_stop was added, though
it's not clear why.
2019-08-07 21:29:24 -05:00
Jeff Epler 500d1bb168 samd: audio_dma.c: Remove exceptions, just return early
These were most useful debugging, but because this code can be reached
"outside of the VM", it's not actually permitted to throw exceptions here.
2019-08-07 20:20:36 -05:00
brentru 1d4700cb6c add pindefs for tft and tft control 2019-08-07 18:29:20 -04:00
Hierophect c375a5d37f Add pin and module support for F411 2019-08-07 18:12:13 -04:00
brentru 8f6eac98f3 add defs for pyportal titano 2019-08-07 17:10:31 -04:00
Dan Halbert d047b73a9c fix newly-introduced bugs; UART client/server working again 2019-08-07 11:10:21 -04:00
Jeff Epler 39c64bf83c samd: audio_dma_stop: don't free invalid channel
audio_dma_stop can be reached twice in normal usage of AudioOut.

This may bear further investigation, but stop it here, by making the
function check for a previously freed channel number.  This also prevents
the event channel from being disabled twice.

The first stop location is from audio_dma_get_playing, when the buffers
are exhausted; the second is from common_hal_audioio_audioout_stop when
checking the 'playing' flag.
2019-08-06 22:00:31 -05:00
Jeff Epler 8b717955ba samd: audio_dma: wrap dma_{en,dis}able_channel and add error checking
It turns out the "disable" error will fire in practice, we'll fix that
next.
2019-08-06 22:00:31 -05:00
Dan Halbert d74c8b9425 WIP: more Descriptor work; refactor gattc/gatts read/write 2019-08-06 22:55:25 -04:00
Jeff Epler 6253f11503 samd: audio_dma_stop: Clear out audio_dma_state[]
As identified in #1908, when both AudioOut and PDMIn are used, hard
locks can occur.  Because audio_dma_stop didn't clear audio_dma_state[],
a future call to audio_dma_load_next_block could occur using a DMA
object which belongs to PDMIn.

I believe that this Closes: #1908 though perhaps it is still not the full
story.

Testing performed: Loaded a sketch similar to the one on #1908 that
tends to reproduce the bug within ~30s.  Ran for >300s without hard
lock.  HOWEVER, while my cpx is no longer hard locking, it occasionally
(<1 / 200s) announces
    Code done running. Waiting for reload.
(and does so), even though my main loop is surrounded by a 'while True:'
condition, so there are still gremlins nearby.
2019-08-06 21:34:21 -05:00
Dan Halbert 243334da75 Merge remote-tracking branch 'adafruit/master' into ble-pairing 2019-08-05 23:06:24 -04:00
Scott Shawcroft 59efce3035
Merge pull request #2039 from dhalbert/metro-52840
Metro nRF52840 rev A defn; remove '#define FEATHER52840' from mpconfigboard.h
2019-08-05 18:48:36 -07:00
Scott Shawcroft b675a27e16
Merge pull request #2000 from jepler/nrf-pwm-audio
Implement PWM audio out for the nrf port
2019-08-05 17:26:27 -07:00
Dan Halbert c56566179a Metro nRF52840 rev A defn; also remove '#define FEATHER52840' from mpconfigboard.h files 2019-08-05 18:10:27 -04:00
Dan Halbert b67d04a5b1 Merge remote-tracking branch 'adafruit/master' into ble-pairing 2019-08-05 16:35:44 -04:00
Hierophect 2489c09b44 Merge i2c implementation 2019-08-04 17:24:07 -04:00
Hierophect a635d46b1a Fix merge related issues 2019-08-04 17:19:38 -04:00
Hierophect 0c43bae01d Merge branch 'master' into f411re-feature-buildout 2019-08-04 16:37:49 -04:00
Hierophect 268cf0a3cc Quick fix for incorrect MCU package type 2019-08-04 16:31:03 -04:00
Jeff Epler 77bc1ba03e nrf: PWMAudioOut: Remove the need to wait in "pause"
The original formulation was because I saw the need to avoid a transition
from playing to stopped exactly when a resume was taking place.  However,
@tannewt was concerned about this pause causing trouble, because it could
be relatively lengthy (several ms even in a typical case).

After reflection, I've convinced myself that updating the registers
in this order in resume avoids a window where a "stopped" event can
be missed as long as the shortcut is updated first.

Testing re-performed: pause/resume testing of looped RawSample and
WaveFile audio sources.
2019-08-03 08:19:25 -05:00
Jeff Epler 4bae29b925 nrf: enable link-time optimization
Testing performed: installed freshly built .uf2 on a Particle Xenon.
Checked that circuitpython still starts.
Checked that the size of all .uf2 files for nrf builds are plausible.

Aside from memory savings, the performance of Python code (pystone)
increased by about +14%.

However, this adds about 12-16 seconds to each nrf build.

Timings & Sizes (build system: i5-3320M, -j5 parallelism on 4 threads):

Before:
$ make -j5 BOARD=particle_xenon
765004 bytes free in flash out of 1048576 bytes ( 1024.0 kb ).
232076 bytes free in ram for stack out of 245760 bytes ( 240.0 kb ).
68.54user 11.83system 0:34.34elapsed 234%CPU
pystones before: 570

After:
$ make -j5 BOARD=particle_xenon
804284 bytes free in flash out of 1048576 bytes ( 1024.0 kb ).
232072 bytes free in ram for stack out of 245760 bytes ( 240.0 kb ).
71.06user 11.77system 0:46.91elapsed 176%CPU
pystones after: 650

Timings on travis:

Before:
Build feather_nrf52840_express for pl took 55.79s and succeeded
Build feather_nrf52840_express for zh_Latn_pinyin took 3.18s and succeeded

After:
Build feather_nrf52840_express for pl took 62.72s and succeeded
Build feather_nrf52840_express for zh_Latn_pinyin took 19.10s

Closes: #1396
2019-08-02 20:59:47 -05:00
Dan Halbert 7ce3776b80 WIP: rework of Characteristic properties; enhance Descriptor; not tested 2019-08-02 17:57:31 -04:00
Jeff Epler 28b7cbfca6 nrf: Mark interrupt vectors as used 2019-08-02 07:53:35 -05:00
jepler 34e2bab96a nrf: Implement RUNMODE_BOOTLOADER and RUNMODE_SAFE_MODE 2019-08-01 18:53:07 -05:00
Jeff Epler 76f65ac694 Implement play/pause
.. and also incidentally fix a problem where a RawSample could only
be looped 131070 times.
2019-07-31 20:02:56 -05:00
Scott Shawcroft eee759455a
Merge pull request #2018 from keith-packard/snekboard
Add board support for keithp.com SnekBoard
2019-07-31 16:38:51 -07:00
Jeff Epler b0f7c7bc4c Merge remote-tracking branch 'origin/master' into nrf-pwm-audio 2019-07-31 16:32:54 -05:00
Hierophect 06d53ef8a7 minor debugging changes 2019-07-31 17:06:44 -04:00
Hierophect e2fc55f829 Add baseline HAL I2C support 2019-07-31 14:58:55 -04:00
Dan Halbert ee518b9141 Merge remote-tracking branch 'adafruit/master' into ble-pairing 2019-07-31 11:22:48 -04:00
Dan Halbert 91d791afd0 cleanup adapter.address; add uniquish suffix to BLE device name 2019-07-31 00:30:24 -04:00
Scott Shawcroft 366fdcce18
Merge pull request #2011 from tannewt/ssd1322
Add knobs for SSD1322 and two displayio fixes.
2019-07-30 14:15:37 -07:00
Scott Shawcroft 9dd56b1566
Merge branch 'master' into snekboard 2019-07-30 14:12:08 -07:00
Dan Halbert 83129b8c63 BLE: peripheral client pairing (not yet bonding); fix time doc formatting 2019-07-30 14:26:26 -04:00
wallarug ecfffac3a8
Delete samd51x19-bootloader-external-flash-crystalless.ld 2019-07-30 19:48:35 +10:00
wallarug ff6ae1aefb
Update mpconfigboard.mk to use standard linker file 2019-07-30 19:13:33 +10:00
Jeff Epler b72352949b PWM audio: Rename AudioOut -> PWMAudioOut, _audioio_ -> _audiopwmio_ 2019-07-29 18:39:00 -04:00
Keith Packard c6e4ddc88a boards/snekboard: Delete SPI object reference
Snekboard does not expose any pins for SPI to the user, so delete
the SPI object reference as that won't work.

Signed-off-by: Keith Packard <keithp@keithp.com>
2019-07-29 13:45:52 -07:00
Keith Packard 9a37c8a4b3 boards/snekboard: Add pin aliases for UART and I2C
Allow users to use TX/RX and SDA/SCL names.

Signed-off-by: Keith Packard <keithp@keithp.com>
2019-07-29 13:45:06 -07:00
Keith Packard 4387ecfdfb Update snekboard PID to official value
Snekboard has been assigned the following PIDs:

	PID 0x004D  # bootloader
	PID 0x804D  # arduino
	PID 0x804E  # circuitpython

Signed-off-by: Keith Packard <keithp@keithp.com>
2019-07-29 13:15:18 -07:00
Keith Packard 326df70ac2 Fix snekboard names
Manufacturer -- keithp.com
Product -- snekboard

Signed-off-by: Keith Packard <keithp@keithp.com>
2019-07-29 13:15:18 -07:00
Keith Packard 56f710f64f Add board support for keithp.com SnekBoard
This is another SAMDG2118A design with built-in 9V motor controllers
that are designed to be used with Lego PowerFunctions devices.

Signed-off-by: Keith Packard <keithp@keithp.com>
2019-07-29 13:14:37 -07:00
Hierophect 6c7723905c Add temp status LEDs 2019-07-29 11:21:35 -04:00
wallarug dc1eb73ee7
Merge branch 'master' into wallarug-robohat 2019-07-29 21:53:49 +10:00
wallarug 8974c7e843
Added BUTTON to pins.c 2019-07-29 16:37:53 +10:00
wallarug 9e0bea405d
Added BUTTON to pins.c 2019-07-29 16:37:21 +10:00
wallarug 4d30efdc2a
Updated pins.c for GROVE. 2019-07-29 16:29:48 +10:00
wallarug 8838e25cb2
Update pins.c 2019-07-29 16:28:35 +10:00
sommersoft 8eab946c5b
Merge pull request #2003 from C47D/travis_check_new_boards
Add check to travis to make sure new boards are built, fix #1886
2019-07-28 22:41:59 -05:00
Dan Halbert 28ca05ccdc allow discovery from central or peripheral 2019-07-27 13:22:15 -04:00
wallarug 0f30070d58 updated naming schema to match other boards 2019-07-27 17:44:42 +10:00
wallarug b06fa48735 updated a few files 2019-07-27 16:59:07 +10:00
wallarug 9c57f52d1e updated pins.c for robohat 2019-07-27 16:56:03 +10:00
wallarug 24e84adc6d further robohat cleanups 2019-07-27 16:38:47 +10:00
wallarug e2b83e2dd9 minor changes robohat d21 2019-07-27 16:36:13 +10:00
wallarug 36008de2ed added custom ld file for samd51 no crystal, ext flash 2019-07-27 16:29:30 +10:00
wallarug eda3423e35 updated to v1.7 board (samd51) 2019-07-27 16:27:41 +10:00
Hierophect 343d5aa0ac Delete redundant file 2019-07-26 16:48:23 -04:00
Hierophect 90b1701b6c Add CDC REPL access 2019-07-26 14:06:27 -04:00
Jeff Epler a183425e00 ports/nrf: Implement audioio.AudioOut using PWM
This implements AudioOut, with known caveats:
 * pause/resume are not yet implemented (this is just a bug)
 * at best, the sample fidelity is 8 bits (this is a hardware limitation)

Testing performed:

My test system is a Particle Xenon with a PAM8302 op-amp
https://www.adafruit.com/product/2130 and 8-ohm speaker.  There's no
analog filtering between the Xenon's PWM pin and the "A+" input of
the amplifier; the "A-" pin is disconnected.  It is powered from
VUSB.

I used pin D4, which is *NOT* listed as a low-speed-only pin, but
the code does NOT switch the pin to high drive.  This is related to
an open issue for general inability to set drive level for pins
being used by a "special function" on nrf:
https://github.com/adafruit/circuitpython/issues/1270

Nothing about the code I've written should limit the usable pins.

All samples I played were 16-bit, generally monophonic at 11025Hz
and 22050Hz from the Debian LibreOffice package.
2019-07-26 07:57:11 -05:00
Jeff Epler 2bc704fe07 ports/nrf: factor out routines for allocating, freeing pwm channels 2019-07-26 07:52:37 -05:00
Scott Shawcroft c61c874a6d
Reduce feather_m0_supersized build size
Make it match feather_m0_express
2019-07-26 00:31:41 -07:00
Scott Shawcroft a87094e01f
Turn off GC opt to save space on Trinket Haxpress 2019-07-25 22:56:46 -07:00
Scott Shawcroft 4e7de436b4
Update constructors of boards with displays 2019-07-25 22:48:11 -07:00
Scott Shawcroft d99d3bd471
Merge pull request #2010 from jepler/audiocore
audiocore: Factor from audioio
2019-07-25 13:52:30 -07:00
Jeff Epler 6b44e40ee8 audiocore: Factor from audioio
When nrf pwm audio is introduced, it will be called `audiopwmio`.  To
enable code sharing with the existing (dac-based) `audioio`, factor
the sample and mixer types to `audiocore`.

INCOMPATIBLE CHANGE: Now, `Mixer`, `RawSample` and `WaveFile` must
be imported from `audiocore`, not `audioio`.
2019-07-25 06:44:26 -05:00
Scott Shawcroft 8ec2d6ce49
Merge pull request #2007 from hierophect/F4xx-port-setup
Add STM32 Discovery F412ZG and F411RE support
2019-07-24 18:49:48 -07:00
Hierophect 295afaaf6c Update SystemCoreClock macro 2019-07-24 16:31:25 -04:00
Hierophect 981398406c Implement working (if useless) USB on F411 2019-07-24 16:23:35 -04:00
Hierophect 21f1ae51df Merge in PR edits 2019-07-24 15:02:26 -04:00
Hierophect d66c9590af Merge tinyusb changes from upstream 2019-07-24 14:54:22 -04:00
Hierophect a63df51893 Requested changes, general cleanup 2019-07-24 14:21:27 -04:00
hathach c921f6637f update tinyusb lib to 0.5.x 2019-07-24 16:46:31 +07:00
Hierophect 267468834d Pin down some TUSB issues 2019-07-23 19:40:26 -04:00
Hierophect 0dee1a1646 Setup for changes 2019-07-23 17:04:03 -04:00
Hierophect f9b5a9af4e Merge branch 'F3xx-port-setup' into f411re-tinyusb 2019-07-23 15:17:18 -04:00
Hierophect 5cfde7b6ea Switch to submodule for cube files 2019-07-23 14:37:30 -04:00
Hierophect 9c1487cff6 Python doc generator fixes 2019-07-23 13:48:59 -04:00
Dan Halbert 82ab998cd5
Merge pull request #1998 from tannewt/monocolor
Add support for grayscale displays
2019-07-22 22:30:28 -04:00
Scott Shawcroft 7cb2aa2d62
Merge pull request #1986 from AnthonyDiGirolamo/patch-1
Update Arch Linux ARM compiler installation instructions
2019-07-22 19:29:53 -07:00
Hierophect a3673cc79b Set up for new tinyusb integration. Not yet functional. 2019-07-22 17:16:33 -04:00
Hierophect 58630a844a Add feature conditionals and clean up 2019-07-22 12:58:28 -04:00
Tavish Naruka e4d92a3aad
Fix incorrect preprocessor define NRFX_TIMER3/4
Should be NRF_TIMER3 and NRF_TIMER4
2019-07-22 20:07:05 +05:30
Scott Shawcroft 1d1b8703b6
Review feedback including NO_BRIGHTNESS_COMMAND macro 2019-07-19 16:11:13 -07:00
Scott Shawcroft b9b9ef227f
Turn off bitbanging on Hallowing to save code space. 2019-07-19 16:10:33 -07:00
Scott Shawcroft cdfc169ab6
Correct typo in line meant to turn off frequencyio on M0 which saves 2k code space. 2019-07-19 16:10:32 -07:00
Scott Shawcroft 6797ec6ed3
Add support for grayscale displays that are < 8 bit depth.
This also improves Palette so it stores the original RGB888 colors.

Lastly, it adds I2CDisplay as a display bus to talk over I2C. Particularly
useful for the SSD1306.

Fixes #1828. Fixes #1956
2019-07-19 16:06:11 -07:00
Hierophect 10b9ca5a92 pin selection cleanup, tinyUSB update 2019-07-19 15:09:45 -04:00
Scott Shawcroft a98bfa628e
Merge pull request #2002 from ntavish/blip_improvements
Blip improvements
2019-07-19 10:52:08 -07:00
Tavish Naruka 724ce4acba enable libraries needed by BlipBoy Shield 2019-07-19 18:48:08 +05:30
Hierophect 734012aa8b Makefile cleanup 2019-07-18 17:55:57 -04:00
Hierophect 755b86e38b Deinit-capable USB on 411 2019-07-18 17:17:46 -04:00
Hierophect 43e8a4110f Add missing files for DigitalIO 2019-07-17 14:18:01 -04:00
Hierophect 45e73c414a fix gitignore 2019-07-17 14:14:03 -04:00
Hierophect c588cc6db0 first pass of DigitalIO 2019-07-17 14:07:33 -04:00
Dan Halbert 364ee62d10 Address review comments. 2019-07-16 19:53:36 -04:00
Dan Halbert 1cf8a3e8d8 Merge remote-tracking branch 'adafruit/master' into ble-scanner 2019-07-11 18:42:16 -04:00
Hierophect f31a0d9cf5 Serial REPL support 2019-07-11 13:41:10 -04:00
siddacious d12e1a8d74
Merge pull request #1990 from kattni/pyruler
Adding PyRuler to CircuitPython.
2019-07-10 12:28:43 -07:00
Hierophect a0e6975b9d Add some usb reference material, non functional 2019-07-10 14:26:57 -04:00
Kattni Rembor 582acdaa0a Requested changes. 2019-07-09 16:12:24 -04:00
Kattni Rembor d905958db1 Adding PyRuler to CircuitPython. 2019-07-09 16:02:39 -04:00
Scott Shawcroft 6fad383367
Merge pull request #1925 from C47D/rgb_status
Initial support for RGB led as Status indicator, fixes #1382
2019-07-09 10:31:34 -07:00
Hierophect 7742a97c22 Add STM32F412-DISCO support, cleanup 2019-07-09 13:03:22 -04:00
Scott Shawcroft f0cf9a4e75
Merge pull request #1988 from jandjstudios/datum
Add support for boards in the datum series.
2019-07-09 09:33:13 -07:00
Dan Halbert 6a001786a9 merge from master 2019-07-09 08:58:49 -04:00
Dan Halbert 118b26b335 UARTClient now works both directions 2019-07-09 00:21:46 -04:00
Scott Shawcroft f4a64a2e80
Merge pull request #1989 from rce1086/master
Added conditional compilation around selection of TX pad candidates
2019-07-08 14:07:04 -07:00
Carl Elkins 64507207da Added conditional compilation around selection of TX pad candidates
Original code was correct for SAMD21
New code for SAMD51 only permits pad-0 for TX
2019-07-08 02:08:39 +01:00
Dan Halbert 09ddff8df1 WIP: Need descriptors for Central CCCD discovery; not done yet 2019-07-07 00:07:47 -04:00
jandjstudios 46b7575550 Initial commit to support boards in the datum series. 2019-07-06 13:41:03 -07:00
Scott Shawcroft 5610e05b8c
Fix up nrf so that it is initialized properly. Also, do not reset
it's pins.
2019-07-06 12:48:16 -07:00
iot49 4c72a3991e updated samd and esp8266 ports 2019-07-05 10:01:51 -07:00
Anthony DiGirolamo 55f15e3c05
Update Arch Linux ARM compiler installation instructions
- Add copy-pasteable Arch Linux `arm-none-eabi-gcc` install line similar to Ubuntu example
- Add `arm-none-eabi-newlib` as a required package for Arch
- Reformat Ubuntu and Arch install code-blocks to catch the eye for the impatient

Arch Linux changed their packaging for [arm-none-eabi-gcc](https://www.archlinux.org/packages/community/x86_64/arm-none-eabi-gcc/) by creating [arm-none-eabi-newlib](https://www.archlinux.org/packages/community/any/arm-none-eabi-newlib/) as an optional package. Without it users will get errors about missing header files like:

```
In file included from asf4/samd51/include/samd51j19a.h:49,
                 from asf4/samd51/include/sam.h:38,
                 from ./mpconfigport.h:31,
                 from ../../py/mpconfig.h:45,
                 from ../../py/emitnx64.c:3:
/usr/lib/gcc/arm-none-eabi/9.1.0/include/stdint.h:9:16: fatal error: stdint.h: No such file or directory
    9 | # include_next <stdint.h>
      |                ^~~~~~~~~~
compilation terminated.
```
2019-07-04 11:14:50 -07:00
Chris Osterwood 97e7fea517 Change pin names to be more descriptive 2019-07-04 13:23:57 -04:00
Chris Osterwood 539502c891 Remove pin reservations. Prevents used from inside of CircuitPython code 2019-07-04 13:22:36 -04:00
iot49 6e5d70fa19 changed type of receiver_buffer_size to uint16_t 2019-07-03 12:02:01 -07:00
Dan Halbert bf8a35b2f8 WIP: CharacteristicBuffer for Central; not working: need to set remote Characteristic Service 2019-07-02 22:34:54 -04:00
Hierophect 040acc3a32 remove dependencies for stable build 2019-07-01 19:47:10 -04:00
Radomir Dopieralski e45eac5016 Switch the terminal font for ugame10
I designed this really tiny, minimalist font for use on very small
displays. On uGame it lets one see the whole text that CircuitPython
prints on boot. The characters are 4x6 pixels each, and they are
optimized for legibility (large x-height, right angles, blocky shapes).

It might make sense to also use that font in other boards.
2019-07-01 23:05:07 +02:00
Dan Halbert 6ea01ea9b0 Central is connecting; characteristics can be read and written 2019-06-29 00:20:06 -04:00
Hierophect 94a2eff05c remove build, fix link issues) 2019-06-28 19:22:23 -04:00
Hierophect 04a9bc0d35 case changes 2019-06-28 16:45:07 -04:00
Hierophect b93f93f174 name change but actually 2019-06-28 16:34:27 -04:00
Hierophect caed59ec64 name change 2019-06-28 16:21:13 -04:00
Hierophect 16ba035ba7 first commit, very crude 2019-06-28 15:36:08 -04:00
Scott Shawcroft 0cce7fcaa3
Merge remote-tracking branch 'adafruit/4.0.x' into merge_in_402 2019-06-27 14:06:26 -07:00
Scott Shawcroft fe507db45f
Shrink pIRkey build down.
Rollback HID to save string space and remove board mapping for
default buses that don't exist.
2019-06-26 16:49:23 -07:00
Scott Shawcroft d3adfde22a
Merge pull request #1968 from adafruit/4.0.x
Merge in nrf neopixel fix
2019-06-25 11:35:58 -07:00
Dan Halbert 140904ec84 getting Scanner to work 2019-06-22 22:10:15 -04:00
Dan Halbert 4881e1ff55 WIP: Central compiles; now will test 2019-06-21 18:04:04 -04:00
Dan Halbert 23bd861c9a nrf: fix neopixel_write pwm buf size calc 2019-06-20 18:02:14 -04:00
Dan Halbert 24ac1fdcab WIP: backup only; not compiled 2019-06-19 21:54:28 -04:00
Scott Shawcroft 7ad229ec27
Merge pull request #1958 from tannewt/pygamer_advanced
Add PyGamer Advance and fix Joystick pins
2019-06-19 12:32:36 -07:00
Dan Halbert a1b5d800f3 Update copyrights; get ready for Central 2019-06-19 10:42:36 -04:00
Dan Halbert 35b9191857 Don't operate directly on bleio objects in shared-bindings: use common_hal
routines instead. Changes made but not yet tested.
2019-06-18 23:46:20 -04:00
Scott Shawcroft 5e5252ced0
Merge pull request #1955 from pewpew-game/pygamer-stage
Add support for PyGamer to Stage library
2019-06-18 18:23:08 -07:00
Scott Shawcroft 352bf7eaf5
Add PyGamer Advance and fix Joystick pins 2019-06-18 12:22:20 -07:00
Radomir Dopieralski 5803245009 Add support for PyGamer to Stage library 2019-06-18 19:05:51 +02:00
Dan Halbert 1356819de1 Handle None for BLE name; fix ScanEntry bug; compile issue 2019-06-17 23:16:40 -04:00
Scott Shawcroft 2dddccb99e
Update board inits for new api. 2019-06-17 18:03:30 -07:00
brentru ea2c068e11 COLMOD is 1 param, remove CASET/RASET in CircuitPython 2019-06-17 11:20:25 -04:00
brentru 207dc885a6 removed incorrect gamma code, looks better now 2019-06-14 16:34:30 -04:00
brentru 4092294e7c tft working init. sequence, still undersaturated 2019-06-14 16:17:05 -04:00
brentru 0bc74172a2 Add pybadge airlift, sans-tft 2019-06-14 14:46:19 -04:00
Dan Halbert bed6d43a76 merge from upstream; WIP redo Address; no more AddressType 2019-06-13 21:55:07 -04:00
Scott Shawcroft 0b1f605a9b
Turn off gc opt for more M0 boards 2019-06-12 13:20:21 -07:00
Scott Shawcroft a91ad05774
Change to one lto partition for ultimate optimization. 2019-06-12 11:37:46 -07:00
Scott Shawcroft eb21fc3e31
Add partial display update support.
Different operations to the display tree have different costs. Be
aware of these costs when optimizing your code.
* Changing tiles indices in a TileGrid will update an area
covering them all.
* Changing a palette will refresh every object that references it.
* Moving a TileGrid will update both where it was and where it moved to.
* Adding something to a Group will refresh each individual area it
covers.
* Removing things from a Group will refresh one area that covers all
previous locations. (Not separate areas like add.)
* Setting a new top level Group will refresh the entire display.

Only TileGrid moves are optimized for overlap. All other overlaps
cause sending of duplicate pixels.

This also adds flip_x, flip_y and transpose_xy to TileGrid. They
change the direction of the pixels but not the location.

Fixes #1169. Fixes #1705. Fixes #1923.
2019-06-12 11:32:39 -07:00
Dan Halbert ba1b36a800 Uncomment vm.c SUPEROPT (debugging typo); trim a few builds 2019-06-12 13:09:09 -04:00
Dan Halbert 1bb4fccc3b Turn off SUPEROPT on gc.c instead of trying to squueze inline limit so much; reorganize mpconfigboard.mk files 2019-06-12 11:08:22 -04:00
Dan Halbert 0b3f29780a shrink a bunch of builds to fit 2019-06-11 18:46:06 -04:00
Dan Halbert 4fc189b60c Merge latest 4.0.x fixes into master 2019-06-11 16:16:29 -04:00
shazz 9c49af0597 Added pin for SD CS 2019-06-08 12:04:27 -04:00
Dan Halbert 62de2506e4 Include display objects in gc. 2019-06-06 17:49:32 -04:00
Dan Halbert 1905d90eaa Make advertising data buffers long-lived 2019-06-05 20:08:53 -04:00
Elvis Pfützenreuter 1da8d4b4da Add PS/2 support -- ps2io module 2019-06-04 18:05:46 -03:00
Tavish Naruka 4a7122d354 boards: add support for Electronut labs Blip
Signed-off-by: Tavish Naruka <tavishnaruka@gmail.com>
2019-06-05 00:49:29 +05:30
Dan Halbert 613e12f99f Replace Broadcaster with enhanced Peripheral 2019-06-03 20:40:05 -04:00
Dan Halbert 63ac37946d 1. Remove advertising data construction in C: it's all done in Python now
2. Add scan response capability to advertising.
2019-06-02 23:21:30 -04:00
Dan Halbert bcda5e133d
Merge pull request #1903 from tannewt/get_area
Rework the pixel computation to use areas
2019-05-31 21:27:06 -04:00
Dan Halbert 12f1d9d30c fix advertisement length check; add Service.secondary attribute 2019-05-31 18:03:05 -04:00
Dan Halbert 4e85c1ef91 Implement forced clean builds for boards so designated.
Mark boards that set CFLAGS_INLINE_LIMIT for particular langauges as needing clean builds.

Fixes #1910.
2019-05-24 15:32:24 -04:00
Dan Halbert 6cec81bcb5 Need to enable ble before scanning 2019-05-23 22:05:16 -04:00
Dan Halbert e84f3b1c6a make crickit cpx pinyin build fit 2019-05-23 21:22:50 -04:00
Dan Halbert 1639354e5f Scanner working, but not very first time 2019-05-23 16:07:54 -04:00
Scott Shawcroft 3fad7de8db
Rework the pixel computation to use areas
This changes the displayio pixel computation from per-pixel to
per-area. This is precursor work to updating portions of the screen
(#1169). It should provide mild speedups because bounds checks are
done once per area rather than once per pixel. Filling by area also
allows TileGrid to maintain a row-associative fill pattern even when
the display's refresh is orthogonal to it.
2019-05-21 17:41:06 -07:00
Dan Halbert 0199d9810b Make pinyin fit on cpx 2019-05-21 15:18:56 -04:00
Dan Halbert 008bbc944c correct USB PIDs for several boards 2019-05-16 10:54:15 -04:00
Scott Shawcroft f3ab820fc2
Merge pull request #1884 from CapableRobot/capablerobot-usbhub
Added board definition for Capable Robot Programmable USB Hub
2019-05-14 13:42:51 -07:00
Chris Osterwood a0497553fc Fix to prevent critical pins from being reset when MCU restarts or enters REPL 2019-05-14 15:23:33 -04:00
Chris Osterwood 420dbafa9d Added board definition for Capable Robot Programmable USB Hub 2019-05-14 13:28:24 -04:00
sabas1080 9f082ba5cb Fix pin lost 2019-05-13 10:18:53 -05:00
Scott Shawcroft 36e2faf8d2
Merge pull request #1873 from ElectronicCats/escornabot_makech
Add Escornabot Makech of Electronic Cats
2019-05-10 12:39:58 -07:00
sabas1080 d174ce8821 Update pins define 2019-05-10 13:34:02 -05:00
Scott Shawcroft 67007282c9
Tighten down inlining on the pIRkey 2019-05-10 11:19:27 -07:00
Scott Shawcroft 80a752da87
Merge latest adafruit/master in. 2019-05-10 10:09:56 -07:00
Scott Shawcroft 9feb844b7e
Fix crash in internal filesystem on nrf
Fixes #1842
2019-05-08 15:43:18 -07:00
sabas1080 27ea1df710 Init escornabot 2019-05-08 15:48:17 -05:00
Scott Shawcroft 9ba8191a04
Merge pull request #1855 from dhalbert/frequencyin-no-double-arith
avoid double float arithmetic in FrequencyIn
2019-05-08 14:40:18 -04:00
sabas1080 08a170388d fix VID and PID inverted 2019-05-08 10:09:49 -05:00
Dan Halbert f59dadbb4f avoid double float arithmetic in FrequencyIn 2019-05-07 00:25:22 -04:00
ladyada ed8e6e8f45 re-add i2s (its J not G!) 2019-04-29 20:30:53 -04:00
ladyada fa3a52bc1e similar to pybadge, has pin defs for joystick - comes up with filesys and display so good enough to start hacking :) 2019-04-29 20:29:48 -04:00
wallarug aa3c28787c removed problem libraries from frozen build. 2019-04-28 00:09:13 +10:00
wallarug b4a70daf17 updated lots 2019-04-27 22:35:12 +10:00
wallarug cd4aaa13a3 added robohatmm1 board defs. 2019-04-25 21:13:41 +10:00
ladyada 9b593cd154 update periph submodule 2019-04-23 18:20:13 -04:00
ladyada a5697470e1 fix up pybadge for final release board (swap backlite and reset) 2019-04-23 16:43:20 -04:00
Dan Halbert 15b7946fc4 Off-by-one error for usage of MAX_TX_IN_PROGRESS 2019-04-22 22:07:48 -04:00
Scott Shawcroft f548305c07
Merge pull request #1815 from dhalbert/stop-flicker
Turn off auto_brightness if brightness is set
2019-04-18 15:48:39 -07:00
Dan Halbert 0113e0970e add Display.__init__() args for brightness and auto_brightness 2019-04-18 15:59:16 -04:00
Scott Shawcroft f7c7904e2b
Correct call structure for throwing errors 2019-04-17 13:54:29 -07:00
Carlos 71c4f100de
Update translations and use same error for PDM too 2019-04-17 11:28:43 -07:00
Carlos 5865b28592
[audiobusio-I2SOut] Fix translation error 2019-04-17 11:12:38 -07:00
Carlos 65cc366280
[audiobusio-I2SOut] Fix compilation error by using mp_raise_ValueError_varg 2019-04-17 11:12:38 -07:00
Carlos 9f63125345
Fix I2SOut message, fix #1765 2019-04-17 11:12:38 -07:00
Scott Shawcroft 713a38d1a2
Merge pull request #1754 from dmazzella/dmazzella-patch-1
add support for USER_C_MODULES
2019-04-17 09:41:20 -07:00
Dan Halbert 6684a3c723
Merge pull request #1778 from pewpew-game/gamepad-shift
Add GamePadShift for handling shift-register-based buttons
2019-04-17 10:22:24 -04:00
Scott Shawcroft 608bf5076b
Merge pull request #1804 from ITACAInnovation/master
Merging updates
2019-04-16 13:54:40 -07:00
Dan Halbert c0ce820974
Merge pull request #1803 from nickzoic/circuitpython-nickzoic-1042-nrf-nvm-bytearray-3
Circuitpython nickzoic 1042 nrf nvm bytearray 3
2019-04-16 15:05:18 -04:00
Scott Shawcroft 2fa1bf4351
Merge remote-tracking branch 'adafruit/master' into gamepadshift 2019-04-16 11:23:41 -07:00
Scott Shawcroft 55782901d0
Actually call gamepadshift_tick 2019-04-16 11:15:42 -07:00
Scott Shawcroft f58446e937
Merge branch 'master' into master 2019-04-16 10:32:38 -07:00
Scott Shawcroft 7822d013cd
Merge pull request #1798 from ntavish/papyr
Add support for Electronut Labs Papyr.
2019-04-16 10:13:19 -07:00
Scott Shawcroft 0e03a321e4
Fully split gamepadshift from gamepad 2019-04-16 10:11:54 -07:00
ITACA Innovation S.R.L 2d303213ed Add files via upload 2019-04-16 16:50:54 +02:00
ITACA Innovation S.R.L 4f5a7ffe46 Updates: VID&PID, pinout
Changed VID & PID to new ones.
Changed the layout accordingly to the prototype version.
2019-04-16 16:45:47 +02:00
Tavish Naruka 32a0855d18 Add support for Electronut Labs Papyr.
Signed-off-by: Tavish Naruka <tavishnaruka@gmail.com>
2019-04-16 12:59:42 +05:30
Nick Moore 9c42a72275 Fix up single-byte access to nvm.ByteArray 2019-04-16 14:53:44 +10:00
Nick Moore 83dad37562 Fixups for adafruit/circuitpython#1042 2019-04-16 14:53:44 +10:00
Nick Moore 02dd32da60 Make some space for NVM adafruit/circuitpython#1042 2019-04-16 14:53:44 +10:00
Nick Moore f22c01a05e Switch supervisor/internal_flash to use new nrf_nvm_safe_flash_page_write
adafruit/circuitpython#1610
2019-04-16 14:53:44 +10:00
Nick Moore 66e8ceafad switch nvm.ByteArray to use new nrf_nvm_safe_flash_page_write
adafruit/circuitpython#1610
2019-04-16 14:53:44 +10:00
Nick Moore fd83cf2048 Add a peripherals/nrf/nvm.c to wrap flash page writes safely 2019-04-16 14:53:44 +10:00
Nick Moore d0e5af3b09 Working flash pages for nvm.ByteArray adafruit/circuitpython#1042
import microcontroller

def dump(n = microcontroller.nvm):
    for i in range(0,len(n)):
        print ("%02X " % n[i], end="")
        if i % 16 == 15: print('')

microcontroller.nvm[0:4096] = bytes([1,2,3,4,5,6,7,8]) * 512
microcontroller.nvm[4096:8192] = bytes([16,17,18,19]) * 1024
microcontroller.nvm[4090:4101] = b'thisisatest'
microcontroller.nvm[100:105] = b'hello'
microcontroller.nvm[8000:8007] = b'goodbye'
dump()
2019-04-16 14:53:44 +10:00
Nick Moore 531cf7eb4c switch CIRCUITPY_NVM on! 2019-04-16 14:53:44 +10:00
Nick Moore 933500c448 nvm.ByteArray reads & writes but no sensible erase yet adafruit/circuitpython#1042 2019-04-16 14:53:44 +10:00
Nick Moore df89156f2f Start on nRF nvm.ByteArray adafruit/circuitpython#1042 (doesn't do anything yet) 2019-04-16 14:53:44 +10:00
Scott Shawcroft 254d0a53ac
Revert "nrf nvm: touchups to nickzoic PR #1768" 2019-04-15 18:50:33 -07:00
Scott Shawcroft c927e6b938
Split GamePadShift from GamePad to save space on most boards. 2019-04-15 15:40:06 -07:00
Scott Shawcroft 22889ca29a
Merge pull request #1790 from pewpew-game/pybadge-stage
Enable _stage module and freeze stage library on the PyBadge
2019-04-15 14:25:50 -07:00
Scott Shawcroft 7573da03f6
Merge pull request #1779 from dhalbert/nrf-nvm-2
nrf nvm: touchups to nickzoic PR #1768
2019-04-15 14:23:35 -07:00
Radomir Dopieralski ade6bd8185 Enable _stage module and freeze stage library on the PyBadge 2019-04-15 14:38:02 +02:00
siddacious 5135ee52d9 Changing to support for CP32-M4 wrover 2019-04-14 19:45:44 -07:00
Radomir Dopieralski eeef5359f9 Merge branch 'master' into gamepad-shift 2019-04-13 11:54:25 +02:00
Dan Halbert f8473f4a39
Merge pull request #1788 from tannewt/pinyin
Add Chinese (Pinyin) and slim down boards so it fits
2019-04-12 20:36:59 -04:00
Scott Shawcroft defc6dceb0
Slim down feather m0 express 2019-04-12 16:18:08 -07:00
Scott Shawcroft 796fc3f5ab
Update font location and shrink a bunch of builds 2019-04-12 15:25:48 -07:00
Scott Shawcroft c064deaaf5
Merge pull request #1785 from pewpew-game/ugame-displayio
Enable displayio for the ugame10 board
2019-04-12 13:26:51 -07:00
Scott Shawcroft 7161038d6b
Turn off `displayio` because it is a satellite 2019-04-12 11:54:32 -07:00
Radomir Dopieralski 0599286e32 Use never_reset in ugame10 2019-04-12 20:45:52 +02:00
Radomir Dopieralski 947662415c Disable gamepad for feather_m0_express_crickit 2019-04-12 20:43:29 +02:00
Max Holliday 41499ac315
No I2S on G19 2019-04-12 10:06:17 -07:00
Max Holliday e85b6fb83c
adding kicksat-sprite board
See https://github.com/RoboticExplorationLab/sprite for details
2019-04-12 10:06:17 -07:00
Radomir Dopieralski dabbded622 Got back to using Display object in the Stage library 2019-04-12 11:19:19 +02:00
Radomir Dopieralski c3136f4f32 Enable displayio for uGame10 board
Also, make the _stage library work with the fourwire bus, to re-use the
display.
2019-04-12 01:10:57 +02:00
Radomir Dopieralski 5603d0cd38 Configure the TFT spi to 24MHz by default
That is (slightly) out of spec for the display, but it works reliably.
2019-04-11 15:47:26 +02:00
Dan Halbert 864910559b fix subscripting 2019-04-10 21:41:55 -04:00
Scott Shawcroft 9f4f689879
Free up space in Itsy Bitsy M0 by limiting inline. 2019-04-10 14:09:14 -07:00
Dan Halbert 3618461f9b Merge remote-tracking branch 'adafruit/master' into circuitpython-nickzoic-1042-nrf-nvm-bytearray-2 2019-04-10 14:09:26 -04:00
ladyada 894c1e9590 Rev D/E (beta) hardware! 2019-04-10 08:37:20 -04:00
Dan Halbert 203d795bd6
Merge pull request #1772 from tannewt/fix_gc_never_free
Check that a never free pointer is on the heap.
2019-04-10 08:26:37 -04:00
Scott Shawcroft 44e32506ed
Don't make Pins for those not connected on Itsy M0 2019-04-10 00:06:59 -07:00
Dan Halbert c0c809ad4b Fix version skew for bast_pro_mini build 2019-04-09 22:52:53 -04:00
Scott Shawcroft ac2fd2fa80
Merge pull request #1773 from dhalbert/no-recursive-background-tasks
Don't let a background task call run_background_tasks()
2019-04-09 18:39:28 -07:00
Dan Halbert d8763debf5
shrink sparkfun_lumidrive build 2019-04-09 21:23:28 -04:00
Dan Halbert fc9cb038c4
Merge pull request #1715 from ElectronicCats/master
Added Bast Pro Mini M0
2019-04-09 20:53:05 -04:00
Dan Halbert d633928a16 Don't let a background task call run_background_tasks() 2019-04-09 20:23:01 -04:00
Scott Shawcroft 129e725599
Merge branch 'master' into master 2019-04-09 14:40:36 -07:00
Scott Shawcroft 0e98eeb63b
Turn off touchio on pIRkey and add back usb midi.
USB MIDI was still being compiled in mostly anyway. There is no
place to touch on the board so touchio is useless.
2019-04-09 12:36:14 -07:00
Scott Shawcroft ef23ffe584
Turn off audiobusio on Hallowing to free rom
It is about 5kb and the pins aren't broken out for it anyway.
2019-04-09 12:01:00 -07:00
Nick Moore 18908c21f7 Fixups for adafruit/circuitpython#1042 2019-04-09 12:53:11 +10:00
Nick Moore fdaff00c78 Make some space for NVM adafruit/circuitpython#1042 2019-04-09 10:56:53 +10:00
Nick Moore bcb87ffd6c Switch supervisor/internal_flash to use new nrf_nvm_safe_flash_page_write
adafruit/circuitpython#1610
2019-04-09 10:56:53 +10:00
Nick Moore bc92441803 switch nvm.ByteArray to use new nrf_nvm_safe_flash_page_write
adafruit/circuitpython#1610
2019-04-09 10:55:39 +10:00
Nick Moore cd69db7770 Add a peripherals/nrf/nvm.c to wrap flash page writes safely 2019-04-09 10:55:39 +10:00
Nick Moore 8e7fee2246 Working flash pages for nvm.ByteArray adafruit/circuitpython#1042
import microcontroller

def dump(n = microcontroller.nvm):
    for i in range(0,len(n)):
        print ("%02X " % n[i], end="")
        if i % 16 == 15: print('')

microcontroller.nvm[0:4096] = bytes([1,2,3,4,5,6,7,8]) * 512
microcontroller.nvm[4096:8192] = bytes([16,17,18,19]) * 1024
microcontroller.nvm[4090:4101] = b'thisisatest'
microcontroller.nvm[100:105] = b'hello'
microcontroller.nvm[8000:8007] = b'goodbye'
dump()
2019-04-09 10:55:39 +10:00
Nick Moore 592bd0140a switch CIRCUITPY_NVM on! 2019-04-09 10:55:15 +10:00
Nick Moore 492431a694 nvm.ByteArray reads & writes but no sensible erase yet adafruit/circuitpython#1042 2019-04-09 10:54:11 +10:00
Nick Moore f8e5e2da64 Start on nRF nvm.ByteArray adafruit/circuitpython#1042 (doesn't do anything yet) 2019-04-09 10:54:11 +10:00
Scott Shawcroft de48e4b262
Merge remote-tracking branch 'adafruit/master' into fix_cpx_display 2019-04-08 17:15:08 -07:00
Scott Shawcroft 0f003ac5b8
Reorganize board busses into shared-bindings and shared-module. 2019-04-08 16:58:50 -07:00
Scott Shawcroft 049b9ca094
Remove terse TODOs 2019-04-08 14:46:45 -07:00
Radomir Dopieralski 8323721232 Stop hard-coding SPI frequency in FourWire
Instead remember and use the frequency, polarity and phase that was
set when the bus was first created.
2019-04-06 15:15:29 +02:00
Scott Shawcroft 7686f93ef4
Fix crash when getting board.SPI outside the VM
If one of the default pins was already in use it would crash.

The internal API has been refined to allow us to get the value
without causing an init of the singleton.

Fixes #1753
2019-04-05 19:06:37 -07:00
Damiano Mazzella 8428fa0f64
Update Makefile 2019-04-05 21:42:29 +02:00
Melissa LeBlanc-Williams 36b10104d6 Adjusted inline limit to fix Hallowing PL build 2019-04-05 12:17:16 -07:00
Melissa LeBlanc-Williams 7872a33f8b Merge branch 'master' of https://github.com/adafruit/circuitpython into ssd1331 2019-04-05 11:10:02 -07:00
Dan Halbert 50d72ed993 shrink sparkfun_lumidrive to make room for large translations 2019-04-05 11:23:47 -04:00
Melissa LeBlanc-Williams af3d809980 Updated boards files with displays 2019-04-04 23:18:15 -07:00
Dan Halbert b5bc8b3fc2
Merge pull request #1745 from dhalbert/rotaryio-typo-eic-refactor
ROTARYIO_MODULE typo; EIC interrupt handler refactor
2019-04-04 23:53:46 -04:00
Dan Halbert 682e83a63c Turn off rotaryio on pewpew10 so de_DE will fit 2019-04-04 20:28:32 -04:00
Dan Halbert 29df5930dd #if EIC handlers; turn off rotaryio in pirkey for space reasons 2019-04-04 16:48:38 -04:00
Dan Halbert 2528b67e77 update samd-peripherals 2019-04-04 16:36:14 -04:00
Dan Halbert cdd77b5972 remove CPy-specific EIC handlers from samd-peripherals 2019-04-04 16:04:11 -04:00
Scott Shawcroft ceb6f2e4fc
Rework flash flush so it preserves the cache
This should make filesystem writes quicker and cause less heap
churn.
2019-04-03 18:28:27 -07:00
Sabas 19c6b8aa0c
Merge branch 'master' into master 2019-04-02 23:15:56 -06:00