Commit Graph

494 Commits

Author SHA1 Message Date
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
Scott Shawcroft 2cd166b573
Fix esp and samd 2018-08-16 17:41:35 -07:00
Scott Shawcroft de5a9d72dc
Compress all translated strings with Huffman coding.
This saves code space in builds which use link-time optimization.
The optimization drops the untranslated strings and replaces them
with a compressed_string_t struct. It can then be decompressed to
a c string.

Builds without LTO work as well but include both untranslated
strings and compressed strings.

This work could be expanded to include QSTRs and loaded strings if
a compress method is added to C. Its tracked in #531.
2018-08-16 17:40:57 -07:00
Noralf Trønnes 11cbeb87ad ports/atmel-samd: Implement i2cslave.I2CSlave
This adds support for SAMD acting as a I2C slave in polled mode.
2018-08-16 17:20:49 +02:00
Noralf Trønnes b6822b86ac busio/I2C: Split out samd_i2c_get_sercom()
It will be shared with I2CSlave.
2018-08-16 17:06:40 +02:00
ladyada d8f2a61c39 Change hallowing to shipping flash type W25Q64JV-IQ. tested! 2018-08-14 13:04:33 -04:00