This document provides instructions for assembling a CanSat ground station kit. It describes soldering pin headers to various components like the Arduino, RFM69 radio transceiver, Logic Level Converter, and BMP180 sensor. It also details soldering the voltage regulator, battery connector, and antenna directly to the qbcan circuit board. Finally, it explains how to connect the assembled components to the board and set up the completed ground station kit. The overall assembly process is designed to be straightforward while teaching basic soldering skills needed to construct the CanSat and ground station.
This is a PPT Prepared by Hitesh A H for Engineering Final year Presentation during COVID19 Lock down period,(mid April) for tele-presentation.
University: APJAKTU, Kerala, India
College: Marian Engineering College, Kazhakuttam
Department: Electronics & Communication Engineering
Class of: 2020
Presentors:
Ajishma L Vijayan
Ananthu AS
Hitesh A H
Ashok Babu
Cruise missiles form a major part of modern warfare and have spread extensively to all branches of the military. Their effective use in a modern conflict can change the outcome of war without resorting to nuclear weapons. Improvements in cruise missile technology will see more intelligent, self-manoeuvring and hypersonic missiles flood the world market. But whatever happens, cruise missiles will remain one of the most reliable weapons for the foreseeable future.
This is a PPT Prepared by Hitesh A H for Engineering Final year Presentation during COVID19 Lock down period,(mid April) for tele-presentation.
University: APJAKTU, Kerala, India
College: Marian Engineering College, Kazhakuttam
Department: Electronics & Communication Engineering
Class of: 2020
Presentors:
Ajishma L Vijayan
Ananthu AS
Hitesh A H
Ashok Babu
Cruise missiles form a major part of modern warfare and have spread extensively to all branches of the military. Their effective use in a modern conflict can change the outcome of war without resorting to nuclear weapons. Improvements in cruise missile technology will see more intelligent, self-manoeuvring and hypersonic missiles flood the world market. But whatever happens, cruise missiles will remain one of the most reliable weapons for the foreseeable future.
Team Drone - 2021 Technology, Innovation & Great Power CompetitionStanford University
Technology, Innovation and Great Power Competition,TIGPC, Gordian knot Center, DIME-FIL, department of defense, dod, intlpol 340, joe felter, ms&e296, raj shah, stanford, Steve blank, AI, ML, AI/ML, china, unmanned, autonomy, c3i, command and control
IoT in Automobile industry by Shri Kaushal Jani, Project Head, Amiraj College of Engg & Technology, Ahmedabad
presented at All India Seminar on #IoT - Trends that affect Lives at The Institution of Engineers (I) Gujarat State Center
This session walks you through how our interns took some video from a drone and turned it into an Android App to count cars in a parking lot. This is a practical introduction to drone SDKs, Tensorflow and how to combine the two to do object detection on your Android phone from a drone.
The main objective of capstone project is to design and develop a stable flying drone as a model
for general purposes that can be used for deliveries. The drone should be able to support lifting a
phone or similar weight, and some minor modifications should be applied to it. The drone could
be replaced in such a way that would fit any other application. I started the introduction of my
report by defining what a quadcopter is, simply because my drone’s flying system will be in that
form in which a brushless motor will be inserted in each arm. As for the control part, I will be
using a remote controller in which a transmitter will be inserted inside that would communicate
the receiver placed in the drone.
ThingsBoard IoT Platform provides device management, telemetry, data processing and visualization. It combines with ThingsBoard IoT Gateway and Trendz Analytics. It is suitable for a wide variety of use cases including smart energy, fleet tracking, smart farming and IIoT.
3 Things to Learn About:
*The IoT ecosystem and data management considerations for IoT
*Top IoT use cases and data architecture strategies for managing the sheer volume and variety of IoT data
*Real-life case studies on how our customers are using Cloudera Enterprise to drive insights and analytics from all of their IoT data
In seinem Meetup Talk berichtete Maximilian von den aktuellen Problemen von Cloud Computing – insbesondere im Internet of Things – und wie diese durch Edge Computing mitigiert werden können. Er erklärte, wie eine generische Edge-Computing-Architektur aussehen kann und zeigte Anwendungsfälle, von denen manche auch schon in existierenden Produkten umgesetzt sind.
Im Anschluss stellte er Azure IoT Edge vor und erläuterte, wie es das bestehende IoT Framework von Microsoft erweitert sowie die Grundkonzepte, die IoT Edge bereitstellt. Auch die Probleme in dem noch jungen Produkt wurden angesprochen, aber auch die Vorteile und Features, die es liefert.
In der gemeinsamen Demo mit Eli haben dann beide Speaker die technischen Details von Azure IoT Edge gezeigt und demonstriert, beispielsweise wie Code automatisiert von einer CI/CD-Pipeline in Azure DevOps auf ein IoT-Gerät deployed werden kann.
Event: inovex Meetup, 12.03.& 19.03.2019
Speaker: Maximilian Bischoff, inovex
Mehr Tech-Vorträge: inovex.de/vortraege
Mehr Tech-Artikel: inovex.de/blog
Unmanned Aerial Vehicles (UAVs) are aircrafts that fly without any humans being onboard. They are either remotely piloted, or piloted by an onboard computer. This kind of aircrafts can be used in different military missions such as surveillance, reconnaissance, battle damage assessment, communications relay, minesweeping, hazardous substances detection and radar jamming. However they can be used in other than military missions like detection of hazardous objects on train rails and investigation of infected areas. Aircrafts that are able of hovering and vertical flying can also be used for indoor missions like counter terrorist operations.
Team Drone - 2021 Technology, Innovation & Great Power CompetitionStanford University
Technology, Innovation and Great Power Competition,TIGPC, Gordian knot Center, DIME-FIL, department of defense, dod, intlpol 340, joe felter, ms&e296, raj shah, stanford, Steve blank, AI, ML, AI/ML, china, unmanned, autonomy, c3i, command and control
IoT in Automobile industry by Shri Kaushal Jani, Project Head, Amiraj College of Engg & Technology, Ahmedabad
presented at All India Seminar on #IoT - Trends that affect Lives at The Institution of Engineers (I) Gujarat State Center
This session walks you through how our interns took some video from a drone and turned it into an Android App to count cars in a parking lot. This is a practical introduction to drone SDKs, Tensorflow and how to combine the two to do object detection on your Android phone from a drone.
The main objective of capstone project is to design and develop a stable flying drone as a model
for general purposes that can be used for deliveries. The drone should be able to support lifting a
phone or similar weight, and some minor modifications should be applied to it. The drone could
be replaced in such a way that would fit any other application. I started the introduction of my
report by defining what a quadcopter is, simply because my drone’s flying system will be in that
form in which a brushless motor will be inserted in each arm. As for the control part, I will be
using a remote controller in which a transmitter will be inserted inside that would communicate
the receiver placed in the drone.
ThingsBoard IoT Platform provides device management, telemetry, data processing and visualization. It combines with ThingsBoard IoT Gateway and Trendz Analytics. It is suitable for a wide variety of use cases including smart energy, fleet tracking, smart farming and IIoT.
3 Things to Learn About:
*The IoT ecosystem and data management considerations for IoT
*Top IoT use cases and data architecture strategies for managing the sheer volume and variety of IoT data
*Real-life case studies on how our customers are using Cloudera Enterprise to drive insights and analytics from all of their IoT data
In seinem Meetup Talk berichtete Maximilian von den aktuellen Problemen von Cloud Computing – insbesondere im Internet of Things – und wie diese durch Edge Computing mitigiert werden können. Er erklärte, wie eine generische Edge-Computing-Architektur aussehen kann und zeigte Anwendungsfälle, von denen manche auch schon in existierenden Produkten umgesetzt sind.
Im Anschluss stellte er Azure IoT Edge vor und erläuterte, wie es das bestehende IoT Framework von Microsoft erweitert sowie die Grundkonzepte, die IoT Edge bereitstellt. Auch die Probleme in dem noch jungen Produkt wurden angesprochen, aber auch die Vorteile und Features, die es liefert.
In der gemeinsamen Demo mit Eli haben dann beide Speaker die technischen Details von Azure IoT Edge gezeigt und demonstriert, beispielsweise wie Code automatisiert von einer CI/CD-Pipeline in Azure DevOps auf ein IoT-Gerät deployed werden kann.
Event: inovex Meetup, 12.03.& 19.03.2019
Speaker: Maximilian Bischoff, inovex
Mehr Tech-Vorträge: inovex.de/vortraege
Mehr Tech-Artikel: inovex.de/blog
Unmanned Aerial Vehicles (UAVs) are aircrafts that fly without any humans being onboard. They are either remotely piloted, or piloted by an onboard computer. This kind of aircrafts can be used in different military missions such as surveillance, reconnaissance, battle damage assessment, communications relay, minesweeping, hazardous substances detection and radar jamming. However they can be used in other than military missions like detection of hazardous objects on train rails and investigation of infected areas. Aircrafts that are able of hovering and vertical flying can also be used for indoor missions like counter terrorist operations.
Verandering van gedaante (tweede vastenzondag 2017 A) Ten Bos
Teksten en liederen die geprojecteerd werden op Ten Bos tijdens de tweede vastenzondag (A) 2017 (Sint Amanduskerk Erembodegem). De teksten van onze vieringen zijn te vinden op de website: http://www.kerkembodegem.be/tenbos/liturgie/vieringen.html
Small, widely available and dirt-cheap ultrasonic sensors enable us to design both simple and lavish measuring devices for all kinds of ranging. Take one of these modules, add a display, a couple of press-buttons and a micro-controller loaded with software, and you now have all the ingredients for a circuit of this kind.
OBSTACLE AVOIDACE ROBOT USING ARDUINO UNO AND ULTRASONIC SENSORLeTsKnOw1
IN THIS PROJECT I HAVE DONE THE OBSTACLE AVOIDANCE ROBOT USING ARDUINO UNO AND ULTRASONIC SENSOR.
ARDUINO UNO IS USED IN MANY PROJECTS LIKE MAKING WATCH,WRITING MACHINE, LED GAMES ETC. BECAUSE OF ITS RELIABILITY AND EASY TO USE AND ULRASONIC SENSOR IS USED TO DETECT THE OBJECT AND ACT ACCORDING TO THAT. I HAVE DONE THIS PROJECT AND SUBMITTED IT IN ECE 1006 CLASS UNDER
MRS ARIVARASI MAM FOR THIS PROJECT I HAVE WORKED FOR 4 MONTHS TO KNOW DEEP INSIDE ABOUT ALL THE GADGETS AND UNDERSTAND THE CONCEPT OF WORKING
An improvised object detector, counter and width finder; using Arduino UNO, HC-SR04 Sonar and Servo Motor with real-time mapping using Processing. Devised a better algorithm for greater accuracy and speed.
Ultrasonic Distance Measurement NRF905 Wireless Transmission System Based on ...Wanita Long
ICStation Team introduce you this ultrasonic distance measurement NRF905 wireless transmission system with ICStation UNO and Mega 2560 compatible with Arduino. The working voltage is DC5V. It uses ultrasonic to measure distance and realizes wireless transmission with NRF905. The minimum accuracy of this design is one centimeter. The measuring effect is best between 3 and 100 centimeter. It can be used in the area where has no high demand of accuracy, such as the obstacle avoidance of robot and the distance detection alarm when reversing a car.
Ação de formação para professores - Introdução à programação de arduinos com linguagem Scratch
http://arduinoescola.blogspot.pt/2016/07/arduino-workshop-para-professores.html
Unit 8 - Information and Communication Technology (Paper I).pdfThiyagu K
This slides describes the basic concepts of ICT, basics of Email, Emerging Technology and Digital Initiatives in Education. This presentations aligns with the UGC Paper I syllabus.
Honest Reviews of Tim Han LMA Course Program.pptxtimhan337
Personal development courses are widely available today, with each one promising life-changing outcomes. Tim Han’s Life Mastery Achievers (LMA) Course has drawn a lot of interest. In addition to offering my frank assessment of Success Insider’s LMA Course, this piece examines the course’s effects via a variety of Tim Han LMA course reviews and Success Insider comments.
Biological screening of herbal drugs: Introduction and Need for
Phyto-Pharmacological Screening, New Strategies for evaluating
Natural Products, In vitro evaluation techniques for Antioxidants, Antimicrobial and Anticancer drugs. In vivo evaluation techniques
for Anti-inflammatory, Antiulcer, Anticancer, Wound healing, Antidiabetic, Hepatoprotective, Cardio protective, Diuretics and
Antifertility, Toxicity studies as per OECD guidelines
Read| The latest issue of The Challenger is here! We are thrilled to announce that our school paper has qualified for the NATIONAL SCHOOLS PRESS CONFERENCE (NSPC) 2024. Thank you for your unwavering support and trust. Dive into the stories that made us stand out!
Francesca Gottschalk - How can education support child empowerment.pptxEduSkills OECD
Francesca Gottschalk from the OECD’s Centre for Educational Research and Innovation presents at the Ask an Expert Webinar: How can education support child empowerment?
2024.06.01 Introducing a competency framework for languag learning materials ...Sandy Millin
http://sandymillin.wordpress.com/iateflwebinar2024
Published classroom materials form the basis of syllabuses, drive teacher professional development, and have a potentially huge influence on learners, teachers and education systems. All teachers also create their own materials, whether a few sentences on a blackboard, a highly-structured fully-realised online course, or anything in between. Despite this, the knowledge and skills needed to create effective language learning materials are rarely part of teacher training, and are mostly learnt by trial and error.
Knowledge and skills frameworks, generally called competency frameworks, for ELT teachers, trainers and managers have existed for a few years now. However, until I created one for my MA dissertation, there wasn’t one drawing together what we need to know and do to be able to effectively produce language learning materials.
This webinar will introduce you to my framework, highlighting the key competencies I identified from my research. It will also show how anybody involved in language teaching (any language, not just English!), teacher training, managing schools or developing language learning materials can benefit from using the framework.
Model Attribute Check Company Auto PropertyCeline George
In Odoo, the multi-company feature allows you to manage multiple companies within a single Odoo database instance. Each company can have its own configurations while still sharing common resources such as products, customers, and suppliers.
2. 2
The CanSat book is built up so that you can start from scratch and get a feeling of mastering
the kit as you read through the book. In the beginning we will describe how you can get your
Arduino board up and running. Then we will turn over for the missions. In this book we have
described a primary mission and how you will get data from it.
This book is written by Matthijs Dekkers for ESERO NL. It uses the work of Thomas
Gansmoe, Stian Vik Mathisen, and Jøran Grande from NAROM together with Jens F.
Dalsgaard Nielsen from Aalborg University and Nils Kristian Rossing from the Norwegian
University of Science and Technology published here: http://esero.no/wp-content/
uploads/2015/11/The-CanSat-Book-R2.12.compressed.pdf
It incorporates the instructions for the CanSat kit written by OpenCosmos and published at
http://doc.open-cosmos.com/Qbcan_modular
The CanSat-kit used in this book is developed by OpenCosmos and ESA.
CanSat is an ESERO NL Project, financed by the Netherlands Space Office and the
European Space Agency and executed by NEMO.
THE CANSAT BOOK
3. 3
THE CANSAT BOOK
ABOUT THE CANSAT BOOK 2
INTRODUCTION TO CANSAT 5
What is a CanSat? 5
The CanSat-kit 5
Arduino 5
Contents of the kit 6
ASSEMBLY 8
Tools and requirements 8
The Ground station 9
1. Solder the pin headers onto the Logic Level Converter and the BMP180
sensor 9
2. Solder pin headers to the Arduino Pro Micro 10
3. Solder the headers to the RFM69 11
4. Solder voltage regulator to the board 11
5. Assembly of the components onto the qbcan board - solder the pin headers 12
6. Solder the battery connector to the board 14
7. Solder the antenna to the board 14
8. Connect the components to the board 15
9. Connect Logic Level Converter and the BMP180 to the board 15
10. Connect the RFM69 headers into the board 16
11. Connect the Arduino to the board 16
12. Powering qbcan up 16
SOFTWARE CONFIGURATION 17
Installation 17
Driver installation (Windows only) 17
Configure the Arduino IDE (Windows, Linux, MacOS) 18
Blinkies 19
Uploading the program 19
Read data 20
LIBRARY 20
Download and Install the qbcan Arduino Library 20
Test qbcan using the qbcan Library examples 20
Library basics 20
Using the BMP180 pressure and temperature sensor 21
Using the RFM69 transceiver 22
5. 5
THE CANSAT BOOK
INTRODUCTION TO CANSAT
What is CanSat?
A CanSat is a simulation of a real satellite, integrated within the volume and shape of a
soft drinks can. The challenge for the students is to fit all the major subsystems found in a
satellite, such as power, sensors and a communication system, into this minimal volume.
The CanSat is then launched to an altitude of a few hundred meters by a rocket or dropped
from a platform or captive balloon and its mission begins: to carry out a scientific experiment
and achieve a safe landing. During the flight, the CanSat will use radio communication to
transmit data to a ground station.
CanSats offer a unique opportunity to have a first practical experience of a real space project.
You will be responsible for all aspects: designing the CanSat, selecting its mission, integrating
the components, testing, preparing for launch and then analyzing the data.
The CanSat-kit
The CanSat-kit is build up by an Arduino Pro Micro board and a sensor shield board.
Arduino
Arduino is an open-source electronics prototyping platform. It is based on flexible, easy-to-use
hardware and software. It’s intended for anyone interested in creating interactive objects or
environments, such as artists, designers and hobbyists. Arduino can sense the environment
by receiving input from a variety of sensors and can affect its surroundings by controlling
lights, motors, and other actuators.
Here are some examples of Arduino projects:
• Make an automatic night light which switches on when its dark
• Intrusion alarm
• Thermostat
• Line Follower Robot
• Fountain and/or lights that respond “happy to see you” via proximity and/or motion sensors
• Ham radio Morse code keyed/propagation beacon
• Graphical calculator that graphs serial inputs on a graphical LCD
• Wi-Fi controlled RC-Car
Many more ideas can be found http://playground.arduino.cc/Projects/Ideas.
6. 6
THE CANSAT BOOK
Contents of the kit
The kit contains two complete sets, one for the ground station and one for the CanSat kit.
Arduino Pro Micro
The core of the Arduino system, which contains
the microcontroller, I/O ports, etc.
Qbcan Sensor shield board
The qbcan Sensor Shield board has been developed
at Open Cosmos and serves as the backbone of your
system. It connects and holds all parts together
RFM69HW 433MHz transceiver
The transceiver will transmit radiosignals between
the ground station and the CanSat
BMP180 pressure and temperature sensor
The primary mission requires that your CanSat
measures air pressure and temperature
Logic Level Converter
The transceiver needs 3.3V, and because the Arduino
supplies 5V, we use an LLC to solve this problem
7. 7
THE CANSAT BOOK
Male header
Headers come in different sizes: long pins or shorter
pins, and 2,54mm or 2mm pitch between the pins. They
have to be cut to acquire the right amount of pins
Female header
Two sizes of female headers exist: 2mm and 2,54mm
pitch between the pins. They have to be cut to acquire
the right amount of pins
Voltage regulator
Yagi antenna connector
Wire antenna
Battery connector
The sensor shield is designed to fit on top of the Arduino Pro Micro board. More information,
documentation, and a community for technical support can be found here:
http://doc.open-cosmos.com/Qbcan_user_manual
http://community.open-cosmos.com/
8. 8
THE CANSAT BOOK
ASSEMBLY
By following these guidelines you will assemble a qbcan module to be used as a ground
station. This will result in a module suitable for prototyping and testing as any component
can be easily replaced if damaged.
The assembly of the qbcan is relatively simple and only requires basic soldering skills. If you
don’t have any experience with soldering, the process will take approximately 3 hours, but
it should take less than 2 hours if you have soldering experience. Consult these suggested
tutorials to familiarize yourself with soldering in case needed.
Tools and requirements
The tools required to assemble a qbcan are those required for soldering hobby electronics.
We recommend to have the following equipment with you during the assembly process:
• Pliers and/or tweezers
• Soldering iron and solder. It is important that the solder contains a flux core (this will
facilitate the soldering).
• Optional but recommended: flux remover (to clean flux residue).
• Optional: a third hand is very convenient when you are alone while doing the assembly.
• Optional: a solder wick remover in case you make a mistake and want to unsolder the
components.
• Optional: extra flux (e.g. in a pen dispenser). This element is optional but can help
soldering the voltage regulator, which is surface mounted.
Third hand
9. 9
THE CANSAT BOOK
THE GROUND STATION
The final product we will be working towards, will look like this:
The Pro Micro is mounted on top of the qbcan board, the transceiver, LLC en sensor board
are mounted on the opposite side.
Before you start, please make sure you clean the qbcan board and remove imperfections
(if any) with a pair of pliers. These are leftovers from the fabrication process.
1. Solder the pin headers onto the Logic Level Converter and the BMP180 sensor
We will be soldering the headers onto the Logic Level Converter (LLC) and the BMP180
sensor. Use the short 0.1” (2.54 mm) pitch headers included in each parts plastic bag.
You will have to cut the header for the LLC in half. Place the shorter ends of the headers
through the holes. Consult the images below to make sure you have the orientation right.
10. 10
THE CANSAT BOOK
2. Solder pin headers to the Arduino Pro Micro
Now that you have some practice in soldering headers, solder the headers of the Arduino
Pro Micro. Use the long 0.1” (2.54 mm) pitch headers. These have to be cut apart in 2
blocks of 12 pins each. The plastic header needs to be moved so that the length of the pin
is between 6 and 7 mm on one side and approximately 8 mm on the other side. Do this
by introducing the long part of the pin in the female header and push the plastic holder
down until it is in contact with the female header. It is important to hold the female header
against a hard surface to avoid breaking it. Repeat it for each of the pins.
The long part of the pins need to be placed through
the Arduino Pro Micro board. The final results
should look like this:
The long pins will enable your peripherals
(GPS, actuators or other sensors) to be
connected to any pins of the Arduino
by sing female headers or female
jumper wires.
11. 11
THE CANSAT BOOK
3. Solder the headers to the RFM69
The 2 mm-pitch male header can now be soldered to the RFM69. Introduce the short part
of the pin through the board. You will have to cut 2 blocks of 8 pins each from the spare 2
mm-pitch pin array that comes separately. Start soldering the two end pins of the header to
fix it to the board, and then solder the ones in between.
4. Solder voltage regulator to the board
This first component that we will solder on the qbcan board is the voltage regulator. Due to
the small size of this component, this is going to be one of the difficult parts to be soldered
onto the board. Be patient, do not rush. Consult the suggested tutorials and familiarize
yourself with Surface Mount Soldering (SMD) before attempting to solder this component.
Find the marking on the qbcan board that looks like this: Use a pair of fine tweezers or
pliers to place the component in the correct position. Solder the wide leg first and once this
is done, continue with the three smaller parallel legs, like this:
Step 1: Place a bit of solder on the board for the wide leg of the voltage regulator.
12. 12
THE CANSAT BOOK
Step 2: With the help of tweezers, place the voltage regulator on top and apply heat to
solder its wide leg.
Step 3: Solder the three smaller parallel legs to the board. The Voltage regulator is now
soldered onto the board.
5. Assembly of the components onto the gbcan board- solder the pin headers
In order to assemble the components onto the board there are two different approaches
to be followed. The first one, described in this manual, is to solder female headers to
the board so that the components can be easily plugged in and removed or replaced if
necessary. This configuration is suitable for prototyping and testing, and can be used
in the ground station. Once you have familiarized yourself with the configuration, it is
highly recommended to assemble the second qbcan module in different configuration by
13. 13
THE CANSAT BOOK
soldering all the components directly onto the board, without using female headers.
This configuration won’t allow you to remove and replace all the components, but it will be
more compact and withstand the forces during the launch and landing, so this approach is
better suited for use in the CanSat.
Begin soldering the 2.54 mm-pitch female header for the Arduino (#1 in figure) and follow
with the rest of the headers. You will have to cut one block of 12 female headers from the
array that comes separately. Solder the pin in one end of the header to fix one side and
then the other end. Once this is done, proceed to solder the pins in the middle.
Continue with the same type of headers for the BMP180 (#2) sensor and the LLC (#3 and
#4) on the other side of the qbcan board. Solder headers #2, #3 and #4 as shown. You will
have to cut 2 blocks of 6 female headers and one block of 5 female headers from the array
that comes separately. Clean the side of the header from cutting imperfections, this is
important to make sure that the header #3 fits in its place next to #2. Do not worry if some
pins are broken when cutting, as there are some spares provided.
Follow with the 2 mm-pitch female headers for the RFM 69 (#5 and #6), you will have to
cut 2 blocks of 8 female headers from the 2 mm-pitch female headers array that comes
separately. Finish by soldering the second 2.54 mm-pitch female header for the Arduino
(#7).
7
1
2
6
5
14. 14
THE CANSAT BOOK
6. Solder the battery connector to the board
The next component to be soldered onto the board is the battery connector. This is also a
tricky step since the board hole is bigger than the metal conductor of the battery connector.
Use a third hand (or ask somebody to help you) so that you are able to place everything in
the right position and solder. Be careful not to burn your assistant with the soldering iron! It
is also important that you solder the red wire to the positive (+) terminal and the black wire
to the negative (-) terminal, as marked on the board.
After finishing the soldering, clean the connection, plug a standard 9V battery (not
included) and check that the regulator output voltage is as expected using a voltmeter.
7. Solder the antenna to the board
The RFM69 is a 433 MHz transceiver which we will use with a wire monopole antenna.
This is the simplest type of antenna consisting of a piece of wire with the length of a
quarter of wavelength. For more information in antennas see the chapter in Antenna
Design.
A wire already cut to the specified length is provided, pass it through the board hole and
solder it to the dedicated pin hole, as shown in the image below. It is important for the
antenna to be as straight as possible. If it is curved or bent, the performance and the range
will decrease.
15. 15
THE CANSAT BOOK
In case the qbcan is going to be used as ground station, a Yagi antenna connector can be
soldered instead to gain extra range. There are four surface soldering ground points, two
on the top side of the PCB and two on the bottom, as well as one in the middle that can be
soldered either on top or below.
8. Connect the components to the board
Once all the headers are soldered to the qbcan board, the components can be connected
to them by plugging each component into its specific location.
9. Connect Logic Level Converter and the BMP180 to the board
Connect the components to their respective positions. For the Logic Level Converter,
check that the High Voltage (HV) and Low Voltage (LV) sides are oriented correctly by
looking at the board marks. The BMP180 needs to fit within the board limits (see the
board marks for the outline of where the BMP180 should go).
16. 16
THE CANSAT BOOK
10. Connect the RFM69 headers into the board
The next step will be connecting the RFM69 onto the board. On the board the antenna
pinhole is marked with ANA. Make sure to connect the RFM69 board in such a way that
the pin marked with ANA on the back of the RFM69 board matches with the one on the
qbcan board.
11. Connect the Arduino to the board
The next step is to connect the Arduino Pro Micro to the board. This should not be
difficult. Consult the image below to know how the Arduino should be oriented.
12. Powering qbcan up
The qbcan can be powered using the USB, the 5V-9V power IN or both.
17. 17
THE CANSAT BOOK
SOFTWARE CONFIGURATION
The Arduino Pro Micro is a microcontroller board based on the ATmega32U4 chip. It has 18
digital input/output pins, 9 analogue inputs and a USB connection. It contains everything
needed to support the microcontroller; simply connect it to a computer with a USB cable or
power it with an AC-to-DC adapter or battery to get started. For more information on the Pro
Micro, see the Appendix: Hardware overview.
To get started you have your Arduino Pro Micro board in front of you, a computer with
administrative rights and a standard micro-USB cable. The open-source Arduino environment
makes it easy to write code and upload it to the I/O board. It runs on Windows, Mac OS X,
and Linux. The environment is written in Java and based on Processing, AVR-gcc, and other
open source software.
INSTALLATION
Download the newest version of the Arduino IDE here and install it. Remember where you
installed the program. The IDE will be the place where you write your code, compile your
program to machine language, upload it to the Arduino and read the Arduino’s output in the
serial monitor.
Driver installation (Windows only)
• Download this driver: sparkfun.inf. Remember where you save the file.
• Alternatively, download the most recent version from: https://github.com/sparkfun/
Arduino_Boards/archive/master.zip, open the file, navigate to Arduino_Boards-master.zip
Arduino_Boards-mastersparkfunavrsigned_driver and extract the file sparkfun.inf to your chosen
location.
• Connect the Pro Micro via USB.
• Use the keyboard combination +R, type: ’devmgmt.msc’ followed by Enter.
• In the ‘Device manager’ (Apparaatbeheer) under ‘Other Devices’ (Overige apparaten), an
unknown device will show up, to be recognized by a yellow sign with an exclamation mark
and the name SparkFun Pro Micro or Arduino. Click it with your right mouse button and
select ‘Update Driver’ (Stuurprogramma’s bijwerken).
• Select the option ‘Browse my computer for driver software’ (Op mijn computer naar
stuurprogramma’s zoeken), click ‘Browse…’ (Bladeren), go to the location where you
saved sparkfun.inf, click OK and then Next.
18. 18
THE CANSAT BOOK
• A warning dialog will be shown, it is safe to select: ‘Install this driver software anyway’
(Dit stuurprogramma toch installeren)
Your computer will now recognize the Pro Micro. You still have to configure the software so
that it will work with the hardware.
Configure the Arduino IDE (Windows, Linux, MacOS)
The Arduino IDE will recognize a few common Arduinos, but the Pro Micro is not among them.
To be able to work with the board, you will have to follow a few more steps:
• Copy this url: https://raw.githubusercontent.com/sparkfun/Arduino_Boards/master/IDE_
Board_Manager/package_sparkfun_index.json.
• Start Arduino, go to Files Preferences.
• Paste this URL into the “Additional Board Manager URLs” text box and click OK.
• Go to Tools Boards Board Manager (Hulpmiddelen Boards Bordenbeheer).
• Search for SparkFun, select SparkFun AVR Boards in the search results and click install.
• Go to Tools Boards. The SparkFun boards will now be visible. select the Pro Micro.
• Go to Tools. The option Processor will now be clickable. Two versions of the Pro Micro
exist: the 3.3V 8MHz and the 5V 16MHz. We will be using the 5V 16MHz version.
Select the right version.
• Select the serial device of the Arduino board from
the Tools Serial Port menu. This is likely to be
COM3 or higher (COM1 and COM2 are usually
reserved for hardware serial ports). To find out,
you can disconnect your Arduino board and re-open
the menu; the entry that disappears shouldbe the
Arduino board. Reconnect the board and select
that serial port.
Notice there are two options for Pro Micro – 3V 8MHz and 5V 16MHz. It’s very important
that you select the Pro Micro option that matches your board’s voltage and speed.
We will be using the 5V 16MHz version.
19. 19
THE CANSAT BOOK
BLINKIES
Now you are ready to start programming Arduino Pro Micro and it is a good time to check
that everything is correctly installed. Copy the following code and paste it in the sketch editor
of the IDE:
All text after // is ignored by the computer. It is there to make the code more readable. In the
IDE these comments will be shown in grey.
Uploading the program
Now, simply click the “Upload” button in the compiler (the arrow in the top left corner).
Wait a few seconds - you should see the RX and TX LEDs on the board flashing. If the
upload is successful, the message “Done uploading.” will appear in the status bar.
void setup() // The setup() function is called when a sketch starts. Use it to
//initialize variables, pin modes, start using libraries, etc.
//The setup function will only run once, after each power up or reset
//of the Arduino board. The contents of the functions has to be
//entered between curly brackets: {}
{
pinMode(17, OUTPUT); // Set RX LED at pin 17 as an output
Serial.begin(9600); //set the data transmission speed for communication over the
//serial port to 9600bps
}
void loop() //After creating a setup() function, the loop() function loops
//consecutively, allowing your program to change and respond.
//Use it to actively control the Arduino board.
{
Serial.println(“Hello world”); //Print “Hello World” to the Serial Monitor
delay(1000); //wait for a second
digitalWrite(17, LOW); //turn the RXLED on
TXLED1; //unlike RXLED, TX LED is not tied to a pin, instead we /
//turn it on with this command
delay(1000); //wait for a second
digitalWrite(17, HIGH); // turn the RXLED off
TXLED0; // turn the RXLED off
}
20. 20
THE CANSAT BOOK
Read data
Open the Serial Monitor to look at the data which is received from the Arduino. The Serial
Monitor is opened by clicking the icon to the right in the toolbar. The Serial Monitor will open
a new window which will give you a serial text stream of the data printed from the Arduino
board. The Arduino is programmed to print “Hello world” every 2 seconds.
LIBRARY
A very important part of the qbcan is the software library. This library provides an easy-to-use
interface to the transceiver RFM69 and the pressure and temperature sensor BMP180.
Download and Install the qbcan Arduino Library
Download the library here. In order to install the library, go into the Arduino IDE and click
to Sketch Import Library Add Library. Then go to the folder where you have saved the
qbcan library, browse to qbcan.zip and accept. The library will be available after you restart
the Arduino IDE. To make sure that the library has been correctly installed, check that the
qbcan examples can be found in File Examples qbcan.
Test qbcan using the qbcan Library examples
In order to use the Library and test the examples, you will need a fully assembled kit. The
qbcan Library contains examples you can use to check that the whole system works properly.
In order to access the examples in the Arduino IDE, click on File Examples qbcan. You
can find a CanSat example that measures temperature and pressure and transmits them to
the ground station.
Library basics
To use the library you will need to include the qbcan Library and the SPI.h and Wire.h
libraries at the beginning of your code, so that the qbcan can have access to the SPI and
I2C buses.
The SPI.h and Wire.h libraries are part of the Arduino IDE and thus no installation is required.
The library qbcan.h needs to be placed at the top of the sketch.
//Include the required libraries
#include qbcan.h //Core qbcan library
#include Wire.h //I2C bus library
#include SPI.h //SPI bus library
21. 21
THE CANSAT BOOK
Using the BMP180 pressure and temperature sensor
The qbcan library provides a way to interface with the BMP180 pressure and temperature.
To create the sensor object, use the following snippet.
Copy-paste this piece of code just after the #includes. This will create the sensor object.
On the setup() function you will need to initialize the sensor. You can do this with the
following piece of code. Paste it below the rest of the code.
After initializing the sensor it is ready to measure. To measure temperature and pressure you
can use the following piece of code (note that the temperature unit is degrees Celsius and
the pressure unit is mbar). Copy-paste this code into the void loop() method.
//Create the pressure and temperature sensor object
BMP180 bmp;
void setup()
{
//Initialize serial connection for debugging
Serial.begin(9600);
// Initialize pressure sensor.
if (bmp.begin())
Serial.println(“BMP180 init success”);
else
{
//In case of error let user know of the problem
Serial.println(“BMP180 init fail (disconnected?)nn”);
while(1); // Pause forever
}
}
22. 22
THE CANSAT BOOK
After taking the measurement you can send the data to the serial port to be displayed in your
PC serial monitor with the following piece of code. Past it below the last bit of code in the
loop().
Using the RFM69 transceiver
The library also provides a class to interface with the transceiver. You can create the object
as follows:
Before initializing the RFM69 object on the setup() function it is useful to define some of the
transceiver parameters as follows:
//Declare temperature and pressure variables
double T,P;
// Get a new temperature and pressure reading
bmp.getData(T,P);
//Display data
Serial.print(“Absolute pressure: “);
Serial.print(P,2);
Serial.println(“ mb.”);
Serial.print(“Temperature: “);
Serial.print(T,2);
Serial.println(“ deg C.”);
//Create the Radio object
RFM69 radio;
//Radio Parameters
#define NODEID 2 //unique for each node on same network
#define NETWORKID 100 //the same on all nodes that talk to each other
#define GATEWAYID 1 //Receiving node
#define ENCRYPTKEY “sampleEncryptKey” //The same on all nodes!
23. 23
THE CANSAT BOOK
The NETWORKID can be set from 0 to 255 and that changes the physical channel used
for the link (i.e. the frequency). Although in this guide the NETWORKID is considered a
parameter, it can be changed during runtime. For this, you will need to re-initialise the library.
The NODEID is the node in a particular channel and can be set from 1 to 255. Therefore, we
can have up to 255 qbcan operating in the same frequency, although they cannot transmit at
the same time. Messages are generally send to a specific node and that is the GATEWAYID.
So if you are configuring a transmitter/receiver make sure that you are transmitting to the
correct node. Also a receiver can sniff all the packets in a network, thus receiving all traffic
in that network independently if the messages where addressed to that particular node. To
configure the radio on the setup you can just use the following code.
To send data through the network use the following code.
In the radio.send() function, the last argument is the length of the message to be
transmitted In the example above the message payload is 50 bytes long and we are sending
it in full although the actual message is not that long (so it could be optimised).
void setup() {
//Initialize serial connection for debugging
Serial.begin(9600);
//Initialize radio
radio.initialize(FREQUENCY,NODEID,NETWORKID);
radio.setHighPower(); //Use the high power capabilities of the RFM69HW
radio.encrypt(ENCRYPTKEY);
Serial.println(“Transmitting at 433 Mhz”);
}
//Send Data
char payload[50];
sprintf(payload,”T: %d C, P: %d mb.”,(int)T,(int)P); Serial.print(payload);
radio.send(GATEWAYID, payload, 50);
Serial.println(“Send complete”);
24. 24
THE CANSAT BOOK
In order to receive data transmitted through the network, the following piece of code can be
used:
Use radio.promiscuous(true); to activate the “promiscuous” mode to listen to all packets from
the network in use.
There are also some other functions that you may find useful when receiving messages:
radio.SENDERID - returns the sender node id.
radio.TARGETID - returns the message target node id (in case you are sniffing all the packets
in the network).
radio.RSSI - returns the received signal strength (RSSI).
EXAMPLES
The provided library contains examples that can help you get started. The examples can
be found in the Arduino IDE by clicking on File Examples qbcan. There is one example,
labelled as CanSat that transmits data and another one labelled as GroundStation that will
receive it.
The GroundStation example can be used with another qbcan to receive this data. To do so,
open the serial monitor in Tools Serial Monitor and set the speed of the serial connection to
9600 baud (this value depends on how you define the serial connection in the qbcan code.
See the “Using the RFM69 transceiver” section).
If you run each of the codes on two different qbcan you will be able to send and receive data
and test the sensors. We encourage you to use these examples as a starting point for your
projects.
if (radio.receiveDone())
{
for (byte i = 0; i radio.DATALEN; i++)
Serial.print((char)radio.DATA[i]);
}
25. 25
THE CANSAT BOOK
ALTITUDE CALCULATIONS
The atmosphere is all around us; it is a thin gaseous layer surrounding our planet. The
atmosphere is composed primarily of nitrogen (78%) and oxygen (21%). The remaining 1%
consists of water vapour, CO2 and other trace gasses. The Earth’s atmosphere consists of
different layers, each one having different properties (temperatures, pressure, composition,
etc…).
The different layers are represented in along with various human and weather activities
seen in these layers.
Unlike our CanSat, most satellites operate in the exosphere. Here the density of the
atmosphere is very low. The CanSat however operates in the troposphere, which is the
bottom layer of the atmosphere. This layer contains about 80% of the total mass of the
atmosphere, and stretches to about 10 kilometers altitude. A great deal of the “weather”
we observe on a day-to-day basis (wind and clouds for instance) occurs within this layer.
26. 26
THE CANSAT BOOK
The temperature and pressure of the atmosphere varies with altitude. Although the ambient
temperature can rise and fall as you move through the different layers of the atmosphere.
Within the troposphere, there is a linear relation between the temperature and altitude. On
average, ascending one kilometer from sea level will result in a temperature drop of 6.5
degrees Celsius.
The equation below provides the relation between temperature and altitude:
The relation between the pressure and the altitude is somewhat more complicated. The
pressure is not only dependent on the altitude but also on the temperature. Let’s start with
the relation of pressure to temperature:
Inserting this formula into the temperature-altitude relation, we achieve the following
expression for altitude as a function of temperature and pressure:
27. 27
THE CANSAT BOOK
ANTENNA DESIGN
Modulation
Radio communication is sending information from one place to another, using electro-
magnetic waves, also called radio waves. Electromagnetic waves are generated at an
antenna when an alternating electric current is connected to it. The antenna transforms
the electric current in electromagnetic waves. At the receiving end of the communication,
the waves are transformed back into electric current by an antenna.
Using the radio waves to transfer information means that the information needs to be added
to the radio frequency used. Adding this information is called modulation and can be obtained
in several ways. The most basic form is to transmit a (carrier) frequency or not. This is called
continuous wave (CW) communication. The most used form of CW is Morse code. The
biggest drawback of this is that the information transfer rate or baud rate is very low.
There are many other forms of modulation, such as AM and FM. These are used by radio
stations. With AM (amplitude modulation), the information is made to change the amplitude of
the carrier frequency. In FM (frequency modulation), the frequency of the carrier is changed.
The advantage of FM over AM is that the signal strength does not interfere with reception.
RFM69HW
The RFM69HW transceiver in the CanSat supports various types of digital modulation. We
are going to use Frequency Shift Keying (FSK). This means that it is transmitting a frequency
when a logic 0 is transmitted and a different frequency if a logic 1 is transmitted. There are
many other forms of modulation like the Quadrature Phase-shift Keying (QPSK) where two
bits are transmitted simultaneously.
28. 28
THE CANSAT BOOK
The quality of the radio link depends mainly on three aspects: the transmit power, the
receiver sensitivity and the used antennas. The only aspect that can be influenced by the
CanSat team is the antenna. The other aspects can be influenced, but then a different
transmitter and receiver are required, which is beyond the scope of this document.
Antennas
There are two antennas used in receiving the information from the CanSat: the first is the
antenna on board the CanSat, the second is the antenna used at the ground station. The
antennas need to be made with different requirements, although the frequency of operation
is similar for both antennas. The antenna on board the CanSat needs to be isotropic (or as
much as possible), which means that it transmits the same amount of power in all directions.
The antenna connected to the ground station can be pointed towards the CanSat, and it can
therefore be made as a high-gain directional antenna, which receives more electromagnetic
waves from one direction than from another.
Cansat Antenna
The CanSat antenna needs to be sufficiently robust to survive the launch on a rocket. For
the CanSat, a quarter-wave wire antenna works very well. The quarter-wave describes the
length of the antenna in reference to the operation frequency. The transmitter of the CanSat
kit works at around 433 MHz. the precise frequency depends a bit on what team you are in.
This is done to protect each other from interference. The required length of the antenna can
be calculated by using the following equation.
29. 29
THE CANSAT BOOK
Wherein
The formula shows that the length of the antenna for 433 MHz should be around 17.3 cm.
The wire antenna that came with the CanSat kit, should be exactly this length.
Ground station antenna
The antenna of the ground station can be pointed at the CanSat during flight. This means
that it can be a high gain directional antenna. The most popular antenna design of this type is
the Yagi antenna. They are versatile, powerful, and can be bought cheaply. For your CanSat,
building a Yagi antenna is a good option, they can be constructed relative easily, using wood
and copper tubes. There is plenty of information on the internet to build a Yagi antenna.
PARACHUTE DESIGN
Satellites normally do not return to Earth in a parachute. At the end of their useful life, a
satellite will be put in a different orbit. For satellites orbiting at a low altitude this could mean
they will burn up in the atmosphere. Satellites further away will end up in a much more
distant parking orbit and will circle our planet forever. Sometimes however, the spacecraft
has to return to earth with samples or astronauts. One of the solutions is then to descend
in a parachute.
30. 30
THE CANSAT BOOK
When the CanSat is deployed it must have a device to slow it down, otherwise it will
crash into the surface. The parachute also helps ensure that the CanSat stays in an up-
right position. This is particularly important because it helps to maintain proper antenna
orientation, which maximises the chances of receiving telemetry. This lesson will guide
you through the different steps needed to design and built your parachute.
Parachute production
When the design of the parachute is finished you can start the production process. There
are however a few important issues to keep in mind during this process. Deployment of the
parachute will be relatively violent, so the fabric and fibres you use need to be strong. Most
often you can get nylon cord and ripstop fabric at a kite shop. These materials are ideally
suited for the parachute.
When cutting the fabric keep in mind that some of the fabrics need to be cast double in order
to sew it.
More handy tips on parachute production can be found here:
http://www.nakka-rocketry.net/paracon.html
When the parachute is done, the best way to check if it works is to actually test it.
Example Assignments
The following assignments can be performed when working on the parachute.
• Calculate the impact speed of the can without a parachute (when released from 1
kilometre altitude).
• Calculate the minimum required area for your parachute when you use a cross parachute.
What size should the squares be on the chute?
• Perform the same calculation for a spherical parachute. What is the radius?
• Test the descent velocity of your parachute with a soda can?
• Try out different solutions for the parachute. A parachute with some holes in it or perhaps
multiple small parachutes? Both will enhance the stability of the CanSat.
31. 31
THE CANSAT BOOK
Descent Physics
Before we can start making the parachute we will have to figure out how big it should be.
More specifically, we need to calculate how much surface area the parachute will need in
order to fulfil the requirements.
Logic suggests that the bigger the parachute the slower the object’s descent velocity. Later
on, this principle is shown with some basic equations. Although it would be very beneficial for
the CanSat to have a very low descent rate, a limit has been set to ensure that the CanSat
will land near the launch area. If the descent rate is too slow the CanSat may drift kilometres
away along with the wind, which is neither allowed nor desired. For safety reasons there has
also been set a maximum descent rate.
To design the parachute we’ll use some simple physics. We use a simplified model to
estimate the area of the parachute, after which we can start on the construction.
During the descent two forces will be acting on the CanSat. Gravity will pull on the can and
accelerate it towards the ground, and the drag force on the parachute will pull the CanSat
in the opposite direction and slow down the descent rate. The two forces are shown in this
image.
When the CanSat is deployed, the force of gravity will cause it to accelerate. After a few
seconds the drag force from the parachute will reach equilibrium with the force of gravity.
From that point on, the acceleration will be zero and the CanSat will descend at a constant
velocity. This constant velocity has to be greater than the minimum descent velocity specified
in the requirements. For the following calculations we can use this minimum
value as the constant velocity of the CanSat.
32. 32
THE CANSAT BOOK
The gravity force is equal to:
In this equation
The drag force of the parachute is equal to:
In this equation:
Given a desired velocity, you can easily rewrite these equations to calculate the area needed
for the parachute.
Required Descent Parameters
Minimal descent Velocity: 8 m/s
Maximal descent Velocity: 11 m/s
Maximum allowed mass: 0.350 kilograms
Drag coefficients:
• Semi Spherical: 1.5
• Cross Shaped: 0.8
• Parapent: depends on the design
(can be determined by tests)
• Flat, hexagon: 0.8
33. 33
THE CANSAT BOOK
Semi-spherical Parachute Design
A semi-spherical appearance is the most common shape of a parachute. Although it is not
hard to make one, it can be quite time-consuming to get the right shape. The figure below
should help out.
Cross Parachute Design
Instead of using a semi spherical shaped parachute,
you can also choose a cross shape. The advantage
of this shape is that it’s easy to make. If you want to
know more about cross shaped parachutes you can
check the following link:
http://www.nakka-rocketry.net/xchute1.html
Parapent
A parapent shaped parachute acts a bit like a wing.
Because of its shape you can use it to steer. The
design of a parapent is more complex than that of
the other shapes mentioned. You will have to do
some more research if you wish to use this type
of parachute.
34. 34
THE CANSAT BOOK
Flat parachute design
Most commonly available parachutes are in fact created from standard two-dimensional flat
geometric figures, such as hexagons or octagons.
From above it is shown that the parachute consist of 8 equal triangles. Hence the total area
for the parachute would be where the area of one triangle is .
By combining these two equations we get . You can read more about how to
calculate the area of a flat parachute here:
http://www.sunward1.com/imagespara/The Mathematics of Parachutes%28Rev2%29.pdf
As soon as you know the total area (A) together with the drag coefficient (Cd) you can easily
determine the descent rate for your CanSat. If you do not know the drag coefficient for your
parachute, you can do drop tests of the CanSat to find the terminal velocity.
35. 35
THE CANSAT BOOK
APPENDIX
Hardware Overview
The Pinout
All of the Pro Micro’s I/O and power pins are broken out to two, parallel headers. Some pins
are for power input or output, other pins are dedicated I/O pins. Further, the I/O pins can
have special abilities, like analog input. Here’s a map of which pin is where, and what special
hardware functions it may have:
Delving a little further into which pins do what:
Power Pins
There are a variety of power and power-related nets broken out:
RAW is the unregulated voltage input for the Pro Micro. If the board is powered via
USB, the voltage at this pin will be about 4.8V (USB’s 5V minus a schottkey diode
drop). On the other hand, if the board is powered externally, through this pin, the
applied voltage can be up to 12V.
VCC is the voltage supplied to the on-board ATmega32U4. This voltage will depend
on whether you’re using a 3.3V/8MHz Pro Micro or a 5V/16MHz version, it’ll be either
36. 36
THE CANSAT BOOK
3.3V or 5V respectively. This voltage is regulated by the voltage applied to the RAW
pin. If the board is powered through the ‘RAW’ pin (or USB), this pin can be used as
an output to supply other devices.
RST can be used to restart the Pro Micro. This pin is pulled high by a 10kOhm;
resistor on the board, and is active-low, so it must be connected to ground to initiate
a reset. The Pro Micro will remain “off” until the reset line is pulled back to high.
GND, of course, is the common, ground voltage (0V reference) for the system.
I/O Pins
The Pro Micro’s I/O pins – 18 in all – are multi-talented. Every pin can be used as a digital
input or output, for blinking LEDs or reading button presses. These pins are referenced in
the Arduino IDE via an integer value between 0 and 21. (The A0-A3 pins can be referenced
digitally using either their analog or digital pin number).
Nine pins feature analog to digital converters (ADCs) and can be used as analog
inputs. These are useful for reading potentiometers or other analog devices using the
analogRead([pin]) function.
There are five pins with pulse width modulation (PWM) functionality, which allows
for a form of analog output using the analogWrite([pin], [value]) function. These pins
are indicated on-board with a faint, white circle around them.
There are hardware UART (serial), I2C, and SPI pins available as well. These can be
used to interface with digital devices like serial LCDs, XBees, IMUs, and other serial
sensors.
The Pro Micro has five external interrupts, which allow you to instantly trigger a
function when a pin goes either high or low (or both). If you attach an interrupt to an
interrupt-enabled pin, you’ll need to know the specific interrupt that pin triggers: pin 3
maps to interrupt 0, pin 2 is interrupt 1, pin 0 is interrupt 2, pin 1 is interrupt 3, and pin
7 is interrupt 4.
37. CALL FOR PROPOSALS
37
On-Board LEDs
There are three LEDs on the Pro Micro. One red LED indicates whether power is present.
The other two LEDs help indicate when data is transferring over USB. A yellow LED
represents USB data coming into (RX) the the Pro Micro, and a green LED indicates USB
data going out (TX).