Hierophect
13d786b2ef
added pin defs
2019-11-21 14:27:59 -05:00
Hierophect
006182f4e8
Remove meowbit for now
2019-11-20 15:56:00 -05:00
Hierophect
d8d95d9998
Minor meowbit changes
2019-11-20 15:55:13 -05:00
Hierophect
cf4a3237e7
Merge remote-tracking branch 'upstream/master' into stm32-meowbit-etc
2019-11-20 15:31:55 -05:00
Hierophect
9764006f81
add F401 pin definition
2019-11-20 15:30:31 -05:00
Hierophect
3d1b6d9fc8
fix typo
2019-11-20 12:07:12 -05:00
Hierophect
bd9893ab98
clean up SPI module readability
2019-11-20 12:00:45 -05:00
Hierophect
0b558e8714
fix error in SPI busclock selection
2019-11-20 11:34:49 -05:00
Dan Halbert
1a22d8a0f2
Merge pull request #2291 from hierophect/stm32-neopixel
...
STM32: Neopixel support
2019-11-18 23:45:09 -05:00
Hierophect
4a25c2344e
implement os urandom
2019-11-18 18:27:25 -05:00
Hierophect
256abf5505
Add board folders
2019-11-18 16:13:27 -05:00
Hierophect
a4797327cd
add microcontroller toggles for status LED
2019-11-18 13:51:59 -05:00
Jeff Epler
7f744a2369
Supervisor: move most of systick to the supervisor
...
This code is shared by most parts, except where not all the #ifdefs
inside the tick function were present in all ports. This mostly would
have broken gamepad tick support on non-samd ports.
The "ms32" and "ms64" variants of the tick functions are introduced
because there is no 64-bit atomic read. Disabling interrupts avoids
a low probability bug where milliseconds could be off by ~49.5 days
once every ~49.5 days (2^32 ms).
Avoiding disabling interrupts when only the low 32 bits are needed is a minor
optimization.
Testing performed: on metro m4 express, USB still works and
time.monotonic_ns() still counts up
2019-11-18 11:01:23 -06:00
Hierophect
51078cc38f
timing tweaks with testing
2019-11-15 17:17:05 -05:00
Hierophect
98fd372d5b
Add missing define
2019-11-15 13:19:37 -05:00
Hierophect
e1579a1cc5
Merge branch 'pin-commonhal-additions' into stm32-neopixel
2019-11-15 12:47:23 -05:00
Hierophect
de5691acf5
Add never_reset and reset to pin common hal, adjust files
2019-11-15 12:47:00 -05:00
Hierophect
6cce2d6d14
Implement Neopixel write, add defaults to f405
2019-11-15 12:28:16 -05:00
Hierophect
6e96b1945e
Raise clock speed, adjust divisors
2019-11-13 13:18:43 -05:00
Dan Halbert
166518fc9b
Merge pull request #2272 from hierophect/stm32-microcontroller-fillout
...
STM32: add us delay
2019-11-12 18:03:55 -05:00
Hierophect
e40bd07fcf
fix conflicting definitions on discovery boards
2019-11-12 13:03:13 -05:00
Hierophect
bbc366b85b
Style overhaul, extra error checks
2019-11-12 11:26:14 -05:00
Hierophect
ed3e377390
Merge remote-tracking branch 'upstream/master' into stm32-uart
2019-11-12 09:49:17 -05:00
Hierophect
14b70806a5
de-init check
2019-11-11 15:47:47 -05:00
Hierophect
e076f14ea3
text fixes
2019-11-11 15:32:47 -05:00
Hierophect
c38086fc4a
fix typo
2019-11-11 15:04:22 -05:00
Hierophect
3f8b4727f5
Revise us delay to include interrupt/non-interrupt versions
2019-11-11 14:58:45 -05:00
Hierophect
d42c4b082d
revert sublime being a dumb
2019-11-06 14:55:16 -05:00
Hierophect
39dbcb529a
revert git being a dumb
2019-11-06 14:54:07 -05:00
Hierophect
adfef8b520
Merge remote-tracking branch 'upstream/master' into stm32-dac-deinit
2019-11-06 14:46:56 -05:00
Dan Halbert
b8373aca0c
Merge pull request #2266 from hierophect/stm32-defaults
...
STM32: Add board defaults
2019-11-06 14:29:29 -05:00
Hierophect
e66fcb5e1f
add missing newline
2019-11-05 16:32:34 -05:00
Hierophect
8a098c154d
Fix unsaved file
2019-11-05 16:25:30 -05:00
Hierophect
1a7060af25
Add us delay
2019-11-05 16:23:59 -05:00
Hierophect
0b85c4bb20
Merge remote-tracking branch 'upstream/master' into stm32-uart
2019-11-05 10:56:57 -05:00
Hierophect
dfe73a063d
Fix error that would carry past python exception
2019-11-05 10:50:57 -05:00
Dan Halbert
f185b30d71
Update PWMOut.h
2019-11-04 20:41:54 -05:00
Hierophect
38e38b9f8d
remove redundant comment
2019-11-04 17:20:10 -05:00
Hierophect
632b3267dc
Add auto-shutoff of DAC when channels de-inited
2019-11-04 17:08:00 -05:00
Hierophect
9d4c95deeb
Revert "Add default defines"
...
This reverts commit 15d8d88950
.
2019-11-04 16:45:19 -05:00
Hierophect
40f920fbdf
complete attribution edits
2019-11-04 14:39:41 -05:00
Hierophect
ca1eb4def1
Add other board globals
2019-11-04 14:35:23 -05:00
Hierophect
2111a7c4cf
Merge branch 'master' into stm32-defaults
2019-11-04 14:32:00 -05:00
Hierophect
3526fed611
add board global
2019-11-04 14:31:57 -05:00
Hierophect
15d8d88950
Add default defines
2019-11-04 14:15:26 -05:00
Hierophect
ccff7e70ca
Style changes and refactors
2019-11-04 11:30:49 -05:00
Hierophect
1c4f49bb83
attribution changes
2019-11-03 16:33:01 -05:00
Hierophect
8d0cc71aee
Add write protections, fix edge case read halt
2019-11-01 17:00:01 -04:00
Hierophect
e605ce6317
Debugging additions
2019-11-01 14:30:28 -04:00
Hierophect
0a1a12b867
Revise PWM period generation algorithm to match other ports
2019-10-31 16:59:44 -04:00
Hierophect
c78d79938d
remove debug output
2019-10-30 17:07:16 -04:00
Hierophect
a8070a4185
Revise IRQ managment, add restart on failure
2019-10-30 16:59:53 -04:00
Hierophect
bb8046dbb3
remove debug messages
2019-10-30 10:00:50 -04:00
Hierophect
6b0cb87cbf
Dynamic prescaler adjustment, adjust pulse resolution
2019-10-29 17:17:26 -04:00
Hierophect
4de5a33a43
Style changes
2019-10-29 10:24:26 -04:00
Hierophect
33deb6752b
Add harder resets to UART
2019-10-29 09:41:52 -04:00
Hierophect
3034cfc82f
Merge remote-tracking branch 'upstream/master' into stm32-uart
2019-10-28 12:16:01 -04:00
Hierophect
c0f1ce590e
Add support across dev boards
2019-10-27 20:17:10 -04:00
Hierophect
7fd5e9b867
Fix issue with changing frequency
2019-10-27 19:41:01 -04:00
Hierophect
0cd8c3d5a8
Add all basic functions, never reset, dynamic pulse changes
2019-10-27 19:17:01 -04:00
Hierophect
cb491e855c
WIP
2019-10-27 14:31:25 -04:00
Hierophect
cf7efee0d3
Add f405 pindefs
2019-10-24 18:00:50 -04:00
Hierophect
7f769580bd
Merge remote-tracking branch 'upstream/master' into stm32-PWM
2019-10-24 14:11:51 -04:00
Hierophect
511071e1ba
Rename feather across folders and config, fix makefile def issue
2019-10-24 12:51:40 -04:00
Hierophect
64337775f8
PWM Base functionality testing for F405
2019-10-24 12:43:34 -04:00
Hierophect
1d8a75fa3f
minor WIP
2019-10-22 13:11:45 -04:00
Hierophect
ca4b7f81e5
Initial template setup
2019-10-22 11:09:46 -04:00
Hierophect
a596213526
non-functional WIP
2019-10-21 17:06:40 -04:00
Dan Halbert
7b79ac3739
Parameterize linker script
2019-10-20 23:50:12 -04:00
Hierophect
af28474b06
IRQ priority and port clearing scratchwork
2019-10-18 14:10:41 -04:00
Kamil Tomaszewski
96756b3945
Add functions to get top and limit stack
2019-10-18 11:04:45 +02:00
Hierophect
14c64159c8
Implement requested changes, refactors
2019-10-16 13:50:54 -04:00
Hierophect
323fe418f7
Add support for other F4 MCUs
2019-10-16 13:14:57 -04:00
Hierophect
552900f18e
Merge remote-tracking branch 'upstream/master' into stm32-uart
2019-10-16 12:33:31 -04:00
Hierophect
b4a6246e30
Cleanup
2019-10-16 12:32:34 -04:00
Hierophect
14eefaafee
Hack in interrupt support
2019-10-16 11:33:55 -04:00
Dan Halbert
c1ab2486f9
return chip vcc value
2019-10-12 15:42:15 -04:00
Hierophect
1140ff5cd5
WIP
2019-10-11 15:47:55 -04:00
Hierophect
bfebbaee32
Merge remote-tracking branch 'upstream/master' into stm32-uart
2019-10-10 14:28:19 -04:00
Hierophect
06b2fed518
improve macro readability
2019-10-09 16:06:23 -04:00
hierophect
4ce7a4cfdb
Merge branch 'master' into stm32-DAC
2019-10-09 15:47:43 -04:00
Hierophect
5f33c542b4
Fix include issues
2019-10-09 14:52:30 -04:00
Hierophect
8a94f25181
Text fixes
2019-10-09 13:54:40 -04:00
Hierophect
cb0ed264c4
Implement DAC
2019-10-09 13:34:20 -04:00
Hierophect
f58d54cd22
Preliminary read system, not buffered
2019-10-08 16:03:51 -04:00
Hierophect
cc3a17845c
Fix USB issues, frequency macro, F412 tests
2019-10-07 14:22:12 -04:00
hierophect
59ed879c8f
Merge pull request #2197 from hierophect/always-build-modules
...
Sort some modules into ALWAYS-BUILD in mpconfig
2019-10-07 09:09:28 -04:00
Hierophect
0b85172ba6
WIP
2019-10-04 14:37:18 -04:00
Hierophect
51901f7de0
Add peripheral definitions
2019-10-04 11:42:38 -04:00
Hierophect
dc4abb922b
Revert accidental OS delete
2019-10-03 15:40:46 -04:00
hierophect
f4922a530a
Merge pull request #2186 from hierophect/stm32-spi-flash
...
STM32: SPI Flash
2019-10-03 15:32:56 -04:00
Hierophect
7a2f60c43d
Add Always Build flag, remove redundancy
2019-10-03 15:23:45 -04:00
Hierophect
eacdb1da6e
Disable timeout, remove redundancy
2019-10-03 14:43:25 -04:00
Dan Halbert
463415a7ef
update stm32f4 port to use tinyusb synopsys tree
2019-10-03 13:26:03 -04:00
Hierophect
83c49a5c80
Increase SPI timeout duration
2019-10-03 09:14:54 -04:00
Hierophect
5a6194839b
Timeout fix for I2C device testing
2019-10-02 17:59:42 -04:00
Hierophect
86305bfdfe
Make all errors value errors
2019-10-02 17:32:54 -04:00
Hierophect
9aa6d215fd
Add some definitions for when F412 can be implemented
2019-10-02 16:03:22 -04:00
Hierophect
5a2f82095a
Implement SPI flash settings, bugfix for SPI pin assignment
2019-10-02 15:17:49 -04:00
Hierophect
b66700720b
improve error readability
2019-09-30 18:05:07 -04:00
Hierophect
1f90cffc89
protect against edge case
2019-09-30 13:33:20 -04:00
Hierophect
56eb9666ea
Implement never-reset, fix F412
2019-09-30 11:35:40 -04:00
Hierophect
a475b667b5
Clean up debugging messages, remove shortcuts
2019-09-30 11:04:09 -04:00
Hierophect
492bc3eedc
Expand pin definitions for all boards
2019-09-30 10:45:02 -04:00
Hierophect
e2d0ad6adc
Add settings reconfiguration
2019-09-29 15:01:32 -04:00
Hierophect
bf7b841020
Further reversion
2019-09-29 13:22:12 -04:00
Hierophect
89315999e2
Fix bad returns, revert flash changes
2019-09-29 13:18:43 -04:00
Hierophect
270396a882
Refine SPI settings for testing
2019-09-29 13:01:27 -04:00
Hierophect
d7443fce54
First implementation of read write
2019-09-27 17:59:55 -04:00
Hierophect
ad33950966
Flash memory changes - non functional
2019-09-27 11:00:09 -04:00
Hierophect
51df8d18b4
Merge remote-tracking branch 'upstream/master' into stm32-spi
2019-09-26 13:44:24 -04:00
hierophect
f4a31a7843
Update PID to suggestion
...
USB_PID = 0x805C (Pyboard
Co-Authored-By: Scott Shawcroft <scott@tannewt.org>
2019-09-26 11:38:08 -04:00
Hierophect
f08127bfcc
WIP
2019-09-26 11:35:08 -04:00
Hierophect
a926d01509
reorganize pins
2019-09-25 11:53:49 -04:00
Hierophect
f286737868
add peripheral definitions
2019-09-25 11:37:27 -04:00
Hierophect
6058677979
whitespace fix
2019-09-24 16:10:43 -04:00
Hierophect
742e747609
Implement another USB ID
2019-09-24 14:53:56 -04:00
Hierophect
c3baf286c1
Implement correct USB IDs
2019-09-24 14:51:57 -04:00
Hierophect
d597410330
implement suggested changes
2019-09-24 14:15:04 -04:00
Hierophect
dc1109dba7
add feather support
2019-09-24 14:07:03 -04:00
Hierophect
61a45cdaed
clock fixes
2019-09-24 13:17:46 -04:00
Hierophect
31a22858d5
text fixes
2019-09-24 10:05:40 -04:00
Hierophect
2b65a0e95f
WIP
2019-09-23 17:40:28 -04:00
Hierophect
f1cd1c5d4d
minor edits
2019-09-23 13:30:37 -04:00
Hierophect
19cf716461
Fix missing items
2019-09-23 12:14:27 -04:00
Hierophect
60bb6acf38
Add F405 support
2019-09-23 11:59:14 -04:00
Hierophect
fd1a257df3
Merge branch 'master' into stm32-f405-support
2019-09-23 09:36:03 -04:00
Limor "Ladyada" Fried
7f1bc48a88
Merge pull request #2173 from hierophect/stm32-os
...
STM32: Add OS and Struct support
2019-09-20 16:42:31 -04:00
Hierophect
200c474a13
correct typo
2019-09-20 15:55:11 -04:00
Hierophect
00f1e4f1ad
WIP
2019-09-20 15:54:34 -04:00
Limor "Ladyada" Fried
8d16379634
Merge pull request #2151 from hierophect/stm32-peripherals
...
STM32: peripheral management
2019-09-20 15:40:25 -04:00
Hierophect
9af5f3a7a7
Add OS and struct support
2019-09-20 14:51:23 -04:00
Hierophect
ef15ebe8c7
Repeated initialization protection, cleanup
2019-09-20 14:33:37 -04:00
Hierophect
7cea078494
Added existance check
2019-09-20 12:39:48 -04:00
Hierophect
18c5be8835
QOL pin adds
2019-09-19 17:01:25 -04:00
Hierophect
9da5723c59
F412 support, cleanup
2019-09-19 16:32:38 -04:00
Hierophect
c12860ff7d
the code equivalent of smacking something really hard with a wrench
2019-09-19 16:10:26 -04:00
Hierophect
b325eadc33
various failed attempts to get I2C to reset
2019-09-19 16:02:52 -04:00
Hierophect
d56b62e44c
Fix crash related to improper instance assignment
2019-09-19 14:15:12 -04:00
Hierophect
c85873e4e6
index fix
2019-09-19 12:45:47 -04:00
Hierophect
60985968a8
Reorganize storage to per-pin
2019-09-19 12:18:18 -04:00
Hierophect
12cd009bb9
WIP
2019-09-18 16:49:15 -04:00
Hierophect
bf62477ff9
Merge branch 'stm32-analogio' into stm32-peripherals
2019-09-18 13:45:22 -04:00
Hierophect
cd5ec365d3
Cleanup
2019-09-18 13:44:08 -04:00
Hierophect
d60ecc5e3d
Rework I2C peripheral check
2019-09-18 13:42:54 -04:00
Hierophect
69a0bfaf34
Merge branch 'stm32-analogio' into stm32-peripherals
2019-09-18 12:15:44 -04:00
Hierophect
c9b86111f4
text fix
2019-09-18 11:45:21 -04:00
Hierophect
601c3ea8dc
minor HAL swap
2019-09-17 17:54:29 -04:00
Hierophect
48ae684c6e
Adjust settings to support F412
2019-09-17 17:46:44 -04:00
Hierophect
863655044e
Re-expand pin reset
2019-09-17 16:52:44 -04:00
Hierophect
71531dd4d1
Fix out of date HAL inputs in DigitalIO
2019-09-17 16:15:39 -04:00
Hierophect
7c713b9e3b
Fix crash related to ADC timeout
2019-09-17 15:45:15 -04:00
Hierophect
168823e096
Retract pin resets, revert to HAL, QOL changes
2019-09-17 15:07:08 -04:00
Hierophect
78de4b70ed
Implemented working I2C on F412.
2019-09-13 14:00:53 -04:00
Hierophect
d96aa8dac4
Merge branch 'stm32-analogio' into stm32-peripherals
2019-09-13 12:10:54 -04:00
Hierophect
f5cb2cc14e
First pass at I2C pin authentication
2019-09-12 19:00:02 -04:00
Hierophect
6b6178613d
WIP
2019-09-12 16:00:01 -04:00
Hierophect
1fda6d4a48
Merge branch 'stm32-pin-remap' into stm32-peripherals
2019-09-12 14:27:24 -04:00
Hierophect
55eb8dcfa0
ADC unit select, reset bugfix
2019-09-12 13:47:01 -04:00
Hierophect
57ce381bcd
disable claim pin for debug
2019-09-11 17:26:33 -04:00
Hierophect
a59a8e7a19
Merge branch 'stm32-pin-remap' into stm32-analogio
2019-09-11 14:11:47 -04:00
Hierophect
6e007f4e8c
text fixes
2019-09-11 14:09:57 -04:00
Hierophect
d888922db6
minor text fix
2019-09-11 13:55:48 -04:00
Hierophect
3d2a4d4165
Merge branch 'stm32-f412-tinyusb' into stm32-analogio
2019-09-11 13:47:20 -04:00
Hierophect
9e25d9a9be
Support for F412
2019-09-11 13:45:36 -04:00
Hierophect
9f8c8c6504
Compiler level bit packing
2019-09-11 13:12:49 -04:00
Hierophect
37248037d7
Alternative implementation via HAL for readability comparison
2019-09-11 11:35:37 -04:00
Hierophect
99c3cab00f
text fixes
2019-09-10 19:51:26 -04:00
Hierophect
500b21c236
First pass at full LL implementation
2019-09-10 19:48:24 -04:00
Hierophect
49b04f4b77
Minor text fix
2019-09-10 17:52:07 -04:00
Hierophect
c438468a82
Updated VID and PID
2019-09-09 17:05:18 -04:00
Hierophect
d8251ae4ab
Include full descriptor list
2019-09-09 15:01:04 -04:00
Hierophect
129615a724
text fixes
2019-09-09 11:58:27 -04:00
Hierophect
426ddb356e
Add support for F412 via latest tinyusb update
2019-09-09 11:42:55 -04:00
Hierophect
0d2e9c3762
WIP
2019-09-07 15:54:16 -04:00
Hierophect
beb40a62a7
Fix missed shift replacement
2019-09-07 13:19:50 -04:00
Hierophect
642f4535f4
text fixes
2019-09-06 19:44:57 -04:00
Hierophect
4490fb196d
delete analogio for now
2019-09-06 19:42:03 -04:00
Hierophect
a3ed5ec27b
Add latest USB support
2019-09-06 18:02:57 -04:00
Hierophect
589b502bfc
Merge branch 'master' into stm32-analogio
2019-09-06 17:55:33 -04:00
Hierophect
a932d2c4a1
Minor fixes
2019-09-06 17:40:45 -04:00
Hierophect
8c0be5fbe2
Pack pin numbers, add ADC to pin structure, support DigitalIO
2019-09-06 17:30:52 -04:00
Hierophect
3156ee1acb
Re-apply warning as error
2019-09-06 11:28:57 -04:00
Hierophect
ba45f98073
Add basic analogio files
2019-09-06 11:26:20 -04:00
Dan Halbert
b46c8dcc62
Merge pull request #2065 from hierophect/f411re-feature-buildout
...
F411re feature buildout
2019-09-04 15:45:54 -04:00
Hierophect
479b047618
Reverted descriptor changes pending HID restructuring
2019-09-04 13:58:18 -04:00
Scott Shawcroft
36a23e0fe3
Rework refresh API and factor common display stuff out
...
NOT TESTED! Just compiles
Fixes #1691
2019-08-22 14:23:27 -07:00
Scott Shawcroft
c247e7df9c
Begin refresh rework.
2019-08-22 14:08:33 -07:00
Hierophect
e490e6361f
Add warnings, cosmetic fixes, remove vestigial modules
2019-08-19 10:47:18 -04:00
Hierophect
95411a62b3
Cosmetic fixes
2019-08-18 19:08:27 -04:00
Hierophect
7dbf1a8caa
text fixes
2019-08-15 17:56:15 -04:00
Hierophect
1f42ce5f40
QOL fixes, compatibility fixes, attribution
2019-08-15 17:45:40 -04:00
Hierophect
bc7ba33892
Add uid fetch, revert USB hacks
2019-08-15 16:35:01 -04:00
Hierophect
a9d3ad86e5
Fix flash size, add filesystem disable flag
2019-08-15 15:55:33 -04:00
Hierophect
0fdb5a032f
Text fixes
2019-08-15 15:12:50 -04:00
Hierophect
620d3d14dd
Add conditional endpoints to descriptor script
2019-08-15 13:41:51 -04:00
Hierophect
1539dca7f0
Add reset support, minor fixes
2019-08-14 13:14:42 -04:00
Hierophect
c4c55fffb1
Fixed remaining issues with flash organization and writing
2019-08-13 18:05:40 -04:00
Hierophect
300dc68955
Further non-functional flash changes
2019-08-10 18:00:09 -04:00
Hierophect
294d6dc867
Add flash functions and setup, fix msc descriptor bug
2019-08-09 19:58:54 -04:00