hathach
e1ccc07841
remove bootloader & dfu-bootloader target
...
user should go to bootloader repo to upgrade bootloader
2018-08-14 20:19:28 +07:00
Dan Halbert
bbc034cd3d
Merge pull request #1104 from tannewt/more_strings
...
Fixes and translate more strings.
2018-08-09 20:00:18 -04:00
Scott Shawcroft
24e53ad591
Rework escaping and fix ESP build.
2018-08-09 15:58:45 -07:00
Scott Shawcroft
86d2154d71
Change file mode back.
2018-08-09 09:14:14 -07:00
Scott Shawcroft
94c5ceab36
Initial SAMR board revision.
2018-08-09 05:36:46 -07:00
Jeff Epler
b0e33f6a11
atmel-samd: UART: allocate rx buffer in long-lived region
...
This is not strictly needed in order for #1056 to be resolved,
because the "make long-lived" machinery is unaware of this pointer.
However, as UARTs are assumed to be long-lived, this change is
beneficial because it moves the long-lived buffer into the upper
memory area with other long-lived objects, instead of remaining in
the low heap.
2018-08-08 19:21:57 -05:00
Dan Halbert
2e80f37709
Merge pull request #1096 from tannewt/tune_neopixel
...
Retune neopixel timings on SAMD51. They were too slow.
2018-08-07 21:33:12 -04:00
Scott Shawcroft
b0dd645e27
Retune neopixel timings on SAMD51. They were too slow.
...
Fixes #1083
2018-08-07 16:58:37 -07:00
Scott Shawcroft
933add6cd8
Support internationalisation.
2018-08-07 14:58:57 -07:00
Dan Halbert
498fec64e2
increase new dynamic stack size to a comfortable value for now
2018-08-03 22:35:20 -04:00
Dan Halbert
dfa2581ffd
Merge pull request #1057 from tannewt/flexible_heap
...
Add basic memory allocation outside Python runtime
2018-08-02 18:43:06 -04:00
Scott Shawcroft
5704bc8c93
Share memory.c and a bit of polish.
2018-08-02 14:35:46 -07:00
Scott Shawcroft
64e5691fe7
Update to peripherals merge.
2018-08-02 13:59:12 -07:00
Scott Shawcroft
168aa394db
Move pin struct to the peripherals library.
...
Its slimmed down by removing the qstr and bit packing TCC info.
The trinket m0 build actually grows by 20 bytes. The arduino zero
build shrinks by 188 bytes.
2018-08-02 13:59:05 -07:00
Scott Shawcroft
b50f46d4be
Rename to SRC_QSTR_PREPROCESSOR for clarity.
2018-08-02 11:07:22 -07:00
Scott Shawcroft
8cf03d2d00
Speed up QSTR creation by pre-filtering files before pre-processing.
2018-08-02 00:51:52 -07:00
hathach
0bc3432106
Merge branch 'master' into nrf52_sys_module
2018-08-01 11:53:12 +07:00
Dan Halbert
65bd07bb0b
Merge pull request #1074 from hathach/nrf52840_usb_hid
...
Nrf52840 usb hid
2018-08-01 00:47:50 -04:00
hathach
592c190069
PR review clean up
2018-08-01 11:31:32 +07:00
hathach
8640d37149
try to address sys module, compile ok
2018-08-01 10:19:20 +07:00
hathach
200669216e
more clean up
2018-08-01 08:52:07 +07:00
hathach
bac233e99b
clean up
2018-08-01 08:47:41 +07:00
hathach
533d8dda96
fix samd usb hid typo
2018-08-01 08:40:04 +07:00
hathach
6ddd8583da
clean up
2018-08-01 08:20:20 +07:00
Scott Shawcroft
a88cdaca6a
Remove rogue execute bit. Must a common incorrect shortcut for me. :-)
2018-07-31 12:42:21 -07:00
hathach
1e524f1b98
Merge branch 'master' into nrf52840_usb_hid
2018-08-01 00:58:23 +07:00
hathach
85bd46a4e1
enable MICROPY_PY_ARRAY_SLICE_ASSIGN, MICROPY_PY_BUILTINS_SLICE_ATTRS
2018-07-31 23:09:39 +07:00
hathach
4bece22c92
add hid keyboard LED indicator stub
2018-07-31 23:02:15 +07:00
hathach
05139e2aee
all hid devices seems to be ok
2018-07-31 22:54:26 +07:00
hathach
2c85f42330
add usb hid syscontrol
2018-07-31 21:57:00 +07:00
hathach
ef58adacd3
usb hid consumer control works
2018-07-31 21:19:02 +07:00
hathach
fd661c1d57
improve usb hid
2018-07-31 21:06:24 +07:00
Scott Shawcroft
b334289669
Reenable LTO for debug.
2018-07-31 05:18:23 -07:00
Scott Shawcroft
12cf5e51c2
Allow for resizing the stack area.
2018-07-31 05:18:23 -07:00
Scott Shawcroft
777542c716
Add basic memory allocation outside Python runtime
...
This allows for the heap to fill all space but the stack. It also
allows us to designate space for memory outside the runtime for
things such as USB descriptors, flash cache and main filename.
Fixes #754
2018-07-31 05:18:03 -07:00
hathach
27b2a9fe59
add usb_desc, disable tinyusb stack CFG_TUD_DESC_AUTO
2018-07-31 17:50:32 +07:00
hathach
d15caf0dbd
hid keyboard and mouse work well
2018-07-31 16:42:04 +07:00
hathach
221d54a595
workaround to use lib/utils/interrupt_char.c
2018-07-31 14:28:34 +07:00
hathach
ae783b0b1a
update tinyusb, set scsi sense key for unsupported commands
2018-07-31 13:54:58 +07:00
Scott Shawcroft
a6d94b6845
Merge pull request #1068 from dhalbert/micropython-25ae98f-merge
...
Micropython 25ae98f
merge
2018-07-30 12:33:44 -07:00
Dan Halbert
fbe98ff9a9
Merge pull request #1071 from dhalbert/3.x-hallowing
...
add HalloWing
2018-07-29 20:24:47 -04:00
Dan Halbert
680597547c
add HalloWing
2018-07-29 19:22:16 -04:00
Dan Halbert
bfbb5cde5a
put back test in qemu-arm build
2018-07-28 23:40:17 -04:00
Dan Halbert
2e260a0eab
Merge remote-tracking branch 'adafruit/master' into micropython-25ae98f-merge
2018-07-28 14:13:54 -04:00
Dan Halbert
f48b70050e
merge finished
2018-07-28 13:29:47 -04:00
hathach
368d59796f
adding usb_hid
...
compiled with undefined ref
2018-07-27 17:36:41 +07:00
hathach
21339c4155
house keeping
2018-07-27 17:22:21 +07:00
hathach
e86f7d0b88
add usb msc callback description
2018-07-27 00:17:14 +07:00
hathach
5bdf40901f
update tusb lib
2018-07-26 17:16:41 +07:00
Dan Halbert
bc760dd341
WIP: complete manual inspection of all significant changes
2018-07-23 21:34:25 -04:00
hathach
bb28faf39c
arturo182 review
2018-07-17 23:57:49 +07:00
hathach
a0b9871ba9
use seperate interrupt_char.c for nrf
...
move usb descriptors into usb.c
2018-07-17 21:52:20 +07:00
hathach
d4e84a9bd4
Merge branch 'master' into fix_nrf52840_serial
2018-07-17 21:27:16 +07:00
hathach
3525d65af3
should fix #1021
...
- update tinyusb for wanted char
- move usb code into usb.c
2018-07-17 21:24:49 +07:00
Dan Halbert
2809b4f9dd
Merge branch 'master' into micropython-25ae98f-merge
2018-07-16 19:36:40 -04:00
Dan Halbert
a20ab40ed2
Merge 3.0.0 final bugfixes and changes to master
2018-07-16 09:01:46 -04:00
Dan Halbert
e2e01efa84
compiles and runs; hangs on import storage;storage.VfsFat.<tab>
2018-07-13 22:51:10 -04:00
Dan Halbert
bfe14ff824
Merge pull request #1014 from arturo182/nrf_shared_ble
...
nrf: Split the ble module into a shared part and the port implementation
2018-07-13 10:23:37 -04:00
Dan Halbert
414267388d
Merge pull request #1023 from arturo182/nrf_pyocd
...
nrf: Fix flashing with pyocd
2018-07-13 10:02:20 -04:00
arturo182
05c1384b67
nrf: Split the ble module into a shared part and the port implementation
...
This allows other ports to implement these shared bindings.
2018-07-13 16:01:15 +02:00
arturo182
883ca21321
nrf: Fix flashing with pyocd
2018-07-13 15:22:46 +02:00
arturo182
9729fc3d31
nrf: Fix BLE on nRF52840 after adding the USB functionality
2018-07-13 14:55:02 +02:00
Dan Halbert
7c219600a2
WIP: after merge; before testing
2018-07-11 16:45:30 -04:00
hathach
873e20273e
fix travis build
2018-07-12 02:17:55 +07:00
hathach
f98c7f708e
merge review
2018-07-12 01:37:23 +07:00
hathach
10846d316b
Merge branch 'master' into nrf52840_usbboot
2018-07-11 21:35:44 +07:00
Dan Halbert
4962468fff
Merge pull request #1011 from arturo182/nrf_cleanup
...
nrf: More cleanup and porting
2018-07-10 15:44:30 -04:00
hathach
a53b1c7cf1
code format
2018-07-10 22:49:51 +07:00
arturo182
eab00ff140
nrf: Remove even more unused files
2018-07-10 14:59:22 +02:00
arturo182
2c63fb2a94
nrf: Remove the random hal and module
...
Thus getting rid of the whole old hal!
The module is not needed because the common-hal
nRF implementation uses HW RNG anyway.
2018-07-10 14:59:22 +02:00
arturo182
1163462635
nrf: Remove the old time hal and replace with nRFx
2018-07-10 14:59:10 +02:00
Scott Shawcroft
e875f4e52e
Merge pull request #1002 from arturo182/nrfx_gpio
...
nrf: Rewrite the DigitalInOut hal using nRFx
2018-07-09 17:54:38 -07:00
Dan Halbert
8bb363f7c4
must set pull after setting direction with gpio_set_pin routines
2018-07-09 17:18:06 -04:00
hathach
0e819599e7
Merge branch 'master' into nrf52840_usbboot
2018-07-10 02:02:52 +07:00
hathach
7715d19efe
update bootloader hex
2018-07-10 01:20:37 +07:00
hathach
97a1ae911e
add family option for uf2
2018-07-10 01:18:14 +07:00
hathach
f199e87085
add ARRAY_SIZE
...
which is missing when building with debug mode
2018-07-10 01:06:57 +07:00
hathach
c5089d7274
generate uf2 by default
...
update tusb
2018-07-10 01:02:33 +07:00
Dan Halbert
64b9ee9c74
Merge pull request #985 from tannewt/heap_tweaks3
...
A few heap related tweaks
2018-07-08 23:21:38 -04:00
Scott Shawcroft
a45659c59a
Merge pull request #1000 from arturo182/nrfx_uart
...
nrf: Rewrite the UART HAL using nRFx
2018-07-08 20:17:47 -07:00
Scott Shawcroft
133b99b6f2
Merge pull request #999 from arturo182/nrf_mphalport
...
nrf: mphalport cleanup
2018-07-08 20:13:21 -07:00
Scott Shawcroft
fd5634e4aa
Merge pull request #992 from arturo182/nrf_i2c_fix
...
nrf: Fix I2C transfers with data larger than HW allows
2018-07-08 20:12:09 -07:00
arturo182
388f554ff6
nrf: Rewrite the DigitalInOut hal using nRFx
2018-07-08 17:48:32 +02:00
arturo182
25ece8fb3d
nrf: Rewrite the UART HAL using nrfx
2018-07-08 16:42:04 +02:00
arturo182
c6a2a55bc9
nrf: Cleanup mpconfigboard files
...
All the removed defines were used by legacy modules that are now
removed.
2018-07-08 15:18:11 +02:00
arturo182
887486582e
nrf: Remove port-specific help
...
It contains mentions to the pyb module which was removed.
The ble-specific help will be re-added later when the API
is stabilized.
2018-07-08 15:18:11 +02:00
arturo182
1ea633c484
nrf: mphalport cleanup
2018-07-08 14:39:30 +02:00
arturo182
da27253693
nrf: Fix I2C transfers with data larger than HW allows
2018-07-06 21:12:24 +02:00
arturo182
ac74edb4e4
nrf: Fix SPI transfers with data larger than HW allows
2018-07-06 21:10:25 +02:00
hathach
baf68a936e
remove hal_time files
2018-07-06 15:59:20 +07:00
hathach
3e319694aa
mp_hal_delay_ms() to call background task
...
remove hal_time.c
2018-07-06 15:48:01 +07:00
hathach
948ddf8463
make SD default to s140 and s132 for nrf52840 and nrf52832
...
add CFG_HWUART_FOR_SERIAL for using jlink as REPL
2018-07-06 14:39:49 +07:00
hathach
6ef3a0b181
implement filesystem_writable_by_python()
2018-07-06 13:01:07 +07:00
Scott Shawcroft
54179a0189
Use .s in samd Makefile too.
2018-07-05 04:44:00 -07:00
hathach
0806c0a38b
update fatfs cached sector when running write10
2018-07-05 17:43:38 +07:00
hathach
4e5d9a029d
clean up
2018-07-05 17:26:07 +07:00
hathach
0365912e28
implement msc with internal_flash api
...
Note: only work with SD is disabled.
2018-07-05 16:19:04 +07:00
hathach
3564e98181
implement msc flash, seems to work
2018-07-05 15:22:23 +07:00
hathach
1745e20391
replace jlink with native usb cdc for serial REPL
2018-07-05 11:30:12 +07:00
hathach
be2ff20e42
enable usb cdc interface
...
not handle anything yet.
2018-07-04 17:15:49 +07:00
hathach
7fff7f5e70
add usb msc support for nrf52840
2018-07-04 16:40:53 +07:00
Scott Shawcroft
8fb976f0bd
Split out assembly source files.
2018-07-03 07:25:54 -07:00
mrmcwethy
d9723bb613
include RTC fix for SAMd51 in circuitpython build
2018-07-03 06:52:05 -07:00
Scott Shawcroft
074c5ea144
Merge pull request #977 from dhalbert/update_crickit_libs-2
...
update crickit-related libs
2018-07-03 12:04:05 -07:00
Dan Halbert
bf9981e8db
bring all frozen libraries up to date
2018-07-03 14:39:21 -04:00
Scott Shawcroft
dbc977485c
Support gathering register values on nrf.
2018-07-03 06:31:07 -07:00
Scott Shawcroft
ec78d3cefd
Mark pointers in cpu registers as in use.
...
This prevents bugs where gc_collect is called from C code that did
a recent allocation.
2018-07-03 05:45:50 -07:00
hathach
46c453cf0a
add tinyusb as submodule
2018-07-03 17:46:08 +07:00
hathach
b14b28067e
Merge branch 'master' into nrf52840_usbboot
2018-07-03 17:29:28 +07:00
Scott Shawcroft
bf00cde37d
Comment tweak after board change
2018-07-02 14:51:06 -07:00
Scott Shawcroft
b91202969a
Merge pull request #982 from arturo182/nrf_makefile
...
nrf: Save some flash bytes by using extra compile flags
2018-07-02 14:33:47 -07:00
Scott Shawcroft
05a088b369
Merge pull request #972 from arturo182/nrf_i2c
...
nrf: Rewrite the I2C common-hal using nrfx
2018-07-02 14:33:06 -07:00
arturo182
da491ec961
nrf: Save some flash bytes by using extra compile flags
...
Both of these are used in the atsamd port as well.
2018-07-02 22:00:04 +02:00
Dan Halbert
7c9a0e2996
remove unnecessary extern in nrf/mphalport.c
2018-06-29 16:06:51 -04:00
Dan Halbert
7028a399c2
remove previously added esp8266/mphalport.{c,h}
2018-06-29 16:04:18 -04:00
Dan Halbert
2a0b857643
implement mp_hal_delay_us() to not need interrupts, and use it
2018-06-29 16:01:46 -04:00
mrmcwethy
df4469f92b
Test the BOARD parameter for nullness; display a error if nothing provided
2018-06-29 12:22:31 -07:00
mrmcwethy
d392f01f2c
include RTC fix for SAMd51 in circuitpython build
2018-06-29 05:45:38 -07:00
Dan Halbert
b4fd77bb7c
fix nrf and esp8266 builds for OneWire fix
2018-06-29 00:00:05 -04:00
Dan Halbert
52a11547cb
fix OneWire timing and DigitalInOut.switch_to_input()
2018-06-28 23:32:20 -04:00
Scott Shawcroft
429168d4ac
Merge pull request #970 from arturo182/nrf_softdev
...
nrf: Remove unsupported softdevice defines
2018-06-28 14:01:19 -07:00
Scott Shawcroft
007155276a
Merge pull request #969 from arturo182/nrf_more_commonhal
...
nrf: Rewrite more common-hal with nrfx and sync with atsamd port
2018-06-28 14:00:45 -07:00
Scott Shawcroft
039b4dc00a
Merge pull request #968 from arturo182/nrf_qstr
...
nrf: Remove old qstr defines
2018-06-28 13:57:46 -07:00
Scott Shawcroft
ae82a93b56
Merge pull request #967 from arturo182/nrf_os
...
nrf: Rewrite the os common-hal using nrfx
2018-06-28 13:55:34 -07:00
arturo182
178c089045
nrf: Rewrite the I2C common-hal using nrfx
2018-06-28 22:45:02 +02:00
arturo182
6e6a500801
nrf: Rewrite the os common-hal using nrfx
2018-06-27 21:01:07 +02:00
arturo182
af5cb9c492
nrf: Remove unneeded hal files
2018-06-27 21:00:34 +02:00
arturo182
b87bba8a28
nrf: Rewrite more common-hal with nrfx and sync with atsamd port
2018-06-27 20:55:29 +02:00
arturo182
1fa8fac5d7
nrf: Remove old qstr defines
...
These were used by the microbit music module, which was removed.
2018-06-27 20:52:13 +02:00
arturo182
b9f02ca3c5
nrf: Remove unsupported softdevice defines
2018-06-27 20:48:57 +02:00
arturo182
2a12fcd18b
nrf: Rewrite the AnalogIn common-hal using nrfx
2018-06-27 20:41:30 +02:00
hathach
c4f11dfd32
flash target update bootloader setting to skip crc checksum
2018-06-27 15:22:44 +07:00
hathach
8fbe1d73e9
clean up makefile
2018-06-27 15:13:20 +07:00
hathach
4920cc47ca
move dfu-gen dfu-flash dfu-bootloader bootloader uf2 target to common Makefile since several board use it
2018-06-27 14:31:08 +07:00
hathach
bed7310fd7
update bin files
2018-06-27 14:13:18 +07:00
hathach
ecd3993d43
update pin map for feather52840
2018-06-27 14:06:15 +07:00
Dan Halbert
1f3de5174e
Freeze Adafruit_CircuitPython_Crickit into crickit builds
2018-06-26 19:49:55 -04:00
Scott Shawcroft
91427b0b23
Merge pull request #959 from arturo182/nrf_spim
...
nrf: Rewrite the SPI common-hal using nrfx
2018-06-26 11:00:12 -07:00
Scott Shawcroft
d7d132d5a3
Merge pull request #960 from arturo182/nrf_stm_cleanup
...
nrf: Remove leftovers from stm32 code copy
2018-06-26 10:52:04 -07:00
arturo182
16973d0559
nrf: Remove unused hal files
...
Makes it easier to keep track of what's left to rewrite.
2018-06-26 00:13:41 +02:00
arturo182
2f1e678d60
nrf: Rewrite the SPI common-hal using nrfx
...
Use SPIM2 on nRF52832 and SPIM3 on nRF52840. SPIM3 is able to go
up to 32MHz!
2018-06-25 23:46:34 +02:00
arturo182
b14d13e318
nrf: Remove leftovers from stm32 code copy
2018-06-25 23:38:10 +02:00
hathach
8d065fe0e6
update reamde
2018-06-26 00:16:58 +07:00
hathach
54547683f9
add uf2, bootloader target
2018-06-25 23:31:14 +07:00
hathach
4722371be9
update bootloader hex with uf2
2018-06-25 23:27:00 +07:00
hathach
f5be5ed6ee
Merge branch 'master' into nrf52840_usbboot
2018-06-25 17:12:24 +07:00
arturo182
596a1d8843
nrf: Rename feather52 to feather52832 in readme files
2018-06-22 10:04:39 +02:00
Damien George
a2ac7e4fc9
stm32/boards: Add .ld and af.csv files for STM32F722.
...
These files can also be used for F723, F732 and F733 MCUs.
2018-06-22 15:39:10 +10:00
Damien George
ec7982ec6d
stm32/mboot: Add support for erase/read/write of external SPI flash.
...
This patch adds support to mboot for programming external SPI flash. It
allows SPI flash to be programmed via a USB DFU utility in the same way
that internal MCU flash is programmed.
2018-06-22 15:30:34 +10:00
Damien George
7f41f73f0f
stm32/qspi: Don't require data reads and writes to be a multiple of 4.
...
Prior to this patch the QSPI driver assumed that the length of all data
reads and writes was a multiple of 4. This patch allows any length. Reads
are optimised for speed by using 32-bit transfers when possible, but writes
always use a byte transfer because they only use a single data IO line and
are relatively slow.
2018-06-22 15:07:01 +10:00
jerryneedell
de4cd1ee73
add pins D3/D4 to pins.c
...
fixes #948
2018-06-20 22:26:59 -04:00
arturo182
25e71a56d4
nrf: Update the PCA10056 example to use new pin naming
2018-06-20 23:39:36 +02:00
arturo182
deec17e4fe
nrf: Remove really old examples
...
These examples rely on machine and pyb modules, so they have to get.
Leaving 3 BLE examples that also rely on those modules, but can be
fixed to use CP's modules.
2018-06-20 23:38:18 +02:00
arturo182
9c08db55ff
nrf: Cleanup machine and microbit leftovers
...
The music module was useful when this port had support for the
microbit, now that it was removed, it's not so useful.
2018-06-20 23:30:34 +02:00
arturo182
c2d4d0a10b
nrf: Simplify pin generation and definition
...
This commit cleans up the pin generation code, all the pins and their
AF (only ADC, for now) are specified in nrf52_af.csv and board use their
own csv file to specify which pins are available on that board and if
they have any special names.
2018-06-20 23:26:32 +02:00
arturo182
ff918556cd
nrf: Simplify the board makefiles
...
With the only difference between a SD and non-SD build is the linker
file, there's no need to have two separate .mk per board files,
just use a conditional.
2018-06-20 21:21:45 +02:00
arturo182
5509f394dc
nrf: Add a nrfx submodule and prepare for using the new drivers
2018-06-20 20:43:59 +02:00
arturo182
7cd34f2a94
nrf: Cleanup Makefile after nrf51 removal
2018-06-20 18:21:18 +02:00
arturo182
97f10241f9
nrf: Fix default board after feather52 rename
2018-06-20 18:21:18 +02:00
arturo182
b47a67d566
nrf: Remove machine, pyb and utime modules
...
Micropython legacy, keeping it consistent with atsam port.
2018-06-20 18:21:18 +02:00
jerryneedell
80d16cb7df
add pins D3/D4 to pins.c
...
fixes #948
2018-06-19 22:34:29 -04:00
Damien George
561ae9a91b
stm32/boards/NUCLEO_F091RC: Fix TICK_INT_PRIORITY so it is highest prio.
...
Fixes issue #3880 .
2018-06-20 12:24:18 +10:00
Damien George
5962c210c5
stm32/mboot: Define constants for reset mode cycling and timeout.
...
And fix timeout value so that it does actually finish with reset_mode=1.
2018-06-19 23:23:17 +10:00
hathach
61437106e7
update bootloader for feather nrf52840
2018-06-19 15:27:07 +07:00
hathach
6d2702ed98
Merge branch 'master' into nrf52840_usbboot
2018-06-19 14:50:17 +07:00
Scott Shawcroft
4e7eee3553
Merge pull request #946 from arturo182/nrf_sd6
...
nrf: Use the production version of s140 6.0.0
2018-06-18 16:29:41 -07:00
arturo182
feee808955
nrf: Use the production version of s140 6.0.0
2018-06-18 23:12:28 +02:00
Scott Shawcroft
05547b72ac
Switch to Feather52s full name to avoid confusion with the nrf52840 later.
...
Fixes #940
2018-06-18 10:51:04 -07:00
Damien George
e49cd106b4
stm32/spi: Fix SPI driver so it can send/recv more than 65535 bytes.
...
The DMA peripheral is limited to transferring 65535 elements at a time so
in order to send more than that the SPI driver must split the transfers up.
The user must be aware of this limit if they are relying on precise timing
of the entire SPI transfer, because there might be a small delay between
the split transfers.
Fixes issue #3851 , and thanks to @kwagyeman for the original fix.
2018-06-18 17:41:14 +10:00
Damien George
338af99a7f
stm32/can: Use MP_OBJ_ARRAY_TYPECODE_FLAG_RW where appropriate.
2018-06-18 13:42:05 +10:00
rolandvs
ca2b1d6b36
stm32/boards/NUCLEO_F091RC: Add Arduino-named pins and rename CPU pins.
...
To match pin labels on other NUCLEO 64 boards.
2018-06-18 13:06:27 +10:00
rolandvs
0d3de68669
stm32/boards/stm32f091_af.csv: Split labels that are multiple funcs.
2018-06-18 13:05:24 +10:00
Damien George
a5f5552a0a
tests/unix/extra_coverage: Don't test stream objs with NULL write fun.
...
This behaviour of a NULL write C method on a stream that uses the write
adaptor objects is no longer supported. It was only ever used by the
coverage build for testing the fail path of mp_get_stream_raise().
2018-06-18 12:35:56 +10:00
Damien George
ceff433fcc
stm32/mboot: Adjust user-reset-mode timeout so it ends with mode=1.
...
If the user button is held down indefinitely (eg unintenionally, or because
the GPIO signal of the user button is connected to some external device)
then it makes sense to end the reset mode cycle with the default mode of
1, which executes code as normal.
2018-06-18 12:23:27 +10:00
Dan Halbert
be5eb91df8
Merge pull request #938 from sommersoft/esp_busio_fix
...
ESP8266: Fix pin locking during busio.SPI.configure
2018-06-16 11:49:20 -04:00
Scott Shawcroft
a5e03b76a6
Split out the peripherals library in preparation of sharing with MakeCode.
2018-06-15 16:16:21 -07:00
Limor "Ladyada" Fried
9fc0ec6af8
Merge pull request #934 from microbuilder/usbboot
...
[WIP] nRF52840 USB Bootloader
2018-06-15 09:35:30 -07:00
Damien George
34b2f6b6fc
esp32/modules: Include umqtt library in frozen modules.
2018-06-15 16:39:49 +10:00
Damien George
d61d119c94
esp32: Update to latest ESP IDF.
2018-06-15 16:23:53 +10:00
sommersoft
23b6d33455
fixes #642 ; spi_init_gpio() is now bypassed for both construct and configure
2018-06-15 05:03:52 +00:00
Damien George
7be4a23c0c
stm32/i2cslave: Fix ordering of event callbacks in slave IRQ handler.
...
It's possible (at least on F4 MCU's) to have RXNE and STOPF set at the same
time during a call to the slave IRQ handler. In such cases RXNE should be
handled before STOPF so that all bytes are processed before
i2c_slave_process_rx_end() is called.
2018-06-15 14:15:31 +10:00
Damien George
bc5e8a2cb6
stm32/i2c: Fix num_acks calculation in i2c_write for F0 and F7 MCU's.
...
Due to buffering of outgoing bytes on the I2C bus, detection of a NACK
using the ISR_NACKF flag needs to account for the case where ISR_NACKF
corresponds to the previous-to-previous byte.
2018-06-15 14:10:53 +10:00
Dan Halbert
fa814a32ce
Make Trinket M0 build fit; make RAMFS in vfs_fat_* tests be compliant with expected API
2018-06-14 21:02:12 -04:00
Damien George
37a7257aff
stm32/timer: Support TIM1 on F0 MCUs.
2018-06-15 10:50:08 +10:00
Dan Halbert
e724bc1c4e
Fix playing audio from SD card
2018-06-14 18:47:40 -04:00
Damien George
cc5a94044a
drivers/memory/spiflash: Rename functions to indicate they use cache.
...
This patch renames the existing SPI flash API functions to reflect the fact
that the go through the cache:
mp_spiflash_flush -> mp_spiflash_cache_flush
mp_spiflash_read -> mp_spiflash_cached_read
mp_spiflash_write -> mp_spiflash_cached_write
2018-06-14 16:52:56 +10:00
Damien George
335d26b27d
stm32/boards/STM32L476DISC: Update SPI flash config for cache change.
2018-06-14 16:52:56 +10:00
hathach
35d38dbfed
update nrf52840 bootloader hex
2018-06-13 17:27:55 +07:00
Damien George
cf1509c911
esp32/fatfs_port: Implement get_fattime so FAT files have a timestamp.
...
Fixes issue #3859 .
2018-06-13 14:13:34 +10:00
Scott Shawcroft
618943d90a
Merge pull request #926 from nickzoic/circuitpython-nickzoic-716-pulseio-esp8266
...
Implement pulseio.PulseIn and PulseOut for ESP8266 #716
2018-06-12 18:33:16 -07:00
Scott Shawcroft
ee817a2fa8
Correct UART reads to return error on timeout.
...
This causes read to correctly return None instead of b''.
Fixes #874
2018-06-12 14:03:27 -07:00
Dan Halbert
4691b30c02
PDMIn: turn serializer on when starting DMA
2018-06-12 12:35:51 -04:00
Damien George
5042d98514
stm32/Makefile: Rebuild all qstrs when any board configuration changes.
2018-06-12 13:53:43 +10:00
Damien George
0501427907
esp32: Remove port-specific uhashlib implementation and use common one.
...
Now that the common module has mbedtls support for both SHA1 and SHA256 it
can now be used on this port.
2018-06-12 13:50:11 +10:00
Damien George
565f590586
ports: Enable IOBase on unix, stm32, esp8266 and esp32.
...
It's a core feature, in particular required for user-streams with uasyncio.
2018-06-12 12:29:26 +10:00
Damien George
b2fa1b50ed
ports: Call gc_sweep_all() when doing a soft reset.
...
This calls finalisers of things like files and sockets to cleanly close
them.
2018-06-12 11:56:25 +10:00
Scott Shawcroft
73dadb0669
Update to the latest ASF4 which includes an I2C timeout extension while waiting for clock stretching.
...
Fixes #778
2018-06-11 18:37:48 -07:00
Dan Halbert
068ffd04a6
Merge pull request #919 from adafruit/jerryneedell-patch-2
...
fix #918
2018-06-10 09:17:49 -04:00
Nick Moore
f72dcc64e6
Fixes #918 (PulseIn.get_paused) ...
2018-06-10 22:37:15 +10:00
Nick Moore
b25cbd340b
Merge commit '2129bbe160278f7cd2cece939f81900a41f8aa86' into circuitpython-nickzoic-716-pulseio-esp8266
2018-06-10 22:08:58 +10:00
Nick Moore
972b03850f
Merge branch 'master' into circuitpython-nickzoic-716-pulseio-esp8266
2018-06-10 22:01:35 +10:00
jerryneedell
8150150a24
return "false" for stub call
...
See #918 for discussion
2018-06-10 07:11:44 -04:00
jerryneedell
2129bbe160
Update PulseIn.c
2018-06-10 07:08:56 -04:00
jerryneedell
5724fd795a
fix #918
...
Add stub for common_hal_pulseio_pulsein_get_paused to make ESP8266 build compatible with PR #901
2018-06-10 05:59:20 -04:00
Dan Halbert
b2d98edb4e
Merge pull request #901 from tannewt/pulseio_too_fast
...
Prevent freezing USB during high frequency PulseIn.
2018-06-08 17:59:06 -04:00
Scott Shawcroft
8fb34a5846
Use bool not int.
2018-06-08 14:57:20 -07:00
Scott Shawcroft
8195df1b55
Stub out get_paused in nrf builds.
2018-06-08 14:01:54 -07:00
Scott Shawcroft
66b79723b6
Add code size analysis tool and shrink samd.clock a smidge.
2018-06-08 12:56:32 -07:00
Scott Shawcroft
769788d3c7
Turn off USB pin objects since they are always used for USB.
2018-06-08 12:56:32 -07:00
Scott Shawcroft
383bf9a59e
Wait for the DFLL to be stable.
2018-06-08 12:56:32 -07:00
Scott Shawcroft
07a8899c72
Support M4
2018-06-08 12:56:32 -07:00
Scott Shawcroft
2fbab8067a
Prevent freezing USB during high frequency PulseIn.
...
We now track the last time the background task ran and bail on the
PulseIn if it starves the background work. In practice, this
happens after the numbers from pulsein are no longer accurate.
This also adjusts interrupt priorities so most are the lowest level
except for the tick and USB interrupts.
Fixes #516 and #876
2018-06-08 12:56:32 -07:00
Dan Halbert
218930d18b
Check for PDMIn DMA getting stuck.
2018-06-08 08:23:52 -04:00
hathach
418e28c7dc
update nrf52840 bootloader hex and target
2018-06-08 16:10:49 +07:00
hathach
2b3436e87c
add feather nrf52 uart rts, cts support
2018-06-08 15:59:38 +07:00
hathach
c10899d13f
allow to flash feather52 and feather52840 with jlink
...
add crc bypass magic to bootloader settting
2018-06-08 15:11:17 +07:00
Nick Moore
6af1fbacc9
Work on pulseio.PulseOut for #716 ESP8266
...
Switch to ets_delay_us but the PWM is still way too slow to be useful.
2018-06-08 16:41:42 +10:00
Nick Moore
011edf2472
Clean up interrupt handling for pulseio.PulseIn implementation for #716 ESP8266
2018-06-08 15:31:16 +10:00
Damien George
24c416cc66
stm32/mboot: Increase USB rx_buf and DFU buf sizes to full 2048 bytes.
...
The DFU USB config descriptor returns 0x0800=2048 for the supported
transfer size, and this applies to both TX (IN) and RX (OUT). So increase
the rx_buf to support this size without having a buffer overflow on
received data.
With this patch mboot in USB DFU mode now works with dfu-util.
2018-06-08 15:29:52 +10:00
Nick Moore
c4cf1c5221
Initial pulseio.PulseOut implementation for #716 ESP8266
2018-06-08 15:28:05 +10:00
Nick Moore
7adc69baf9
Initial pulseio.PulseIn implmentation for #716 ESP8266
2018-06-08 15:27:59 +10:00
Glenn Moloney
039f196c56
esp32/modnetwork: Fix isconnected() when using static IP config.
...
Currently <WLAN>.isconnected() always returns True if a static IP is set,
regardless of the state of the connection.
This patch introduces a new flag 'wifi_sta_connected' which is set in
event_handler() when GOT_IP event is received and reset when DISCONNECTED
event is received (unless re-connect is successful). isconnected() now
simply returns the status of this flag (for STA_IF).
The pre-existing flag misleadingly named 'wifi_sta_connected" is also
renamed to 'wifi_sta_connect_requested'.
Fixes issue #3837
2018-06-08 13:13:21 +10:00
Damien George
190c7dba89
stm32/mpconfigport.h: Enable DELATTR_SETATTR and BUILTINS_NOTIMPLEMENTED
...
MICROPY_PY_DELATTR_SETATTR can now be enabled without a performance hit for
classes that don't use this feature.
MICROPY_PY_BUILTINS_NOTIMPLEMENTED is a minor addition that improves
compatibility with CPython.
2018-06-08 12:55:18 +10:00
Damien George
93150a0d40
ports: Enable descriptors on stm32, esp8266, esp32 ports.
...
They are now efficient (in runtime performance) and provide a useful
feature that's hard to obtain without them enabled.
See issue #3644 and PR #3826 for background.
2018-06-08 12:23:08 +10:00
Kattni Rembor
ba7e0e2f86
Add Adafruit to other M4 board name strings
2018-06-07 13:39:04 -04:00
Kattni Rembor
7b2875d54a
Add Adafruit to board name string
2018-06-07 13:33:13 -04:00
Kattni Rembor
0ab2a60dcd
Update ItsyBitsy board name to one word
2018-06-07 13:12:44 -04:00
hathach
c854e2dc17
Merge branch 'master' into usbboot
2018-06-07 13:51:21 +07:00
hathach
9bb4ded5fa
Merge remote-tracking branch 'upstream/master'
2018-06-07 13:50:04 +07:00
Damien George
fadd6bbe43
unix/moduos_vfs: Add missing uos functions from traditional uos module.
...
Now that the coverage build has fully switched to the VFS sub-system these
functions were no longer available, so add them to the uos_vfs module.
Also, vfs_open is no longer needed, it's available as the built-in open.
2018-06-06 14:28:23 +10:00
Damien George
1d40f12e44
unix: Support MICROPY_VFS_POSIX and enable it in coverage build.
...
The unix coverage build is now switched fully to the VFS implementation, ie
the uos module is the uos_vfs module. For example, one can now sandbox uPy
to their home directory via:
$ ./micropython_coverage
>>> import uos
>>> uos.umount('/') # unmount existing root VFS
>>> vfs = uos.VfsPosix('/home/user') # create new POSIX VFS
>>> uos.mount(vfs, '/') # mount new POSIX VFS at root
Some filesystem/OS features may no longer work with the coverage build due
to this change, and these need to be gradually fixed.
The standard unix port remains unchanged, it still uses the traditional uos
module which directly accesses the underlying host filesystem.
2018-06-06 14:28:23 +10:00
Damien George
f35aae366c
extmod/vfs_fat: Rename FileIO/TextIO types to mp_type_vfs_fat_XXX.
...
So they don't clash with other VFS implementations.
2018-06-06 14:28:23 +10:00
Dan Halbert
9ba6990228
Feather M0 Express build with Crickit libraries
2018-06-05 18:21:47 -04:00
Dan Halbert
74ced174ce
Merge pull request #898 from dhalbert/feather_m4_d4
...
add PA14 as D4 to Feather M4 Express
2018-06-05 11:41:31 -04:00
Dan Halbert
7e7e33e460
add PA14 as D4 to Feather M4 Exprses
2018-06-05 08:15:34 -04:00
Damien George
aace60a75e
esp8266/modules/ntptime.py: Remove print of newly-set time.
...
It should be up to the user if they want to print the new time out or not.
Fixes issue #3766 .
2018-06-05 14:30:35 +10:00
Damien George
a90124a9e2
esp32: Add support for building with external SPI RAM.
...
This patch adds support for building the firmware with external SPI RAM
enabled. It is disabled by default because it adds overhead (due to
silicon workarounds) and reduces performance (because it's slower to have
bytecode and objects stored in external RAM).
To enable it, either use "make CONFIG_SPIRAM_SUPPORT=1", or add this line
to you custom makefile/GNUmakefile (before "include Makefile"):
CONFIG_SPIRAM_SUPPORT = 1
When this option is enabled the MicroPython heap is automatically allocated
in external SPI RAM.
Thanks to Angus Gratton for help with the compiler and linker settings.
2018-06-05 13:57:59 +10:00
Angus Gratton
bc92206f89
esp32/Makefile: Extract common C & C++ flags for consistent compilation.
2018-06-05 13:05:12 +10:00
Scott Shawcroft
0c7c0821fc
Merge pull request #891 from godlygeek/low_flash_errno_fixes
...
Human readable OSError messages for low flash devices
2018-06-04 17:22:57 -07:00
Damien George
df13ecde06
cc3200/mods: Include stream.h to get definition of mp_stream_p_t.
2018-06-04 16:58:45 +10:00
Damien George
309fe39dbb
stm32/modnetwork: Fix arg indexing in generic ifconfig method.
2018-06-03 21:50:49 +10:00
Matt Wozniski
d0e6bb269f
Use the system errno's on nrf
2018-06-02 12:55:07 -04:00
Scott Shawcroft
e580d22f4a
Use the external crystal on SAMD21 again.
...
Also, re-enable calibration storage for CircuitPlayground Express.
Tested with a 500hz PWMOut on Metro M0 with Saleae:
* with crystal 500hz
* with usb 500hz +- 0.1hz
* without either 487hz += 0.1hz
SAMD51 is skipped due to DFLL errata and the fact it defaults to a
factory calibrated 48mhz that works fine for USB.
Fixes #648
2018-06-01 18:01:42 -07:00
Matt Wozniski
22f4438787
Prune atmel-samd errno list
...
Remove errnos that are only raised by modules that aren't linked into
the atmel-samd port.
2018-06-01 19:04:14 -04:00
Matt Wozniski
e798b67ca2
Begin a custom list of errnos for atmel-samd
...
The uerrno module was written to allow boards to customize the list of
errnos they can raise. Start by copying the default list.
2018-06-01 19:04:04 -04:00
Scott Shawcroft
717199018b
Adapt for feedback and hack around pIRkey size constraint.
2018-06-01 15:08:52 -07:00
Dan Halbert
f386144428
redo state algorithm
2018-06-01 15:08:52 -07:00
Scott Shawcroft
9920f0a5de
atmel-samd: Make ticks more atomic.
...
Always use current_tick when sub millisecond precision is required.
Otherwise getting the ms/us to correspond is tricky.
2018-06-01 15:08:52 -07:00
Scott Shawcroft
d0fb6e7a2f
atmel-samd: Add rotary encoder support.
...
Fixes #283
2018-06-01 15:08:48 -07:00
Scott Shawcroft
fd71e56891
atmel-samd: Re-org helper peripheral files into their own subdirectory.
...
Ideally in the future they won't depend on ASF4 or MicroPython.
2018-06-01 15:07:31 -07:00
Dan Halbert
ae31c4ac18
Merge pull request #889 from tannewt/audioio_timers_in_use
...
Turn off timer on AudioOut deinit.
2018-06-01 18:03:29 -04:00
Dan Halbert
ea95eb730a
Merge pull request #890 from tannewt/brownout3
...
Support brownout to safe mode. Fixes #870
2018-06-01 18:02:13 -04:00
Scott Shawcroft
f38ce1060c
Support brownout to safe mode. Fixes #870
2018-06-01 13:45:28 -07:00
Scott Shawcroft
bf1f0b3d11
Turn off timer on AudioOut deinit.
...
Thanks to @sommersoft for spotting the error.
Fixes #850
2018-06-01 13:32:45 -07:00
Noralf Trønnes
e158702a68
atmel-samd/samd51: Use crystal for RTC
...
This uses the crystal to clock the RTC on boards which have a crystal.
Disable clock generator 2 which was enabled in commit
8e2080411f
("atmel-samd: Add rtc module support").
samd51 differs from samd21 when it comes to the RTC clock. samd51 doesn't
have an explicit clock peripheral so no need for a clock generator.
The same commit didn't even setup XOSC32K correctly, it missed EN1K and XTALEN.
The RTC uses the 1k clock output, so enable it on the OSCULP32K even if it works without it.
2018-06-01 18:03:23 +02:00
Noralf Trønnes
ab7ddfddd5
atmel-samd/samd51: Refactor clock setup
...
Refactor the convoluted asf4 clock setup into something more readable.
enable_clock_generator() has 2 changes:
- Set 'Output enabled' to match the current clock setup
- Handle divisors above 511
Add an enable_clock_generator_sync() version which makes it possible to setup
clocks without waiting for syncing. The bootup would hang without this.
I have checked these registers:
NVMCTRL->CTRLA = 0x00000004
Peripheral clocks (only non-zero shown):
PCHCTRL[1]=0x00000045
PCHCTRL[10]=0x00000041
Generator clocks (only non-zero shown):
GENCTRL[0] = 0x00010907
GENCTRL[1] = 0x00010906
-GENCTRL[2] = 0x00041104
+GENCTRL[2] = 0x00200904
GENCTRL[4] = 0x00010907
GENCTRL[5] = 0x00180906
DFLL clock:
OSCCTRL->DFLLCTRLA = 0x00000082
OSCCTRL->DFLLCTRLB = 0x00000000
OSCCTRL->DFLLVAL = 0x00008082
OSCCTRL->DFLLMUL = 0x00000000
DPLL clocks:
OSCCTRL->Dpll[0].DPLLCTRLA=0x00000002
OSCCTRL->Dpll[0].DPLLCTRLB=0x00000000
OSCCTRL->Dpll[0].DPLLRATIO=0x0000003b
OSCCTRL->Dpll[1].DPLLCTRLA=0x00000080
OSCCTRL->Dpll[1].DPLLCTRLB=0x00000020
OSCCTRL->Dpll[1].DPLLRATIO=0x00000000
OSC32KCTRL clock:
OSC32KCTRL->RTCCTRL = 0x00000000
OSC32KCTRL->XOSC32K = 0x00002082
OSC32KCTRL->CFDCTRL = 0x00000000
OSC32KCTRL->EVCTRL = 0x00000000
OSC32KCTRL->OSCULP32K = 0x00002300
Only gen2 changed which is due to samd51 having more bits in the simple
division register so DIVSEL wasn't necessary, and it didn't have OE set.
2018-06-01 18:02:35 +02:00
Noralf Trønnes
5c6aea9fd8
atmel-samd/samd51: Implement samd.clock
...
Fill out the dummy implementation.
2018-06-01 18:01:08 +02:00
Damien George
7d86ac6c01
stm32: Add network driver for Wiznet5k using MACRAW mode and lwIP.
...
The Wiznet5k series of chips support a MACRAW mode which allows the host to
send and receive Ethernet frames directly. This can be hooked into the
lwIP stack to provide a full "socket" implementation using this Wiznet
Ethernet device. This patch adds support for this feature.
To enable the feature one must add the following to mpconfigboard.mk, or
mpconfigport.mk:
MICROPY_PY_WIZNET5K = 5500
and the following to mpconfigboard.h, or mpconfigport.h:
#define MICROPY_PY_LWIP (1)
After wiring up the module (X5=CS, X4=RST), usage on a pyboard is:
import time, network
nic = network.WIZNET5K(pyb.SPI(1), pyb.Pin.board.X5, pyb.Pin.board.X4)
nic.active(1)
while not nic.isconnected():
time.sleep_ms(50) # needed to poll the NIC
print(nic.ifconfig())
Then use the socket module as usual.
Compared to using the built-in TCP/IP stack on the Wiznet module, some
performance is lost in MACRAW mode: with a lot of memory allocated to lwIP
buffers, lwIP gives Around 750,000 bytes/sec max TCP download, compared
with 1M/sec when using the TCP/IP stack on the Wiznet module.
2018-06-01 14:21:38 +10:00
Damien George
d9f1ecece2
stm32/modnetwork: Provide generic implementation of ifconfig method.
...
All it needs is a lwIP netif to function.
2018-06-01 13:33:14 +10:00
Damien George
7437215ad7
stm32/modnetwork: Change base entry of NIC object from type to base.
...
mod_network_nic_type_t doesn't need to be an actual uPy type, it just needs
to be an object.
2018-06-01 13:31:28 +10:00
Damien George
6d87aa54d6
stm32/modnetwork: Don't take netif's down when network is deinited.
...
It should be up to the NIC itself to decide if the network interface is
removed upon soft reset. Some NICs can keep the interface up over a soft
reset, which improves usability of the network.
2018-06-01 13:27:06 +10:00
Radomir Dopieralski
d02899f822
Add gamepad_singleto to root pointers for the nrf port
2018-05-30 23:11:23 +02:00
Radomir Dopieralski
b219ce6d37
Add gamepad_singleton to root pointers
2018-05-30 23:11:22 +02:00
Dan Halbert
eab8e43188
rev E feather M4 express; remove named AREF pins
2018-05-29 20:25:28 -04:00
Damien George
a1acbad27a
stm32/flash: Increase H7 flash size to full 2MiB.
2018-05-30 09:54:51 +10:00
rolandvs
958fa74521
stm32/boards: Ensure USB OTG power is off for NUCLEO_F767ZI.
...
And update the GPIO init for NUCLEO_H743ZI to consistently use the mphal
functions.
2018-05-30 09:51:19 +10:00
rolandvs
50bc34d4a4
stm32/boards: Split combined alt-func labels and fix some other errors.
...
Pins with multiple alt-funcs for the same peripheral (eg USART_CTS_NSS)
need to be split into individual alt-funcs for make-pins.py to work
correctly.
This patch changes the following:
- Split `..._CTS_NSS` into `..._CTS/..._NSS`
- Split `..._RTS_DE` into `..._RTS/..._DE`
- Split `JTDO_SWO` into `JTDO/TRACESWO` for consistency
- Fixed `TRACECK` to `TRACECLK` for consistency
2018-05-29 21:37:49 +10:00
Damien George
98d1609358
stm32/README: Update to include STM32F0 in list of supported MCUs.
2018-05-28 22:04:08 +10:00
Damien George
e681372017
stm32/boards: Add NUCLEO_F091RC board configuration files.
2018-05-28 21:49:49 +10:00
Damien George
1163400039
stm32/boards: Add alt-func CSV list and linker script for STM32F091.
2018-05-28 21:49:49 +10:00
Damien George
ea7e747979
stm32: Add support for STM32F0 MCUs.
2018-05-28 21:49:49 +10:00
Damien George
4a7d157a5b
stm32/boards: Add startup_stm32f0.s for STM32F0 MCUs.
...
Sourced from STM32Cube_FW_F0_V1.9.0.
2018-05-28 21:49:49 +10:00
Damien George
6d83468a30
stm32: Allow a board to disable MICROPY_VFS_FAT.
2018-05-28 21:46:20 +10:00
Damien George
5c0685912f
stm32/timer: Make timer_get_source_freq more efficient by using regs.
...
Use direct register access to get the APB clock divider. This reduces code
size and makes the code more efficient.
2018-05-28 21:46:20 +10:00
Damien George
070937fe93
stm32: Add support for Cortex-M0 CPUs.
2018-05-28 21:46:20 +10:00
Damien George
f497723802
stm32: Allow to have no storage support if there are no block devices.
...
If no block devices are defined by a board then storage support will be
disabled. This means there is no filesystem provided by either the
internal flash or external SPI flash. But the VFS system can still be
enabled and filesystems provided on external devices like an SD card.
2018-05-28 21:45:46 +10:00
Damien George
aa4a7a8732
stm32/usb: Guard USB device code with #if for whether USB is enabled.
...
With this change, all the USB source code can now be passed through the
compiler even if the MCU does not have a USB peripheral.
2018-05-28 21:45:46 +10:00
Nick Moore
ef4c8e6e97
esp32: Silence ESP-IDF log messages when in raw REPL mode.
...
This prevents clients such as ampy, mpy-utils, etc getting confused by
extraneous data.
2018-05-28 20:15:08 +10:00
Dan Halbert
754c36bb37
Merge pull request #867 from dhalbert/fix_pirkey_apa102
...
3.0 pirkey build including appropriate frozen modules
2018-05-24 22:07:14 -04:00
Dan Halbert
ee896cdd41
restore I2C and UART. Don't do port.c resets and inits for modules that are not available.
2018-05-24 20:20:18 -04:00
Scott Shawcroft
42bf3a1306
Remove asf3 nvm code.
2018-05-24 13:14:40 -07:00
Dan Halbert
b9f36184f5
refine pirkey build
2018-05-24 13:28:03 -04:00
Damien George
15ddc20436
stm32: Add new component, the mboot bootloader.
...
Mboot is a custom bootloader for STM32 MCUs. It can provide a USB DFU
interface on either the FS or HS peripherals, as well as a custom I2C
bootloader interface.
2018-05-24 23:21:19 +10:00
Damien George
f47eeab0ad
stm32: Add low-level hardware I2C slave driver.
2018-05-24 23:11:13 +10:00
Damien George
4200018a05
stm32: Remove unneeded HTML release notes from usbdev and usbhost dirs.
...
These files provide no additional information, all the version and license
information is captured in the relevant files in these subdirectories.
Thanks to @JoeSc for the original patch.
2018-05-24 11:28:54 +10:00
Dan Halbert
083f91363a
pirkey APA102 defs were commented out in mpconfigboard.h
2018-05-23 18:21:07 -04:00
Scott Shawcroft
aa86a1457f
Use merged in FreeTouch
2018-05-23 11:57:35 -07:00
Dan Halbert
6af5fc2796
Merge pull request #861 from tannewt/touchio3
...
Turn on touchio for M0 boards.
2018-05-23 14:20:15 -04:00
Scott Shawcroft
641caaa6dd
Gain space back in non-Express builds by using -finline-limit
2018-05-23 10:36:59 -07:00
Damien George
df9b7e8f24
esp32/esp32.custom_common.ld: Put soc code in iram0.
...
This is what the IDF does, it must be done.
2018-05-23 12:57:50 +10:00
Scott Shawcroft
3607d3ba2c
Correctly reset the PTC
2018-05-22 14:20:35 -07:00
Scott Shawcroft
31bcd1c45c
Fixup gclk init
2018-05-22 13:56:12 -07:00
Scott Shawcroft
99123a8621
Turn on touchio for M0 boards. M4 will come later once its supported
...
by FreeTouch.
Fixes #670
2018-05-22 13:49:08 -07:00
Dan Halbert
22405d6bdb
Merge pull request #860 from dhalbert/3.0-cpx-crickit
...
turn off longint on cpx crickit; update frozen libs
2018-05-22 16:28:42 -04:00
Scott Shawcroft
165b28438a
Merge pull request #854 from python-ugame/extra-override
...
Allow overriding EXTRA_BUILTIN_MODULES in mpconfigboard.h
2018-05-22 10:22:35 -07:00
Dan Halbert
0d7db29630
turn off longint on cpx crickit; update frozen libs
2018-05-22 13:03:13 -04:00
Dan Halbert
49a81d5c4b
LONGLONG typo
2018-05-22 09:35:29 -04:00
Dan Halbert
45db48bbaa
make longint choice mechanism more readable
2018-05-22 08:04:14 -04:00
Damien George
20b4b85f72
ports: Enable MICROPY_PY_BUILTINS_ROUND_INT on selected ports.
2018-05-22 14:18:16 +10:00
Dan Halbert
5680933483
refactor longint settings; make crickit cpx build
2018-05-21 23:58:03 -04:00
Damien George
e773a2cdba
stm32/main: Use consistent indenting of macro #if's.
2018-05-22 13:17:03 +10:00
Damien George
f68e722005
stm32/rng: Use Yasmarang for rng_get() if MCU doesn't have HW RNG.
2018-05-22 10:36:03 +10:00
Damien George
cda964198a
stm32: Integrate lwIP as implementation of usocket module.
...
This patch allows to use lwIP as the implementation of the usocket module,
instead of the existing socket-multiplexer that delegates the entire TCP/IP
layer to the NIC itself.
This is disabled by default, and enabled by defining MICROPY_PY_LWIP to 1.
When enabled, the lwIP TCP/IP stack will be included in the build with
default settings for memory usage and performance (see
lwip_inc/lwipopts.h). It is then up to a particular NIC to register itself
with lwIP using the standard lwIP netif API.
2018-05-21 17:36:06 +10:00
Radomir Dopieralski
6a6ab2b0ec
Allow overriding EXTRA_BUILTIN_MODULES in mpconfigboard.h
...
Some boards (like the uGame10) may want to have their own set of extra
modules. This change lets them override EXTRA_BUILTIN_MODULES in their
mpconfigboard.h and makes the ugame10 board do that.
2018-05-21 09:23:58 +02:00
Damien George
6c955932f3
stm32/rtc: Don't try to set SubSeconds value on RTC.
...
The hardware doesn't allow it, instead the value is reset to 255 upon
setting the other calendar/time values.
2018-05-21 14:08:37 +10:00
Daniel Shaulov
cac2eddc16
minimal/main: Allow to compile without GC enabled.
2018-05-21 13:13:21 +10:00
Damien George
afd0701bf7
esp8266: Change UART(0) to attach to REPL via uos.dupterm interface.
...
This patch makes it so that UART(0) can by dynamically attached to and
detached from the REPL by using the uos.dupterm function. Since WebREPL
uses dupterm slot 0 the UART uses dupterm slot 1 (a slot which is newly
introduced by this patch). UART(0) must now be attached manually in
boot.py (or otherwise) and inisetup.py is changed to provide code to do
this. For example, to attach use:
import uos, machine
uart = machine.UART(0, 115200)
uos.dupterm(uart, 1)
and to detach use:
uos.dupterm(None, 1)
When attached, all incoming chars on UART(0) go straight to stdin so
uart.read() will always return None. Use sys.stdin.read() if it's needed
to read characters from the UART(0) while it's also used for the REPL (or
detach, read, then reattach). When detached the UART(0) can be used for
other purposes.
If there are no objects in any of the dupterm slots when the REPL is
started (on hard or soft reset) then UART(0) is automatically attached.
Without this, the only way to recover a board without a REPL would be to
completely erase and reflash (which would install the default boot.py which
attaches the REPL).
2018-05-21 11:31:59 +10:00
Damien George
2923671a0c
esp32/Makefile: Update to latest ESP IDF version.
2018-05-21 11:28:36 +10:00
Paul Sokolovsky
478410b409
zephyr/Makefile: Add kobj_types_h_target to Z_EXPORTS.
...
New generated Zephyr header file, without it build breaks.
2018-05-21 10:35:16 +10:00
Paul Sokolovsky
5a023372df
zephyr: Add prj_disco_l475_iot1.conf with sensor drivers.
2018-05-21 10:35:16 +10:00
Paul Sokolovsky
7afbc49863
zephyr/prj_base.conf: Enable DHCP and group static IPs together.
...
Add CONFIG_NET_DHCPV4, which, after
https://github.com/zephyrproject-rtos/zephyr/pull/5750 works as follows:
static addresses are configured after boot, and DHCP requests are sent
at the same time. If valid DHCP reply is received, it overrides static
addresses.
This setup works out of the box for both direct connection to a
workstation (DHCP server usually is not available) and for connection
to a router (DHCP is available and required).
2018-05-21 10:35:16 +10:00
Paul Sokolovsky
0e52ee957d
zephyr/modzsensor: Zephyr sensor subsystem bindings.
2018-05-21 10:35:16 +10:00
Paul Sokolovsky
080b0be1c8
zephyr/mpconfigport.h: Enable uhashlib and ubinascii modules.
...
To be able to use data integrity checks in various tests.
2018-05-21 10:35:16 +10:00
Paul Sokolovsky
9480c188e8
zephyr/main: After builtin testsuite, drop to REPL.
...
It makes sense to make even testsuite-enabled builds be suitable for
interactive use.
2018-05-21 10:35:16 +10:00
Paul Sokolovsky
1050045979
zephyr/README: Hint about existence of qemu_x86_nommu.
2018-05-21 10:35:16 +10:00
Tobias Badertscher
769e37b646
stm32/boards: Add config files for new board, STM32L496GDISC.
2018-05-18 22:39:49 +10:00
Tobias Badertscher
4005c63571
stm32/boards: Add board ld and af.csv files for STM32L496 MCU.
2018-05-18 22:39:44 +10:00
Tobias Badertscher
708cdb6276
stm32: Add support for STM32L496 MCU.
2018-05-18 22:37:30 +10:00
Noralf Trønnes
cf33ad9a54
atmel-samd/samd21: Enable long int on Express boards
...
This is necessary for using 1970 epoch in the time module.
2018-05-18 12:35:26 +02:00
Matt Land
06b293af29
pirkey, trinket, ugame
2018-05-17 13:56:10 -04:00
Matt Land
a84845c0ae
itsbitsy, metro
2018-05-17 13:48:33 -04:00
Matt Land
173a0a5faa
arduino, circuitplayground, feather boards
2018-05-17 13:42:08 -04:00
Matt Land
fc2b4526d3
worked
2018-05-17 13:33:26 -04:00
Matt Land
e1cccd3dac
rename to UART
2018-05-17 13:21:15 -04:00
Matt Land
2210fc60b1
Merge branch 'master' of https://github.com/adafruit/circuitpython into feature-default-serial
2018-05-17 13:08:43 -04:00
Matt Land
c846f4bdae
remove newline
2018-05-17 12:17:06 -04:00
Matt Land
4fd4adf974
not working
2018-05-17 12:14:51 -04:00
Damien George
58331e3c28
esp8266/modmachine: Allow I2C and SPI to be configured out of the build.
...
I2C costs about 3000 bytes of code, and SPI costs about 4400 bytes.
2018-05-17 23:37:12 +10:00
Damien George
dd13065843
esp8266/modnetwork: Raise ValueError when getting invalid WLAN id.
...
Instead of crashing due to out-of-bounds array access. Fixes #3348 .
2018-05-17 22:12:24 +10:00
Damien George
f8a5cd24d8
esp8266/modnetwork: Return empty str for hostname if STA is inactive.
...
Instead of crashing due to NULL pointer dereference. Fixes issue #3341 .
2018-05-17 22:11:22 +10:00
hathach
6d4a2f5524
Merge branch 'master' into usbboot
2018-05-17 15:23:45 +07:00
hathach
52ebfd07a5
update nrfutil to 0.5.2d with singlebank option
2018-05-17 15:20:07 +07:00
Damien George
94a79f340d
esp8266/mpconfigport.h: Add some weak links to common Python modules.
...
To make it easier/simpler to write code that can run under both CPython and
on an ESP8266 board.
2018-05-17 13:27:18 +10:00
Matt Land
30c625ff46
Merge branch 'feature-i2c-gemma' into feature-default-spi-circuit-playground
2018-05-16 17:58:03 -04:00
Matt Land
0511becd55
Merge branch 'master' of https://github.com/adafruit/circuitpython into feature-i2c-gemma
2018-05-16 17:55:43 -04:00
Scott Shawcroft
6a8db03ade
Merge pull request #838 from rhooper/master
...
add supervisor.reload() to soft reboot from code
2018-05-16 17:52:16 -04:00
Matt Land
b9b742cc69
add spi def to all boards pins file
2018-05-16 17:43:14 -04:00
Matt Land
c2fa892a02
fix formatting
2018-05-16 17:38:44 -04:00
Matt Land
cc52f8efd9
Merge branch 'feature-i2c-gemma' into feature-default-spi-circuit-playground
2018-05-16 17:32:50 -04:00
Matt Land
0a185c4d2d
Merge branch 'master' of https://github.com/adafruit/circuitpython into feature-i2c-gemma
2018-05-16 17:07:58 -04:00
Matt Land
e8e75c056a
For the two boards without SCL and SDA can you still add the board global entry for I2C? That way they'll raise the NotImplementedError with the better message instead of a NameError.
2018-05-16 17:02:41 -04:00
Jerry Needell
4f93467841
set #define MICROPY_USE_INTERNAL_ERRNO (0) in mpconfigport for ESP8266 to fix compile error
2018-05-16 16:10:32 -04:00
Matt Land
de885e81b1
Merge branch 'feature-i2c-gemma' into feature-default-spi-circuit-playground
2018-05-16 16:07:55 -04:00
Matt Land
8a351595ef
formatting, trailing newlines
2018-05-16 15:57:25 -04:00
Matt Land
2c067edf54
used pins.c instead of README.rst
2018-05-16 15:54:01 -04:00
Matt Land
3144654854
SPI for all boards
2018-05-16 15:36:36 -04:00
Matt Land
244866c2c3
spi on much
2018-05-16 15:25:24 -04:00
Matt Land
10888be8e8
fixed pins
2018-05-16 15:07:12 -04:00
Matt Land
8d1d821876
pin issue
2018-05-16 14:58:57 -04:00
Scott Shawcroft
99e34e38eb
Merge pull request #829 from jerryneedell/jerryn_i2c
...
add keyword timeout to I2C -- only used for bitbangioi
2018-05-16 14:52:11 -04:00