Introducing Adafruit Feather RP2040 Created by Kattni Rembor

Total Page:16

File Type:pdf, Size:1020Kb

Introducing Adafruit Feather RP2040 Created by Kattni Rembor Introducing Adafruit Feather RP2040 Created by Kattni Rembor Last updated on 2021-09-27 01:09:35 PM EDT Guide Contents Guide Contents 2 Overview 6 Pinouts 12 Power Pins and Connections 13 Logic Pins 14 I2C and SPI on RP2040 14 PWM on RP2040 14 Analog Pins 15 Digital Pins 15 CircuitPython Pins vs GPxx Pins 15 CircuitPython I2C, SPI and UART 15 GPIO Pins by Pin Functionality 16 I2C Pins 16 SPI Pins 16 UART Pins 16 PWM Pins 16 Microcontroller and Flash 17 Buttons and RST Pin 17 LEDs 18 STEMMA QT 19 Debug Interfaces 19 Assembly 22 Header Options! 22 Soldering in Plain Headers 25 Prepare the header strip: 25 Add the breakout board: 26 And Solder! 26 Soldering on Female Header 28 Tape In Place 28 Flip & Tack Solder 29 And Solder! 30 Power Management 32 Battery + USB Power 32 Power supplies 33 Measuring Battery 33 ENable pin 34 Alternative Power Options 34 Install CircuitPython 36 CircuitPython Quickstart 36 Safe Mode 37 Entering Safe Mode in CircuitPython 6.x 38 Entering Safe Mode in CircuitPython 7.x 38 In Safe Mode 39 Flash Resetting UF2 39 Installing Mu Editor 40 Download and Install Mu 40 Using Mu 40 Creating and Editing Code 42 Creating Code 42 Editing Code 44 Your code changes are run as soon as the file is done saving. 45 1. Use an editor that writes out the file completely when you save it. 45 © Adafruit Industries https://learn.adafruit.com/adafruit-feather-rp2040-pico Page 2 of 125 2. Eject or Sync the Drive After Writing 46 Oh No I Did Something Wrong and Now The CIRCUITPY Drive Doesn't Show Up!!! 46 Back to Editing Code... 47 Exploring Your First CircuitPython Program 48 Imports & Libraries 48 Setting Up The LED 48 Loop-de-loops 49 What Happens When My Code Finishes Running? 49 What if I don't have the loop? 50 More Changes 51 Naming Your Program File 51 Connecting to the Serial Console 52 Are you using Mu? 52 Setting Permissions on Linux 53 Using Something Else? 54 Interacting with the Serial Console 55 The REPL 59 Returning to the serial console 62 CircuitPython Pins and Modules 63 CircuitPython Pins 63 import board 63 I2C, SPI, and UART 64 What Are All the Available Names? 65 Microcontroller Pin Names 66 CircuitPython Built-In Modules 67 CircuitPython Libraries 68 Installing the CircuitPython Library Bundle 69 Example Files 70 Copying Libraries to Your Board 71 Example: ImportError Due to Missing Library 71 Library Install on Non-Express Boards 73 Updating CircuitPython Libraries/Examples 73 Frequently Asked Questions 74 I have to continue using an older version of CircuitPython; where can I find compatible libraries? 74 Is ESP8266 or ESP32 supported in CircuitPython? Why not? 74 How do I connect to the Internet with CircuitPython? 75 Is there asyncio support in CircuitPython? 76 My RGB NeoPixel/DotStar LED is blinking funny colors - what does it mean? 77 What is a MemoryError? 78 What do I do when I encounter a MemoryError? 78 Can the order of my import statements affect memory? 79 How can I create my own .mpy files? 79 How do I check how much memory I have free? 79 Does CircuitPython support interrupts? 79 Does Feather M0 support WINC1500? 80 Can AVRs such as ATmega328 or ATmega2560 run CircuitPython? 80 Commonly Used Acronyms 80 Welcome to the Community! 81 Adafruit Discord 81 Adafruit Forums 82 Adafruit Github 83 ReadTheDocs 84 © Adafruit Industries https://learn.adafruit.com/adafruit-feather-rp2040-pico Page 3 of 125 Advanced Serial Console on Windows 86 Windows 7 Driver 86 What's the COM? 86 Install Putty 88 Advanced Serial Console on Mac and Linux 90 What's the Port? 90 Connect with screen 92 Permissions on Linux 93 Troubleshooting 96 Always Run the Latest Version of CircuitPython and Libraries 96 I have to continue using CircuitPython 5.x, 4.x, 3.x or 2.x, where can I find compatible libraries? 96 CPLAYBOOT, TRINKETBOOT, FEATHERBOOT, or GEMMABOOT Drive Not Present 96 You may have a different board. 97 MakeCode 97 MacOS 97 Windows 10 97 Windows 7 or 8.1 97 Windows Explorer Locks Up When Accessing boardnameBOOT Drive 98 Copying UF2 to boardnameBOOT Drive Hangs at 0% Copied 99 CIRCUITPY Drive Does Not Appear 99 Device Errors or Problems on Windows 99 Serial Console in Mu Not Displaying Anything 100 CircuitPython RGB Status Light 101 ValueError: Incompatible .mpy file. 101 CIRCUITPY Drive Issues 102 Easiest Way: Use storage.erase_filesystem() 102 Old Way: For the Circuit Playground Express, Feather M0 Express, and Metro M0 Express: 102 Old Way: For Non-Express Boards with a UF2 bootloader (Gemma M0, Trinket M0): 104 Old Way: For non-Express Boards without a UF2 bootloader (Feather M0 Basic Proto, Feather Adalogger, Arduino Zero): 105 Running Out of File Space on Non-Express Boards 105 Delete something! 105 Use tabs 105 MacOS loves to add extra files. 105 Prevent & Remove MacOS Hidden Files 106 Copy Files on MacOS Without Creating Hidden Files 106 Other MacOS Space-Saving Tips 107 Device locked up or boot looping 108 CircuitPython Essentials 110 Blink 111 LED Location 111 Blinking an LED 111 Digital Input 113 LED and Button 113 Controlling the LED with a Button 113 Built-In NeoPixel LED 115 NeoPixel Location 115 NeoPixel Color and Brightness 115 RGB LED Colors 117 © Adafruit Industries https://learn.adafruit.com/adafruit-feather-rp2040-pico Page 4 of 125 NeoPixel Rainbow 118 CPU Temperature 121 Microcontroller Location 121 Reading the Microcontroller Temperature 121 Downloads 123 Files: 123 Schematic 123 Fab Print 123 3D Model 124 © Adafruit Industries https://learn.adafruit.com/adafruit-feather-rp2040-pico Page 5 of 125 Overview A new chip means a new Feather, and the Raspberry Pi RP2040 is no exception. When we saw this chip we thought "this chip is going to be awesome when we give it the Feather Treatment" and so we did! This Feather features the RP2040, and all niceties you know and love about Feather Measures 2.0" x 0.9" x 0.28" (50.8mm x 22.8mm x 7mm) without headers soldered in © Adafruit Industries https://learn.adafruit.com/adafruit-feather-rp2040-pico Page 6 of 125 Light as a (large?) feather - 5 grams RP2040 32-bit Cortex M0+ dual core running at ~125 MHz @ 3.3V logic and power 264 KB RAM 8 MB SPI FLASH chip for storing files and CircuitPython/MicroPython code storage. No EEPROM Tons of GPIO! 21 x GPIO pins with following capabilities: Four 12 bit ADCs (one more than Pico) Two I2C, Two SPI and two UART peripherals, we label one for the 'main' interface in standard Feather locations 16 x PWM outputs - for servos, LEDs, etc The 8 digital 'non-ADC/non-peripheral' GPIO are consecutive for maximum PIO compatibility Built in 200mA lipoly charger with charging status indicator LED Pin #13 red LED for general purpose blinking RGB NeoPixel with power pin on GPIO so you can depower it for low power usages. On-board STEMMA QT connector that lets you quickly connect any Qwiic, STEMMA QT or Grove I2C devices with no soldering! Both Reset button and Bootloader select button for quick restarts (no unplugging-replugging to relaunch code) 3.3V Power/enable pin Optional SWD debug port can be soldered in for debug access (https://adafru.it/w5e) 4 mounting holes 12 MHz crystal for perfect timing. 3.3V regulator with 500mA peak current output USB Type C connector lets you access built-in ROM USB bootloader and serial port debugging Inside the RP2040 is a 'permanent ROM' USB UF2 bootloader . What that means is when you want to © Adafruit Industries https://learn.adafruit.com/adafruit-feather-rp2040-pico Page 7 of 125 program new firmware, you can hold down the BOOTSEL button while plugging it into USB (or pulling down the RUN/Reset pin to ground) and it will appear as a USB disk drive you can drag the firmware onto. Folks who have been using Adafruit products will find this very familiar - we use the technique on all our native-USB boards. Just note you don't double-click reset, instead hold down BOOTSEL during boot to enter the bootloader! The RP2040 is a powerful chip, which has the clock speed of our M4 (SAMD51), and two cores that are equivalent to our M0 (SAMD21). Since it is an M0 chip, it does not have a floating point unit, or DSP hardware support - so if you're doing something with heavy floating-point math, it will be done in software and thus not as fast as an M4. For many other computational tasks, you'll get close-to-M4 speeds! For peripherals, there are two I2C controllers, two SPI controllers, and two UARTs that are multiplexed across the GPIO - check the pinout for what pins can be set to which. There are 16 PWM channels, each pin has a channel it can be set to (ditto on the pinout). You'll note there's no I2S peripheral, or SDIO, or camera, what's up with that? Well instead of having specific hardware support for serial-data-like peripherals like these, the RP2040 comes with the PIO state machine system which is a unique and powerful way to create custom hardware logic and data processing blocks that run on their own without taking up a CPU. For example, NeoPixels - often we bitbang the timing-specific protocol for these LEDs. For the RP2040, we instead use PIO object that reads in the data buffer and clocks out the right bitstream with perfect accuracy.
Recommended publications
  • Raspberry Pi Pico SDK
    FAQ Colophon Copyright © 2020 Raspberry Pi (Trading) Ltd. The documentation of the RP2040 microcontroller is licensed under a Creative Commons Attribution-NoDerivatives 4.0 International (CC BY-ND). build-date: 2021-09-30 build-version: 000dcb1-clean About the SDK Throughout the text "the SDK" refers to our Raspberry Pi Pico SDK. More details about the SDK can be found in the Raspberry Pi Pico C/C++ SDK book. Source code included in the documentation is Copyright © 2020 Raspberry Pi (Trading) Ltd. and licensed under the 3-Clause BSD license. Legal Disclaimer Notice TECHNICAL AND RELIABILITY DATA FOR RASPBERRY PI PRODUCTS (INCLUDING DATASHEETS) AS MODIFIED FROM TIME TO TIME (“RESOURCES”) ARE PROVIDED BY RASPBERRY PI (TRADING) LTD (“RPTL) "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW IN NO EVENT SHALL RPTL BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THE RESOURCES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. RPTL reserves the right to make any enhancements, improvements, corrections or any other modifications to the RESOURCES or any products described in them at any time and without further notice. The RESOURCES are intended for skilled users with suitable levels of design knowledge.
    [Show full text]
  • Bridge Linking Engineering and Society
    Fall 2017 OPEN SOURCE HARDWARE The BRIDGE LINKING ENGINEERING AND SOCIETY Hardware: The Next Step toward Open Source Everything Alicia M. Gibb Freedom Reigns in Desktop 3D Printing Ben Malouf and Harris Kenny Reevaluating Intellectual Property Law in a 3D Printing Era Lucas S. Osborn Impacts of Open Source Hardware in Science and Engineering Joshua M. Pearce The Maker Movement and Engineering AnnMarie Thomas and Deb Besser 3D Printing for Low-Resource Settings Matthew P. Rogge, Melissa A. Menke, and William Hoyle The mission of the National Academy of Engineering is to advance the well-being of the nation by promoting a vibrant engineering profession and by marshalling the expertise and insights of eminent engineers to provide independent advice to the federal government on matters involving engineering and technology. The BRIDGE NATIONAL ACADEMY OF ENGINEERING Gordon R. England, Chair C. D. Mote, Jr., President Corale L. Brierley, Vice President Julia M. Phillips, Home Secretary Ruth A. David, Foreign Secretary Martin B. Sherwin, Treasurer Editor in Chief: Ronald M. Latanision Managing Editor: Cameron H. Fletcher Production Assistant: Penelope Gibbs The Bridge (ISSN 0737-6278) is published quarterly by the National Aca d emy of Engineering, 2101 Constitution Avenue NW, Washington, DC 20418. Periodicals postage paid at Washington, DC. Vol. 47, No. 3, Fall 2017 Postmaster: Send address changes to The Bridge, 2101 Constitution Avenue NW, Washington, DC 20418. Papers are presented in The Bridge on the basis of general interest and time- liness. They reflect the views of the authors and not necessarily the position of the National Academy of Engineering.
    [Show full text]
  • Atmega32u4 Breakout Created by Lady Ada
    Atmega32u4 Breakout Created by lady ada Last updated on 2021-07-12 01:27:14 PM EDT Guide Contents Guide Contents 2 Intro 3 About the Atmega32u4 Breakout board+ 3 Why not use a Teensy 3 Assembly 5 Design 7 Design Specifications 7 Microcontroller 7 Power 7 Pinout 7 USB Development 8 Using with AVRDude 9 AVR109 Bootloader & AVRdude 9 Arduino IDE Setup 11 https://adafruit.github.io/arduino-board-index/package_adafruit_index.json 12 Using with Arduino 14 Using it with Teensyduino 15 Download 18 Download 18 Schematic 18 Fabrication Print 18 © Adafruit Industries https://learn.adafruit.com/atmega32u4-breakout Page 2 of 20 Intro About the Atmega32u4 Breakout board+ We like the AVR 8-bit family and were excited to see Atmel upgrade the series with a USB core. Having USB built in allows the chip to act like any USB device. For example, we can program the chip to 'pretend' it's a USB joystick, or a keyboard, or a flash drive! Another nice bonus of having USB built in is that instead of having an FTDI chip or cable (like an Arduino), we can emulate the serial port directly in the chip. This costs some Flash space and RAM space but that's the trade-off. The only bad news about this chip is that it is surface mount only (SMT), which means that it is not easy to solder the way the larger DIP chips are. For that reason, we made a breakout board. The board comes with some extras like a fuse, a 16mhz crystal, USB connector and a button to start the bootloader.
    [Show full text]
  • Adafruit IO Basics: Color Created by Justin Cooper
    Adafruit IO Basics: Color Created by Justin Cooper Last updated on 2020-08-26 12:06:05 PM EDT Overview This guide is part of a series of guides that cover the basics of using Adafruit IO. It will show you how to send color data from Adafruit IO to a RGB LED. If you haven't worked your way through the Adafruit IO feed and dashboard basics guides, you should do that before continuing with this guide so you have a basic understanding of Adafruit IO. Adafruit IO Basics: Feeds Adafruit IO Basics: Dashboards You should go through the setup guides associated with your selected set of hardware, and make sure you have internet connectivity with the device before continuing. The following links will take you to the guides for your selected platform. Adafruit Feather HUZZAH ESP8266 Setup Guide If you have went through all of the prerequisites for your selected hardware, you are now ready to move on to the Adafruit IO setup steps that are common between all of the hardware choices for this project. Let's get started! © Adafruit Industries https://learn.adafruit.com/adafruit-io-basics-color Page 3 of 30 Adafruit IO Setup The first thing you will need to do is to login to Adafruit IO and visit the Settings page. Click the VIEW AIO KEY button to retrieve your key. A window will pop up with your Adafruit IO. Keep a copy of this in a safe place. We'll need it later. Creating the Color Feed Next, you will need to create a feed called Color.
    [Show full text]
  • Adafruit ATECC608 Breakout Created by Kattni Rembor
    Adafruit ATECC608 Breakout Created by Kattni Rembor Last updated on 2019-09-17 09:12:37 PM UTC Overview You've got secrets, and you want to keep them safe? Most microcontrollers are not designed to protect against snoopers, but a crypto-authentication chip can be used to lock away private keys securely. Once the private key is saved inside, it can't be read out, all you can do is send it challenge-response queries. That means that even if someone gets hold of your hardware and can read back the firmware, they won't be able to extract the secret! The ATECC608 is the latest crypto-auth chip from Microchip, and it uses I2C to send/receive commands. Once you 'lock' the chip with your details, you can use it for ECDH and AES-128 encrypt/decrypt/signing. There's also hardware support for random number generation, and SHA-256/HMAC hash functions to greatly speed up a slower micro's cryptography commands. © Adafruit Industries https://learn.adafruit.com/adafruit-atecc608-breakout Page 3 of 19 We're starting to see these low-cost secure element chips in various products, so that a less expensive chip can be used to drive peripherals, without worrying about security. This chip does not have a public datasheet, but it is compatible with the ATECC508 earlier version which does, so please refer to that complete datasheet (https://adafru.it/FIg) as well as the ATECC608 summary sheet (https://adafru.it/FIh). The good news is that, despite not having complete documentation, there is some software support.
    [Show full text]
  • How to Choose a Microcontroller Created by Mike Stone
    How to Choose a Microcontroller Created by mike stone Last updated on 2021-03-16 09:01:47 PM EDT Guide Contents Guide Contents 2 Overview 4 Which Microcontroller is the Best? 4 How to Make a Bad Choice 5 How to Make a Good Choice 6 Sketching out the features you might want 6 A list of design considerations 6 Kinds of Microcontrollers 8 8-bit Microcontrollers 8 32-bit Microcontrollers 9 More About Peripherals with 32-Bit Chips 9 System On Chip Devices (SOC) 9 The microcontrollers in Adafruit products 11 8-bit Microcontrollers: 11 The ATtiny85 11 The ATmega328P 11 The ATmega32u4 12 32-bit Microcontrollers: 13 The SAMD21G 13 The SAMD21E 14 The SAMD51 15 System-On-a-Chip (SOCs) 16 The STM32F205 16 The nRF52832 16 The ESP8266 17 The ESP32 18 Simple Boards 20 Simple is Good 20 Where do I Start? 21 I want to learn microcontrollers, but don't want to buy a lot of extra stuff 21 Resources 22 Arduino 328 Compatibles 24 I want a microcontroller that is Arduino-Compatible 24 I want to build an Arduino-compatible microcontroller into a project 25 I want to build a battery-powered device 26 Next Step - 32u4 Boards 29 The Feather 32u4 Basic: 29 The Feather 32u4 Adalogger: 30 The ItsyBitsy 32u4: 30 Intermediate Boards 33 Branching Out 33 32-bit Boards 34 The Feather M0 Basic: 34 The Feather M0 Adalogger: 34 The ItsyBitsy M0: 35 The Metro M0: 36 CircuitPython Boards 37 The Circuit Playground Express: 37 The Metro M0 Express: 38 The Feather M0 Express: 39 © Adafruit Industries https://learn.adafruit.com/how-to-choose-a-microcontroller Page 2 of 54 The Trinket
    [Show full text]
  • Adafruit SCD-40 and SCD-41 Created by Kattni Rembor
    Adafruit SCD-40 and SCD-41 Created by Kattni Rembor Last updated on 2021-09-15 03:29:06 PM EDT Guide Contents Guide Contents 2 Overview 3 Pinouts 7 Power Pins 7 I2C Logic Pins 7 Jumpers 7 Python & CircuitPython 9 CircuitPython Microcontroller Wiring 9 Python Computer Wiring 9 Python Installation of SCD4x Library 10 CircuitPython Usage 11 Python Usage 11 Example Code: 11 Python Docs 14 Arduino 15 I2C Wiring 15 Library Installation 15 Load Example 16 Downloads 20 Files 20 Schematic and Fab Print 20 © Adafruit Industries https://learn.adafruit.com/adafruit-scd-40-and-scd-41 Page 2 of 22 Overview Take a deep breath in...now slowly breathe out. Mmm isn't it wonderful? All that air around us, which we bring into our lungs, extracts oxygen from and then breathes out carbon dioxide. CO2 is essential for life on this planet we call Earth - we and plants take turns using and emitting CO2 in an elegant symbiosis. But it's important to keep that CO2 balanced - you don't want too much around, not good for humans and not good for our planet. © Adafruit Industries https://learn.adafruit.com/adafruit-scd-40-and-scd-41 Page 3 of 22 The SCD-40 and SCD-41 are photoacoustic 'true' CO2 sensors that will tell you the CO2 PPM (parts-per- million) composition of ambient air. Unlike the SGP30, this sensor isn't approximating it from VOC gas concentration (https://adafru.it/PF7) - they really are measuring the CO2 concentration ! That means they're bigger and more expensive, but they are the real thing.
    [Show full text]
  • Circuitpython on Linux and Raspberry Pi Created by Lady Ada
    CircuitPython on Linux and Raspberry Pi Created by lady ada Last updated on 2021-07-29 02:06:31 PM EDT Guide Contents Guide Contents 2 Overview 4 Why CircuitPython? 4 CircuitPython on Microcontrollers 4 CircuitPython & RasPi 6 CircuitPython Libraries on Linux & Raspberry Pi 6 Wait, isn't there already something that does this - GPIO Zero? 7 What about other Linux SBCs? 7 Installing CircuitPython Libraries on Raspberry Pi 8 Prerequisite Pi Setup! 8 Update Your Pi and Python 8 Check I2C and SPI 10 Enabling Second SPI 10 Blinka Test 11 Digital I/O 12 Parts Used 12 Wiring 13 Blinky Time! 14 Button It Up 15 I2C Sensors & Devices 16 Parts Used 16 Wiring 17 Install the CircuitPython BME280 Library 18 Run that code! 19 I2C Clock Stretching 22 SPI Sensors & Devices 24 Reassigning the SPI Chip Enable Lines 25 Using the Second SPI Port 25 Parts Used 26 Wiring 27 Install the CircuitPython MAX31855 Library 28 Run that code! 29 UART / Serial 32 The Easy Way - An External USB-Serial Converter 32 The Hard Way - Using Built-in UART 34 Disabling Console & Enabling Serial 34 Install the CircuitPython GPS Library 36 Run that code! 37 PWM Outputs & Servos 40 Update Adafruit Blinka 40 Supported Pins 40 PWM - LEDs 40 Servo Control 41 pulseio Servo Control 42 adafruit_motor Servo Control 43 © Adafruit Industries https://learn.adafruit.com/circuitpython-on-raspberrypi-linux Page 2 of 61 More To Come! 44 CircuitPython & OrangePi 45 FAQ & Troubleshooting 46 Update Blinka/Platform Libraries 46 Getting an error message about "board" not found or "board" has no attribute 46 Mixed SPI mode devices 47 Why am I getting AttributeError: 'SpiDev' object has no attribute 'writebytes2'? 48 No Pullup/Pulldown support on some linux boards or MCP2221 49 Getting OSError: read error with MCP2221 50 Using FT232H with other FTDI devices.
    [Show full text]
  • Development of a Low-Cost Wearable Prevention System for Msds Using Imu Systems And
    DEVELOPMENT OF A LOW-COST WEARABLE PREVENTION SYSTEM FOR MSDS USING IMU SYSTEMS AND ELECTRICALLY CONDUCTIVE MATERIALS MANUFACTURING COST WEARABLE PREVENTION WEARABLE FORSYSTEM MSDS COST VIA ADDITIVE MANUFACTURING - MEMORY submitted for the Degree of Doctor of Philosophy of the University of Navarra by Chuan Cao DEVELOPMENT DEVELOPMENT OF LOW A under the supervision of USING IMU SYSTEMS USING IMU SYSTEMS AND ELECTRICALLY CONDUCTIVE VIA ADDITIVE MATERIALS María Isabel Rodríguez and Aitor Cazón Martín Donostia-San Sebastián, May 2020 Chuan Cao Chuan UNIVERSITY OF NAVARRA SCHOOL OF ENGINEERING DONOSTIA-SAN SEBASTIÁN DEVELOPMENT OF A LOW-COST WEARABLE PREVENTION SYSTEM FOR MSDS USING IMU SYSTEMS AND ELECTRICALLY CONDUCTIVE MATERIALS VIA ADDITIVE MANUFACTURING DISSERTATION submitted for the Degree of Doctor of Philosophy of the University of Navarra by CHUAN CAO under the supervision of MARÍA ISABEL RODRÍGUEZ and AITOR CAZÓN MARTÍN Donostia-San Sebastián, May 2020 Acknowledgement There is an ancient poem in China: "Hai nei cun zhi ji, tian ya ruo bi lin.", which means "A bosom friend afar brings distance near." During the three years of studying here, I have met many kind and lovely people and received countless help. Your meticulous care has made me feel like a hometown in this strange land, and also helped me to learn and experience a lot in this brand-new cultural environment. Here I want to express my gratitude with a little space. First of all, I appreciate that the University of Navarra - Tecnun gave me this opportunity to do my PhD here in such a beautiful city. Thanks to all the people who work here, your hard work has made each of us extraordinary.
    [Show full text]
  • 3D Printed Stand for Macropad RP2040 Created by Ruiz Brothers
    3D Printed Stand for MacroPad RP2040 Created by Ruiz Brothers Last updated on 2021-07-14 10:25:59 PM EDT Guide Contents Guide Contents 2 Overview 3 Easy Assembly 3 Parts 4 3D Printing 5 Slicing Parts 5 Design Source Files 5 Angles 6 © Adafruit Industries https://learn.adafruit.com/3d-printed-stand-for-macropad-rp2040 Page 2 of 7 Overview Make a stand for your MacroPad RP2040! This features a hinged kick stand that allows your to prop up your MacroPad RP2040. It's a print-in-place design that can be 3D printed without any support material. Easy Assembly Use M3 x 6mm screws to secure the MacroPad RP2040 to the mounting holes on the base of the stand. © Adafruit Industries https://learn.adafruit.com/3d-printed-stand-for-macropad-rp2040 Page 3 of 7 Parts Adafruit MACROPAD RP2040 Bare Bones - 3x4 Keys + Encoder + OLED Strap yourself in, we're launching in T-minus 10 seconds...Destination? A new Class M planet called MACROPAD! M here, stands for Microcontroller because this 3x4 keyboard... Out of Stock Out of Stock Adafruit MacroPad RP2040 Enclosure + Hardware Add-on Pack Dress up your Adafruit Macropad with PaintYourDragon's fabulous decorative silkscreen enclosure and hardware kit. You get the two custom PCBs that are cut to act as a protective... Out of Stock Out of Stock Your browser does not support the video tag. Adafruit MacroPad RP2040 Starter Kit - 3x4 Keys + Encoder + OLED Strap yourself in, we're launching in T-minus 10 seconds...Destination? A new Class M planet called MACROPAD! M here stands for Microcontroller because this 3x4 keyboard..
    [Show full text]
  • Debugging Circuitpython on SAMD W/Atmel Studio 7 Created by Michael Schroeder
    Debugging CircuitPython On SAMD w/Atmel Studio 7 Created by Michael Schroeder Last updated on 2018-08-22 04:07:30 PM UTC Guide Contents Guide Contents 2 Overview 3 Understanding CircuitPython & Debugging 3 Parts Used in this Guide 3 Get Ready, To Get Ready 5 Building CircuitPython Firmware 5 Segger J-Link 5 Atmel Studio 7 5 Create AS7 Project 7 Open Object File to Create An AS7 Project 7 Selecting the Target MCU 8 Setup J-Link & GDB 10 In the Tool section: 10 In the Advanced section: 11 Can We Debug Yet? 13 Ladies and Gentlemen, START YOUR [DEBUG] ENGINES!!! 13 Debug Ribbon Icons 14 Break. Point. 16 Enhance 18 Breakpoint Labels 18 Breakpoint Setttings 18 Address: 19 Conditions & Actions: 19 Conditions 19 Actions 19 Using New Firmware 21 Running New Firmware With An Existing AS7 Project 21 Code + Community 24 Share it! 24 Troubleshooting 25 Oops. I Erased The Entire Chip. 26 Device Not Halted 29 Extra Credit 30 Reading Peripheral Registers 31 Patience Is Key 31 © Adafruit Industries https://learn.adafruit.com/circuitpython-samd-debugging-w-atmel-studio-7 Page 2 of 32 Overview This guide will help you to start debugging CircuitPython on the SAMD21 or SAMD51, using Windows 10 and Atmel Studio 7. Yes, it can be done. All that is needed is some jumping on one foot, while juggling chainsaws and singing System Of a Down's Chop Suey. Kidding. Mostly. We'll discuss using the compiled CircuitPython firmware for Atmel Studio project creation and setup. Then we'll delve into setting and maintaining breakpoints, then displaying information from those breakpoints to diagnose problems (or just for "gee-whiz").
    [Show full text]
  • Raspberry Pi Pico
    NIE PRZEOCZ Raspberry Pi Pico Fundacja Raspberry potrafi zaskoczyć, o czym przeko- aplikacjach kwestia zabezpieczenia jej zawartości przed nieautory- naliśmy się już niejednokrotnie, tym razem na premierę zowanym skopiowaniem. nie został wykorzystany dzień liczby π, a inna ciekawa Rozkład wyprowadzeń mikroprocesora RP2040 został poka- data: 21.01.21. Zaskoczenie jest tym większe, że nikt nie zany na rysunku 1. Zakres dopuszczalnych napięć zasilania wy- nosi 1,62...3,63 V, zasilanie przetwornika ADC wyprowadzone jest spodziewał się jakiejkolwiek premiery. na oddzielny pin, co ułatwia jego filtrację. Schemat blokowy RP2040 został pokazany na rysunku 2. Sam układ RP2040 ma być dostępny Wygląd płytki Raspberry Pi Pico został pokazany na fotografii tytu- w sprzedaży w drugim kwartale 2021 r. Tak w telegraficznym skró- łowej. Zastosowany mikrokontroler to specjalnie opracowany przez cie prezentuje się serce Pi Pico. fundację układ, oznaczony symbolem RP2040. Jego specyfikacja wy- Płytka Raspberry Pi Pico, oprócz mikroprocesora RP2040, zawiera gląda następująco: 2 MB pamięć programu typu W25Q16, oscylator kwarcowy 12 MHz, • dwa rdzenie Cortex M0+ taktowane zegarem do 133 MHz, przetwornicę buck-boost o napięciu wyjściowym 3,3 V umożliwia- • technologia 40 nm, jącą zasilanie płytki zarówno z portu USB napięciem 5 V, jak i ze złą- • 264 kB pamięci RAM w sześciu niezależnych bankach, cza GPIO napięciem z przedziału 1,8...5,5 V, co ułatwia zasilanie • współpraca z zewnętrzną pamięcią programu FLASH do 16 MB bateryjne oraz, po uzupełnieniu aplikacji
    [Show full text]