summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorScott Shawcroft <[email protected]>2018-11-27 18:07:22 -0800
committerScott Shawcroft <[email protected]>2018-11-27 18:07:22 -0800
commitdb42207fcd6883937e3b13ccbb1e03cfee96f85a (patch)
tree4925b15d337818fd9a852e36740eee5aa2055798 /README.md
parent4ec7dba453d414d0c0c67c6f5bab5a9ca9eba388 (diff)
Add a porting doc and make a pass over the others.
Fixes #5
Diffstat (limited to 'README.md')
-rw-r--r--README.md40
1 files changed, 28 insertions, 12 deletions
diff --git a/README.md b/README.md
index 7a61df3f5..8c9f3fc99 100644
--- a/README.md
+++ b/README.md
@@ -11,37 +11,38 @@
- [Supported MCUs](#supported-mcus)
- [Toolchains](#toolchains)
- [Getting Started](#getting-started)
+- [Uses](#uses)
+- [Porting](#porting)
- [License](#license)
-- [How Can I Help](#how-can-i-help)
- - [Donate Time](#donate-time)
- - [Donate Money](#donate-money)
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
tinyusb is an open-source (BSD-licensed) USB Host/Device/OTG stack for embedded micro-controllers, especially ARM MCUs. It is designed to be user-friendly in term of configuration and out-of-the-box running experience.
-In addition to running without an RTOS, tinyusb is an OS-awared stack that can run across RTOS vendors. For the purpose of eliminating bugs as soon as possible, the stack is developed using [Test-Driven Development (TDD)](tests/readme.md) approach. More documents and API reference can be found at http://docs.tinyusb.org
+In addition to running without an RTOS, tinyusb can run across multiple RTOS vendors. More documents and API reference can be found at http://docs.tinyusb.org
![tinyusb diagram](http://docs.tinyusb.org/images/tinyusb_overview.png)
## Features ##
-### Host ###
+### Device ###
- HID Mouse
- HID Keyboard
-- HID Generic (comming soon)
-- Communication Device Class (CDC)
+- HID Generic
+- Communication Class (CDC)
- Mass Storage Class (MSC)
-- Hub currnetly only support 1 level of hub (due to my laziness)
-### Device ###
+### Host ###
+
+** Most active development is on the Device stack. The Host stack is largely untested.**
- HID Mouse
- HID Keyboard
-- HID Generic (comming soon)
-- Communication Class (CDC)
+- HID Generic (coming soon)
+- Communication Device Class (CDC)
- Mass Storage Class (MSC)
+- Hub currently only support 1 level of hub (due to my laziness)
### RTOS ###
@@ -49,12 +50,13 @@ Currently the following OS are supported with tinyusb out of the box with a simp
- **None OS**
- **FreeRTOS**
-- **CMSIS RTX**
+- **MyNewt**
### Toolchains ###
You can compile with any of following toolchains, however, the stack requires C99 to build with
+- GCC
- lpcxpresso
- Keil MDK
- IAR Workbench
@@ -67,6 +69,9 @@ The stack supports the following MCUs
- LPC13uxx (12 bit ADC)
- LPC175x_6x
- LPC43xx
+ - MicroChip SAMD21
+ - MicroChip SAMD51
+ - Nordic nRF52840
[Here is the list of supported Boards](boards/readme.md) in the code base
@@ -74,6 +79,17 @@ The stack supports the following MCUs
[Here is the details for getting started](doxygen/getting_started.md) with the stack.
+## Uses ##
+
+TinyUSB is currently used by these other projects:
+
+* [nRF52840 UF2 Bootloader](https://github.com/adafruit/Adafruit_nRF52_Bootloader)
+* [CircuitPython](https://github.com/adafruit/circuitpython)
+
+## Porting ##
+
+Want to help add TinyUSB support for a new MCU? Read [here](doxygen/porting.md) for an explanation on the low-level API needed by TinyUSB.
+
## License ##
BSD license for most of the code base, but each file is individually licensed especially those in *vendor* folder. Please make sure you understand all the license term for files you use in your project. [Full license is here](tinyusb/license.md)