Git Product home page Git Product logo

arduinocore-samd's Introduction

Arduino Core for MCCI Catena® IoT Nodes based on the SAMD21 CPU

This repository contains the source code and configuration files of the Arduino Core for MCCI Catena IoT devices. It is based on the Arduino core for Atmel's SAMD21 processor (used on the Arduino/Genuino Zero, MKR1000 and MKRZero boards), as extended by Adafruit for their SAMD Boards such as the Feather M0, and further extended by MCCI to support its MCCI Catena LoRaWAN® technology boards.

GitHub release GitHub commits

Contents:

Installing this Package

Installing from the IDE

The easy approach is to install the package following the instructions given here:

https://github.com/mcci-catena/arduino-boards/blob/master/README.md

However, if you need to development, it's more complicated. See the following section.

Installing a Development Copy of this BSP

If you want to develop and test changes to this package, we suggest the following.

  1. Install the current release from the standard location using the Arduino Tools>Boards>Boards Manager... menu. This installs tools and so forth.

  2. Select a board supported by this package.

  3. Create an empty sketch with Arduino File>New, and check that you can build.

  4. Close the Arduino IDE.

  5. Clone this repo to a convenient spot on your computer.

  6. Open a command window and go to the Arduino board installation directory. It will be one of the following.

    System Location
    Windows 7 through 10 c:\Users\username\AppData\Local\Arduino15. If you're using git bash, you can also use ~/AppData/Local/Arduino15
    macOS ~/Library/Arduino15
    Linux ~/.arduino15
  7. From this location, change directory to packages/mcci/samd.

  8. Look at the directory contents with ls. You'll see a directory named like a version number, for example 1.2.0.

  9. Move the directory you just found away from the samd directory. It's convenient to have it around, so we suggest that you not delete it.

  10. Create a symbolic link to the sandbox you created in step (3) above. On macOS and Linux, this is done using the ln -s command. On Windows 10, this is done with the mklink /d command. (On older versions of Windows, unless you're very experienced, you might want to use a Linux VM in VirtualBox -- we can't advise on the best way to do this.)

    • On any system you can also simply move the old directory out of the way, and then move your sandbox in. The old directory cannot simply be renamed packages/mcci/samd, but it can be put (for example) in packages/mcci/hide-samd-1.2.0 (or whatever version it was). After moving the old directory away, you can move the repo that you cloned in step 5, above, into the packages/mcci/samd directory using a suitable version number.
  11. Open the Arduino IDE.

  12. Use the menu File>New to create an empty sketch (or reuse the sketch from step 3).

  13. Make sure the board you want to develop for is selected in Tools>Boards.

  14. Make changes and build.

Remember to restart the IDE whenever you change platform.txt, boards.txt or programmers.txt.

Caution: If you update your BSP from the IDE, your changes may be discarded.

Bugs or Issues

If you find a bug you can submit an issue here on GitHub:

github.com/mcci-catena/ArduinoCore-samd/issues

Before posting a new issue, please check if the same problem has been already reported by someone else to avoid duplicates.

Release History

  • v2.3.0 adds Catena SAMD driver installers and post installer scripts.

  • v2.2.0 adds support for UI selection of network and subband.

  • v2.1.0 added support for the LoRaWAN Region KR-920 (issue #34). Rename AU921 region to AU915 (retaining CFG_au921 redundant symbol for older LMICs) (#37, #38). Add support for new IDE features for injecting precompiled objects (#39).

  • v2.0.0 makes a major version jump primarily to avoid reusing versions that are used by tags in the repo for Adafruit BSPs. It also adds _mcci_arduino_version (issue #28).

  • v1.3.1 corrected the version in platform.txt, which was missed.

  • v1.3.0 increases the serial port ring-buffer size (issue #26)

  • v1.2.0 adds several features. It moves flags in the link script to accommodate the BME680 BSEC library. It adapts the JSON templating system from the MCCI STM32 BSP. The millis() routine was updated so that the clock value will advance even if interrupts are disabled (issue #17). Properly define the country code for as923jp (issue #13). Fix typo au915 should have been au921(issue #12).

  • v1.1.0 adds support for the MCCI Catena 4420 and 4470. It also adds the ability to select the target LoRaWAN region from the IDE Tools menu (assuming that you're using the MCCI Catena arduino-lmic library). It also fixes the USB product ID numbers to match the official numbers assigned by MCCI release engineering (issue #9).

License and credits

This core has been developed by Arduino LLC in collaboration with Atmel. The copyright notice doesn't include Adafruit, but we think it probably should. Additional work was done by MCCI to incorporate better support LoRaWAN and the MCCI family of SAMD-based LoRa boards.

LGPL License

  Copyright (c) 2015 Arduino LLC.  All rights reserved.
  Portions copyright (c) Adafruit Industries.
  Portions copyright (c) 2017-2019 MCCI Corporation.

  This library is free software; you can redistribute it and/or
  modify it under the terms of the GNU Lesser General Public
  License as published by the Free Software Foundation; either
  version 2.1 of the License, or (at your option) any later version.

  This library is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  See the GNU Lesser General Public License for more details.

  You should have received a copy of the GNU Lesser General Public
  License along with this library; if not, write to the Free Software
  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA

Trademark Acknowledgements

MCCI and MCCI Catena are registered trademarks of MCCI Corporation. LoRaWAN is a registered trademark of the LoRa Alliance. All other trademarks are the properties of their respective owners.

Support Open-Source Software, Hardware, and Community IoT

Everyone at MCCI invests time and resources providing this open-source code and open-source hardware. MCCI is also the principal corporate sponsor of The Things Network New York and Ithaca. Please support our work by purchasing products from MCCI! Visit our on-line store at store.mcci.com.

arduinocore-samd's People

Contributors

cmaglie avatar aethaniel avatar sandeepmistry avatar ladyada avatar terrillmoore avatar jnthbdn avatar facchinm avatar jcbuda avatar agdl avatar bbx10 avatar toddtreece avatar sjpark-mcci avatar paolop74 avatar frazar avatar fede85 avatar dhineshkumarmcci avatar rocketscream avatar tdicola avatar tomkeddie avatar mukeshbharath avatar obsoleted avatar tuxedo0801 avatar sergiotomasello avatar praveena-a-s avatar per1234 avatar legomanww avatar tannewt avatar paintyourdragon avatar mike-dellisanti-bose avatar marcobrianza avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.