@@ -266,18 +266,25 @@ everything else (ie: W) resides in flash (in most cases).
266266
267267#### Windows
268268
269- There are currently four USB composite device combinations that include CDC as well as a CDC only device.
270- Drivers are required for each of these five devices. The CDC only driver is required by the bootloader.
271- The drivers are signed and support both 32 and 64 bit versions of Windows XP (SP3), Vista, 7, 8, and 10.
269+ Prior to core version 1.6.6-mt1, sketches compiled with both CDC and HID USB code by default, thus requiring a CDC
270+ driver for the bootloader and a CDC-HID driver for sketches. Now that PluggableUSB is supported, sketches compile
271+ with only CDC code by default. Thus, only one driver is needed. Since HID and MIDI are currently supported (and
272+ MSD potentially in the future), driver installation will be required for each different combination of USB devices.
273+ There are currently four USB composite device combinations that include CDC as well as a CDC only device. Each
274+ supported combination has a unique USB VID: PID pair, and these are listed in the .inf file. Once the first device
275+ is installed (the CDC only device), future installations * might* be automatic, otherwise, you may direct the
276+ installer to the same .inf file. The drivers are signed and support both 32 and 64 bit versions of Windows XP(SP3),
277+ Vista, 7, 8, and 10.
278+
272279
2732801 . If you do not already have the SAM-BA bootloader installed, see below.
2742812 . Download https://www.mattairtech.com/software/MattairTech_CDC_Driver_Signed.zip and unzip into any folder.
2752823 . Plug in the board while holding down button A to enter the bootloader. The LED should light.
2762834 . Windows will detect the board. Point the installer to the folder from above to install the bootloader driver.
2772845 . If you don't intend on using Arduino, you can skip the rest of this list. See Using Bossac Standalone below.
2782856 . If you do not already have the test firmware installed (comes preinstalled), see Using Bossac Standalone below.
279- 7 . Press the reset button to run the test firmware (blink sketch with CDC-HID ).
280- 8 . Windows will detect the board. Point the installer to the folder from above to install the sketch driver.
286+ 7 . Press the reset button to run the test firmware (blink sketch).
287+ 8 . Windows will detect the board. Point the installer to the above folder to install the sketch driver (if needed) .
2812889 . Continue with SAMD Core Installation below.
282289
283290#### Linux
@@ -291,14 +298,17 @@ The drivers are signed and support both 32 and 64 bit versions of Windows XP (SP
291298
292299#### OS X
293300
301+ UNTESTED
2943021 . As of this writing, only the 256 KB chip variants work with the OS X version of the upload tool, bossac.
2953032 . First, you will need to open boards.txt and change mattairtech_mt_d21e_bl8k.upload.tool to equal arduino: bossac .
2963043 . Open platform.txt and change tools.bossac.path to equal{runtime.tools.bossac-1.6.1-arduino.path}.
297- 4 . No driver installation is needed. You may get a dialog box asking if you wish to open the “Network Preferences”:
305+ 4 . No driver installation is needed.
306+ 5 . Plug in the board. You may get a dialog box asking if you wish to open the “Network Preferences”:
298307 * Click the "Network Preferences..." button, then click "Apply".
299308 * The board will show up as “Not Configured”, but it will work fine.
3003095 . Continue with SAMD Core Installation below.
301310
311+
302312### SAMD Core Installation
303313
304314* To update from a previous version, click on MattairTech SAMD Boards in Boards Manager, then click Update.
@@ -319,6 +329,16 @@ The drivers are signed and support both 32 and 64 bit versions of Windows XP (SP
31932913 . You can now upload your own sketch.
320330
321331
332+ ### Uploading the First Sketch
333+
334+ 1 . In the Arduino IDE 1.6.7 (or above), open File->Examples->01.Basics->Blink.
335+ 2 . Change the three instances of '13' to 'LED_BUILTIN'.
336+ 3 . Be sure the correct options are selected in the Tools menu (see AVR Core Installation above).
337+ 4 . With the board plugged in, select the correct port from Tools->Port.
338+ 5 . Click the Upload button. After compiling, the sketch should be transferred to the board.
339+ 6 . Once the bootloader exits, the blink sketch should be running.
340+
341+
322342## SAM-BA USB CDC Bootloader (Arduino compatible)
323343
324344The SAM-BA bootloader has both a CDC USB interface, and a UART interface (MT-D21E: TX: pin 10, RX: pin 11). It is
@@ -361,6 +381,7 @@ When the Arduino IDE initiates the bootloader, the following procedure is used:
3613813 . The board is reset. The bootloader (which always runs first) detects the blank flah row, so bootloader operation resumes.
3623824 . Opening and closing the port at a baud rate other than 1200bps will not erase or reset the SAMD.
363383
384+
364385### Bootloader Firmware Installation
365386
366387#### Bootloader Installation Using the Arduino IDE
@@ -383,6 +404,7 @@ When the Arduino IDE initiates the bootloader, the following procedure is used:
383404 * You can optionally set the EEPROM bits or anything else. The Arduino installation method uses factory defaults.
3844054 . Continue with driver installation above.
385406
407+
386408### Using Bossac Standalone
387409
388410When using Bossac standalone, you will need to ensure that your application starts at 0x00002000 for 8 KB bootloaders,
@@ -408,13 +430,13 @@ As an example, bossac will be used to upload the test firmware (blink sketch):
4084301 . Download firmware from https://www.mattairtech.com/software/SAM-BA-bootloader-test-firmware.zip and unzip.
4094312 . If you have not already installed the bootloader driver, see Driver Installation above.
4104323 . Be sure there is a binary that matches your chip. On the command line (change the binary to match yours):
411- 4 . On Linux --port might be /dev/ttyACM0. If the device is not found, remove the --port argument for auto-detection.
412433
413434```
414435bossac.exe -d --port=COM5 -U true -i -e -w -v Blink_Demo_ATSAMD21E18A.bin -R
415436```
437+ 4 . On Linux --port might be /dev/ttyACM0. If the device is not found, remove the --port argument for auto-detection.
4164385 . See http://manpages.ubuntu.com/manpages/vivid/man1/bossac.1.html for details.
417- 6 . Continue with the CDC-HID driver installation above (optional) .
439+ 6 . The board should reset automatically and the sketch should be running .
418440
419441
420442
@@ -504,25 +526,29 @@ bossac.exe -d --port=COM5 -U true -i -e -w -v Blink_Demo_ATSAMD21E18A.bin -R
504526
505527## Possible Future Additions
506528
507- * USB Host mode CDC ACM
529+ * SAML21 support in the works
530+ * Timer library in the works (like TimerOne, plus input capture and possibly waveform extensions)
531+ * USB Host mode CDC ACM (partially complete; BSD-like license?)
508532* Features for lower power consumption (library?)
509533* Enhanced SD card library
510534* Optional use of single on-board LED as USB activity LED
511535* Replace pulse with timer capture
512536* MSC (Mass Storage) USB Device Class
513537* Polyphonic tone
514538* Better OS X support
539+ * Wired-AND, Wired-OR for port pins
540+ * High-speed port pin access (IOBUS)
515541* Libraries for some hardware I plan on using:
516- TFT LCD
517- Motor controller
542+ TFT LCD (CFAF128128B-0145T)
543+ Motor controller (LV8711T)
518544 IR decoder
519545 I2S DAC/AMP and I2S MEMS microphone
520546 Battery management IC
521547 XBee/Xbee Pro devices
522548 RS485
523549 Several I2C (Wire) sensor devices:
524- Accelerometer/gyro/ magnetometer
525- Barometer/altimeter
550+ Accelerometer/magnetometer (LSM303CTR)
551+ Barometer/altimeter (LPS22HBTR)
526552 Humidity/temperature
527553 Light/color sensor
528554
0 commit comments