Commit Graph

160 Commits

Author SHA1 Message Date
Scott Shawcroft
324301e3bc
Update tinyusb to include control fixes. 2018-11-23 13:28:10 -08:00
Dan Halbert
31cc71f7fb WIP: bleio revisions 2018-11-20 09:36:45 -05: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
Dan Halbert
64d457dad9 bring bleio PR up to date 2018-11-07 14:12:22 -05:00
arturo182
4bc24c4f60 bleio: Fix errors after rebase 2018-10-21 17:15:27 +02:00
arturo182
d5a71a4b8a nrf: Move bluetooth driver to the 'bluetooth' folder 2018-10-21 15:55:25 +02:00
arturo182
3bd65fbae5 nrf: Move the Peripheral class to bleio as Device
This was the last class from ubluepy and so that module is now gone.
The Device class offers both Peripheral and Central functionality.
See the inline docs for more info.
2018-10-21 15:50:45 +02:00
arturo182
bda734223e nrf: Move the Service class from ubluepy to the shared bleio module 2018-10-21 15:43:51 +02:00
arturo182
cc78249226 nrf: Move the Characteristic class from ubluepy to the shared bleio module 2018-10-21 15:43:48 +02:00
arturo182
61bf4a16a7 nrf: Remove unused ubluepy classes 2018-10-21 15:43:39 +02:00
arturo182
1c6bf9a150 bleio: Move the Scanner class to a shared module 2018-10-21 15:43:29 +02:00
arturo182
7390dc7dab bleio: Move ScanEntry to shared module and add a new AdvertisementData class 2018-10-21 15:43:24 +02:00
arturo182
345334aaf1 bleio: Add a new Address class
Use the new in the Adapter singleton.
2018-10-21 15:43:21 +02:00
arturo182
d5f942a971 bleio: Add a AddressType enum-like class 2018-10-21 15:43:17 +02:00
arturo182
20b8d5169d nrf: Move the Descriptor class from ubluepy to the shared bleio module 2018-10-21 15:43:13 +02:00
arturo182
f4940c9aec nrf: Move the UUID class from ubluepy to the shared bleio module
Also added a UUIDType enum-like class for determining UUID type.
2018-10-21 15:43:08 +02:00
Josh Klar
16ca9c8c7c
Makefile fixes and some docs 2018-10-20 02:43:13 -07:00
Josh Klar
3d7b96aeb1
Add board and pin defs for MakerDiary NRF52840 MDK 2018-10-20 02:43:12 -07:00
Dan Halbert
2262efc311 PulseOut working 2018-10-16 11:05:02 -04:00
hathach
fdd3e91753 changing to nrf uarte, tx works fine 2018-09-24 14:56:52 +07:00
hathach
1df3bcf392 add board.UART() function 2018-09-19 14:40:37 +07:00
Dan Halbert
e335c74ac6 use open-drain capabilities on GPIO; clean up board init; set correct GPIO voltage 2018-09-09 15:01:28 -04:00
Dan Halbert
100603a60b neopixel_write merge; alphabetize stuff in Makefile 2018-09-05 17:38:59 -04:00
Dan Halbert
4c3b4cacfa Merge remote-tracking branch 'adafruit/master' into nrf-pin-claiming 2018-09-05 13:15:22 -04:00
hathach
e17253071e adding neopixel write 2018-09-04 15:51:49 +07:00
Dan Halbert
585597a252 pin files rework; implement pin claiming; add more boards 2018-08-31 18:05:55 -04:00
hathach
1c4accfa39 Merge branch 'nrf52_remove_boot_target' into nrf52_dfu_touch1200 2018-08-21 15:17:03 +07:00
hathach
b7dd33b76e add touch 1200 for dfu-flash 2018-08-21 15:15:44 +07:00
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
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
hathach
0bc3432106 Merge branch 'master' into nrf52_sys_module 2018-08-01 11:53:12 +07:00
hathach
8640d37149 try to address sys module, compile ok 2018-08-01 10:19:20 +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
368d59796f adding usb_hid
compiled with undefined ref
2018-07-27 17:36:41 +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
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
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
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
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
hathach
0e819599e7 Merge branch 'master' into nrf52840_usbboot 2018-07-10 02:02:52 +07:00
hathach
97a1ae911e add family option for uf2 2018-07-10 01:18:14 +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
arturo182
25ece8fb3d nrf: Rewrite the UART HAL using nrfx 2018-07-08 16:42:04 +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
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
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
Scott Shawcroft
dbc977485c
Support gathering register values on nrf. 2018-07-03 06:31:07 -07:00
hathach
b14b28067e Merge branch 'master' into nrf52840_usbboot 2018-07-03 17:29:28 +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
arturo182
178c089045 nrf: Rewrite the I2C common-hal using nrfx 2018-06-28 22:45:02 +02:00
arturo182
af5cb9c492 nrf: Remove unneeded hal files 2018-06-27 21:00:34 +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
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
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
hathach
54547683f9 add uf2, bootloader target 2018-06-25 23:31:14 +07:00
hathach
f5be5ed6ee Merge branch 'master' into nrf52840_usbboot 2018-06-25 17:12:24 +07: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
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
sommersoft
6ee573c7c9
Merge branch 'master' into super_status 2018-03-30 14:27:39 -05:00
sommersoft
8c9cc6b7c0 nrf: changed Status to Runtime; instituted runtime singleton 2018-03-10 01:07:17 +00:00
Dan Halbert
5f101f3535 Add dummy UART implementation to nrf so it builds with UART turned on. Also add OneWire. 2018-02-21 22:53:17 -05:00
sommersoft
5de8df7997 added Status submodule to ports/nrf/common-hal/supervisor; issue #544 2018-02-19 22:27:16 +00:00
Kevin Townsend
fac488fbf8
Merge pull request #617 from arturo182/nrf_gpio_cleanup
nrf: Change pin names on DKs to match silkscreen
2018-02-13 17:54:25 +01:00
arturo182
7579057ee2 nrf: Use -O1 for debug builds
While O0 is great for debugging, the produced binary doesn't fit on the
feather52 anymore.
2018-02-12 22:50:07 +01:00
arturo182
9962ea6449 nrf: Change pin names on DKs to match silkscreen
Quite a big revamp of the make-pins script, it is now used on each
build to generate the pin files, so the static ones are not needed
anymore.
2018-02-12 22:41:19 +01:00
Kevin Townsend
5d99cd0a20
Merge pull request #601 from arturo182/nrf_cleanup
Nrf cleanup
2018-02-12 11:28:47 +01:00
arturo182
29ae4cdd1c nrf: Fix building pca10056 without SD 2018-02-07 22:41:26 +01:00
arturo182
afaee7f782 nrf: Use the shared bitbangio module 2018-02-07 00:03:23 +01:00
arturo182
d1b2f69771 nrf: Use the shared struct module 2018-02-05 20:50:06 +01:00
arturo182
1de2ee6884 nrf: Implement ticks, add gamepad module and example 2018-02-05 20:48:25 +01:00
microbuilder
1276c12097 Enable SD132v2.0.1 BLE and UBLUEPY support by default 2018-01-18 11:32:47 -08:00
Dan Halbert
19d353ccd9 nrf: fixups for changes from 2.2
1. bidirectional SPI support (@microbuilder please check)
2. slight changes in DigitalIO types
3. placeholders (not implemented yet) for single/double-click bootloader support
2018-01-03 16:50:57 -05:00