Serial Barometric Pressure
Quick and easy pressure readings on the serial monitor while using XinaBox xChips and Arduino IDE.
Things Used in This Project
Hardware components
- XinaBox IP01 x 1
- XinaBox CC01 x 1
- XinaBox SW01 x 1
- XinaBox XC10 x 1
Software apps and online services
Story
Introduction
I built this project using XinaBox xChips and Arduino IDE. It is a 5 min project , that allows you to read barometric pressure data received from the xSW01 on the serial monitor.This project is an adaption of my previous Easy Peasy Temperature Monitor project. Using the xChips assembly is easy. The Arduino IDE software makes creating the code for the project simple.
Downloading the Libraries
- Go to Github.xinabox
- Download xCore ZIP
- Install it into Arduino IDE by going to "Sketch", "Include Library", then "Add .ZIP Library". As seen below.
Figure 1: Adding the ZIP libraries
Programming
- Connect the IP01 and CC01 using an xBUS Connector. Make sure the xChips' names are orientated correctly.
Figure 2: Connected IP01 and CC01
- Insert into an available USB port.
- Download or copy and paste the code from the "CODE" heading into your Arduino IDE. Alternatively you could create your own code using the relevant principles to achieve the same objective.
- To ensure there are no errors compile the code.
- After successful compilation(no errors found) you may upload the code to your xChips. Ensure the switches are facing "A" and "DCE" respectively before uploading, if it is an IP01 with switches.
Final Assembly
- Once the upload is successful, remove the IP01 from the USB port. Attach the SW01 with another xBUS Connector to the CC01.
Figure 3: Connected IP01, CC01 and SW01
- Insert the board back into the same USB port.
- Open the serial monitor in the top, right-hand corner of the screen. It should look like the image below after a few moments.
Figure 4: Serial Monitor displaying Pressure readings
- You can now view altitude readings from the SW01 on the serial monitor.
Code
PressureSM.ino Arduino
Arduino code to receive Barometric Pressure readings on the serial monitor from the xChips
#include <xCore.h> //add core library #include <xSW01.h> //add weather sensor library<br><br>xSW01 SW01; const int DelayTime = 500; //Defining set delay time that could be used elsewhere in the code //Create a variable to store the data read from SW01 float pressure; void setup(){ //Initialise variable to zero pressure = 0; //Start Serial Monitor Serial.begin(115200); //Start I2C communication Wire.begin(); //Start SW01 Sensor SW01.begin(); //String intro for project Serial.println("XinaBox Barometric Pressure Experiment"); Serial.println("______________________________________"); //Delay for sensor to normalise delay(3000); } void loop(){ //Read and calculate data from SW01 SW01.poll(); //Request to get humidity, temperature and dew point data then store in the variables pressure = SW01.getPressure(); //Display recorded data over the Serial Monitor Serial.print("Pressure:"); Serial.print(pressure); Serial.println("Pa "); delay(5000); }