Commit Graph

499 Commits

Author SHA1 Message Date
Scott Shawcroft
be6b49c712
Add back internal flash header and slim it down. 2018-11-09 00:27:18 -08:00
Scott Shawcroft
9d91111b1b
Move atmel-samd to tinyusb and support nRF flash.
This started while adding USB MIDI support (and descriptor support is
in this change.) When seeing that I'd have to implement the MIDI class
logic twice, once for atmel-samd and once for nrf, I decided to refactor
the USB stack so its shared across ports. This has led to a number of
changes that remove items from the ports folder and move them into
supervisor.

Furthermore, we had external SPI flash support for nrf pending so I
factored out the connection between the usb stack and the flash API as
well. This PR also includes the QSPI support for nRF.
2018-11-08 17:25:30 -08:00
Scott Shawcroft
6aca9762c9
Merge pull request #1313 from siddacious/master
adding support for the CP32-M4
2018-11-04 11:26:14 -08:00
Dan Halbert
a15ed0b912 Fix Trellis M4 DotStar pin assignments. 2018-11-04 00:07:42 -04:00
ATMakersBill
bd4188a092 adding changes to mpconfigboard.mk to reduce memory usage on CPX per @danh 2018-11-03 14:42:27 -04:00
ATMakersBill
4f2f571536 Adding the serial_bytes_available() method to the 3.x branch 2018-11-03 14:01:30 -04:00
Dan Halbert
4dfba2f8ac put .frozen before /lib in sys.path; update frozen libraries 2018-11-01 19:57:10 -04:00
Bryan Siepert
844b674a1e adding support for the CP32-M4 2018-11-01 09:42:48 -07:00
Bryan Siepert
dc82fd556b Updating devices.h to add new devices, fix a typo and address #1239 2018-10-31 01:54:09 -07:00
Dan Halbert
bd79c0c0de
Merge pull request #1295 from ElectronicCats/mkr1300
Add board MKR1300 by Arduino
2018-10-26 20:15:20 -04:00
Benjamin Shockley
aec39fd027 Updated to new D21G18 MCU
Updated MIni SAM M0 to new D21G18A MCU to match layout/design of M4
2018-10-26 12:09:59 -05:00
Nick Moore
bbf8334166 Fix build without network code 2018-10-25 13:14:27 +11:00
Nick Moore
f6482699a0 Merge remote-tracking branch 'origin/master' into circuitpython/nickzoic/703-wiznet-5500-native 2018-10-25 12:20:50 +11:00
Scott Shawcroft
dc9d338612
Merge pull request #1167 from notro/cpython_stdlib
Support CPython standard library
2018-10-24 12:57:41 -07:00
Noralf Trønnes
d882ff6328 samd51: Set stack size to 8k
This is necessary in order to run unittest.
Heavy tests like those in the stdlib need 12-14k.
2018-10-24 19:33:01 +02:00
Noralf Trønnes
1b86e5fc83 samd51: Enable functionality to support CPython stdlib
This enables various things in order to support the CPython standard library.

MICROPY_PY_BUILTINS_NOTIMPLEMENTED:
Support NotImplemented for easy conversion of stdlib.
It doesn't do fallbacks though, only raises TypeError.

MICROPY_PY_COLLECTIONS_ORDEREDDICT:
collections.OrderedDict

MICROPY_PY_FUNCTION_ATTRS:
Support function.__name__ for use as key in the function attribute workaround.

MICROPY_PY_IO:
uio module: BytesIO, FileIO, StringIO, TextIOWrapper
Also add 'io' alias.

MICROPY_PY_REVERSE_SPECIAL_METHODS:
Support the __r*__ special methods.

MICROPY_PY_SYS_EXC_INFO:
sys.exc_info() used by unittest when collecting exceptions.

MICROPY_CPYTHON_COMPAT:
Some of the things it adds:

>>> object.__init__
<function>
>>> object.__new__
<function>
>>> object.__class__
<class 'type'>
>>> object().__class__
<class 'object'>
>>> object.__name__
'object'

>>> 'Hello'.encode()
b'Hello'
>>> b'Hello'.decode()
'Hello'

Named tuple field names from string:
namedtuple('Point', 'x y')
2018-10-24 19:33:01 +02:00
Noralf Trønnes
cec9a69a15 samd51: Make errno, os, and time module aliases
Add alias for uerrno so the user doesn't have to know about the
CircuitPython special names for the module.

Make os and time weak modules (aliases) making it possible to add
functionality to those modules written in python.

Example:
'import os' will now look in the path for an os module and if not found
it will import the builtin module. An os module written in python will
import the builtin module through its name prefixed with an underscore
(_os) following the C module naming practice in CPython.

Also right align the macro values to increase readability making it
easier to compare the values for samd21 and samd51. Even the longest
macro from py/mpconfig.h will fit with this alignment.
2018-10-24 19:31:53 +02:00
sabas1080
f0d7073a12 Add Arduino MKR1300 2018-10-22 19:38:24 -05:00
Benjamin Shockley
5d190a5615
Update mpconfigboard.h
Corrected NVM size.
2018-10-19 21:18:19 -05:00
Benjamin Shockley
548e6893cd
Create pins.c 2018-10-19 21:16:21 -05:00
Benjamin Shockley
88fd5d7daa
Create mpconfigboard.mk 2018-10-19 21:15:50 -05:00
Benjamin Shockley
1593f4e3a8
Create mpconfigboard.h 2018-10-19 21:14:46 -05:00
Benjamin Shockley
6d974593c7
Create board.c 2018-10-19 20:52:23 -05:00
Scott Shawcroft
b436666e85
Merge pull request #1272 from sajattack/battery
add pin def for BAT
2018-10-17 12:15:38 -07:00
Dan Halbert
298756eef8
Merge pull request #1280 from tannewt/precondition_dac
Ramp values to and from a default value while active.
2018-10-17 15:00:11 -04:00
Scott Shawcroft
4eb1fe18e5
Tweaks from feedback:
* default_value is now quiescent_value
* Use step = -step format for sign switch
* Add note about analogout_reset being empty
2018-10-17 11:31:08 -07:00
Scott Shawcroft
c209165d43
Ramp values to and from a default value while active.
This reduces the popping sound on initial playback of an audio
sample.

The M4 DAC has a pop on startup that cannot be prevented. It also
does not allow readback so current values of the DAC are ignored.

Fixes #1090
2018-10-16 16:23:29 -07:00
Paul Sajna
089e2cc099 remove BATTERY from itsybitsy 2018-10-16 14:55:21 -07:00
Nick Moore
a15f3361aa add mechanism for timer ticks in NICs 2018-10-16 23:09:25 +11:00
sabas1080
c103a05579 Add board Meow Meow by Electronic Cats
https://github.com/ElectronicCats/MeowMeow
2018-10-15 19:17:04 -05:00
Paul Sajna
1447df3fa6 change BAT to BATTERY 2018-10-14 23:34:49 -07:00
Paul Sajna
f1028b5f96 add pin def for BAT 2018-10-13 15:53:22 -07:00
Nick Moore
aab28748bb Merge remote-tracking branch 'origin/master' into circuitpython/nickzoic/703-wiznet-5500-native 2018-10-11 14:19:10 +11:00
Nick Moore
8d75c3d339 Changed to only build wiznet for {feather|metro}_m[04]_express 2018-10-11 13:42:26 +11:00
Scott Shawcroft
b5e26130d7
Support rev D for the Trellis M4 Express 2018-10-10 11:21:35 -07:00
Scott Shawcroft
df80ad8e6e
Merge pull request #1193 from ATMakersBill/master
Add supervisor.runtime.serial_bytes_available so that input() can be used without blocking.
2018-10-09 23:58:43 -07:00
ATMakersBill
9f94712ad1 replacing change to input() with separate method to check for USB Serial input 2018-10-09 18:37:52 -04:00
Nick Moore
a60700b1c5 Get DHCP working ... 2018-10-09 16:28:30 +11:00
Nick Moore
6e624b9c6a Split wiznet.WIZNET5K off into its own file 2018-10-09 13:05:58 +11:00
Scott Shawcroft
2b0356c61f
Disable framebuf by default on express builds. 2018-10-05 15:19:09 -07:00
Scott Shawcroft
76008ce304
Introduce audioio.Mixer which can mix multiple audio samples
to produce a single sample.

Only works with 16 bit samples on the M4.

Fixes #987
2018-10-05 15:12:23 -07:00
Benjamin Shockley
091c5106ef
Cleanup Files 2018-10-04 21:26:28 -05:00
Benjamin Shockley
62d316bffb
W25Q16JV IQ and IM
Indicate the differences between IQ and IM with the 2 MiB version of the W25Q chip.
2018-10-04 21:26:05 -05:00
Benjamin Shockley
2ef29c2cec
Changed FLASH DEVICE
Changed the flash device to W25Q16JV_IM - the type actually used.
2018-10-04 21:14:07 -05:00
Benjamin Shockley
f6b9f101dc
Added W25Q16JV_IM
Added new flash module: W25Q16JV_IM
2018-10-04 21:13:05 -05:00
Nick Moore
15b59bee1b change initialization method + mod_network names 2018-10-04 22:31:47 +10:00
Nick Moore
f9bda0ff93 Makefile & mpconfigport for atmel-samd with wiznet 2018-10-04 22:02:25 +10:00
Scott Shawcroft
3c743f2664
Update Trellis M4 Express for Rev C 2018-10-02 11:56:09 -07:00
Benjamin Shockley
1f3a3fe5a0 Merge remote-tracking branch 'upstream/master' 2018-10-01 12:28:42 -05:00
Benjamin Shockley
862d5a06fd
Create pins.c 2018-09-29 23:33:07 -05:00
Benjamin Shockley
8e52d922cc
Create mpconfigboard.mk 2018-09-29 23:26:15 -05:00
Benjamin Shockley
5ab4f09b2f
Create mpconfigboard.h 2018-09-29 23:24:32 -05:00
Benjamin Shockley
4acca8b90b
Update board.c 2018-09-29 23:17:24 -05:00
Benjamin Shockley
13364f90fe
Create board.c 2018-09-29 23:16:07 -05:00
Scott Shawcroft
a9d094ab74
Fix translations 2018-09-21 12:24:04 -04:00
Scott Shawcroft
e5274959f2
Merge remote-tracking branch 'adafruit/3.x' into merge_3x 2018-09-21 12:22:26 -04:00
Scott Shawcroft
3f380ded6b
Merge pull request #1197 from dhalbert/3.x-master
3.x master
2018-09-19 09:58:52 -07:00
Dan Halbert
8172a2ca9d
Merge pull request #1189 from arofarn/add-BATTERY-pin
Add VOLTAGE_MONITOR pin to feather boards pins
2018-09-18 21:47:09 -04:00
Scott Shawcroft
655f223916
Clock the SAMD21 much faster so it can actually convert at its max
sample rate of 350ksps.

Also added an error check of sample rate.

Fixes #1196
2018-09-18 15:29:46 -07:00
Dan Halbert
bc510e714f merge 3.0.2 to master 2018-09-18 15:38:12 -04:00
Dan Halbert
aaa61d06e3 add D4 and D3 aliases for EXTERNAL_NEOPIXEL and SENSE pins to match final silkscreen 2018-09-17 22:22:23 -04:00
Pierrick C
53853289eb Move VOLTAGE_BATTERY line just under D9 line 2018-09-14 09:02:04 +02:00
ladyada
521a14e942 add mic in / out 2018-09-13 21:50:43 -04:00
ladyada
994c066b21 rev B (minus microphone) 2018-09-13 21:34:39 -04:00
ladyada
bec42671b1 missin' reset pin for the radio. tested works. 2018-09-13 21:30:13 -04:00
ladyada
28aabb4d5c trellis m4 variant 2018-09-13 21:30:13 -04:00
Pierrick C
8eda4bb473 Add VOLTAGE_MONITOR alias for D9 pin to feather boards 2018-09-13 23:36:04 +02:00
Scott Shawcroft
2dd9407f21
Merge pull request #1186 from dhalbert/uart-enhancements
UART enhancements
2018-09-12 16:23:28 -07:00
Scott Shawcroft
f21cf15c38
Add OnDiskBitmap which loads pixel data straight from disk.
Also, renamed Sprite's palette to pixel_shader so it can be
anything that produces colors based on values (including color values).
Added a ColorConverter that converts RGB888 (found in bitmaps) to
RGB565 for the display.

Fixes #1182
2018-09-12 15:25:59 -07:00
Dan Halbert
6a046f55c4 UART fixes and enhancements; default board object fix 2018-09-12 17:19:43 -04:00
Dan Halbert
2bd7040fe0 usb_write() output_len was uint8_t instead of uint32_t 2018-09-12 17:16:52 -04:00
Paul Kierstead
02b3f62460 When UART timeout of zero is given, make read() return data already available 2018-09-12 13:25:49 -04:00
Benjamin Shockley
b923324e73
Added HW NEOPIXEL Definition
Added definition for the built-in Neopixel.  This is useful for CircuitPython Statas: https://learn.adafruit.com/welcome-to-circuitpython/troubleshooting#circuitpython-rgb-status-light-18-10
2018-09-12 07:59:07 -05:00
Dan Halbert
c3918bae57 PWMOut was not claming channels on shared TCCs 2018-09-11 19:46:47 -04:00
Benjamin Shockley
2138b04e45
Update to IS25LP016D
Changed .supports_qspi_write to true.
2018-09-11 07:52:23 -05:00
Benjamin Shockley
c7cf38186d
Added IS25LP016D 2018-09-10 14:55:18 -05:00
Benjamin Shockley
08a2d962e3
Delete README.md 2018-09-10 17:01:31 +00:00
Benjamin Shockley
b2f5511de2
Initial Upload of Mini SAM M0
Initial Upload of Mini SAM M0
2018-09-10 17:01:00 +00:00
Benjamin Shockley
b03037e512
Create README.md 2018-09-10 16:55:55 +00:00
Dan Halbert
34bcb069cf
Merge pull request #1165 from tannewt/grandcentral
Initial Grand Central definition
2018-09-07 15:00:13 -04:00
Scott Shawcroft
3ac03a31d8
Fix SDA/SCL 2018-09-07 10:39:18 -07:00
Scott Shawcroft
32c616b5dd
Initial Grand Central definition
It has a ton of pins in a Mega form-factor

This also includes a change to init the stack earlier. It fixes
a crash that occurs if the flash doesn't start correctly and the
original spot isn't reached.
2018-09-06 16:54:13 -07:00
Scott Shawcroft
c2e49dc87f
Merge remote-tracking branch 'adafruit/master' into hallowing 2018-09-06 14:54:55 -07:00
Scott Shawcroft
1683eb913d
Minor tweaks based on feedback 2018-09-06 14:49:49 -07:00
Dan Halbert
4c3b4cacfa Merge remote-tracking branch 'adafruit/master' into nrf-pin-claiming 2018-09-05 13:15:22 -04:00
Paul Kierstead
2d3f1a10bf When UART timeout of zero is given, make read() return data already available 2018-09-01 17:07:30 +00:00
Dan Halbert
9ea809bef7 add pin claiming to devices 2018-08-31 18:38:05 -04:00
Dan Halbert
585597a252 pin files rework; implement pin claiming; add more boards 2018-08-31 18:05:55 -04:00
Scott Shawcroft
121903b6ee
Tweaks based on feedback 2018-08-31 14:21:48 -07:00
Scott Shawcroft
6697544cdf
Introduce displayio to render graphics to displays.
It's designed to minimize RAM footprint by using Sprites to
represent objects on the screen. The object model also facilitates
partial screen updating which reduces the bandwidth needed to display.

This is all handled in C. Python simply manipulates the objects with
the ability to synchronize to frame timing.
2018-08-31 12:31:52 -07:00
Noralf Trønnes
b61cf8d81f samd: Use RTC to set file timestamp
Use RTC to set file timestamp for file operations done on the board.
2018-08-25 20:43:09 +02:00
Jerry Needell
e8b94d0024 adjust SAMD51 neopixel_write timing 2018-08-24 07:01:50 -04:00
Scott Shawcroft
182a8d7120
Merge pull request #1131 from tannewt/hallowing3
Support Hallowing in 3.x
2018-08-20 18:26:07 -07:00
Scott Shawcroft
2b6b0ffcd2
Remove HID from hallowing so we have more room for other stuff. 2018-08-20 18:04:35 -07:00
Scott Shawcroft
44de3d49a8
Speed up zero neopixel pulses.
SK6812 on 5v is pickier than WS2812 on 5v.

Hopefully fixes #1083.
2018-08-20 17:04:46 -07:00
ladyada
aeeb40e02c
Change hallowing to shipping flash type W25Q64JV-IQ. tested! 2018-08-20 10:52:33 -07:00
Dan Halbert
1768057e87
add HalloWing 2018-08-20 10:52:24 -07:00
Noralf Trønnes
eefb6842a0 i2cslave: Fix missing translate() when raising exceptions
The translate() changes where applied after travis had checked the
i2cslave PR so this wasn't caught.
2018-08-18 16:00:06 +02:00
Scott Shawcroft
4a4d84ba42
Merge pull request #1064 from notro/i2cslave
Add busio.I2CSlave
2018-08-17 16:51:45 -07:00
Scott Shawcroft
e8cf6a9072
Update to merged peripheral change. 2018-08-16 18:05:53 -07:00