element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
In the Air Design Challenge
  • Challenges & Projects
  • Design Challenges
  • In the Air Design Challenge
  • More
  • Cancel
In the Air Design Challenge
Blog Carbon Footprint Monitoring - Emission Sensor
  • Blog
  • Forum
  • Documents
  • Polls
  • Files
  • Events
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: xever
  • Date Created: 28 Nov 2014 11:36 AM Date Created
  • Views 828 views
  • Likes 1 like
  • Comments 5 comments
  • iot_footprint
  • in_the_air_design_challenge_2014
  • in_the_air
Related
Recommended

Carbon Footprint Monitoring - Emission Sensor

xever
xever
28 Nov 2014

In my last post, I wrote about the system components and gone through the proposed electronic components.  This post is dedicated to firmware architecture of the emission sensor.  As a reference to the diagram in that post, this node consists of:

 

  • TPS767D301 Dual Channel LDO to provide 5V and 3.3V rails
  • MSP430FR5969 as the micro controller unit
  • nRF8001 Bluetooth Low Energy module for communications with a smartphone
  • ADXL362 accelerometer for detecting vehicle vibration
  • MQ-135 sensor for measuring air quality, particularly CO2 emissions

 

By checking the pinouts for each component, I have decided to initially wire the different modules to the MSP430FR launchpad in the following configuration:

image

Firmware Architecture

Before writing any code, the structure for the firmware must have a level of abstraction such that any code can be re-used on a different platform.  A simple architecture will be used as a framework for the firmware code base as shown below.

image

This architecture is very generic and provides a level of separation between each module which should make the code portable and should still work on a different platform, i.e. using the CC3200 module instead of the MSP430FR.  All platform specific code will reside in the low level block which is then abstracted by the (Hardware Abstraction) layer above.  This approach with the software design will enable me to code and test one module at a time in isolation.  Each layer of the codebase will follow a set of API's and guidelines.  This will be covered in my next post along with some sample code.

 

For now enjoy some of the pics for this setup.

image

(Clockwise) MSP-EXP430FR5969 Launchpad, Click booster pack adapter, MQ-135 Air Quality Click board, nRF8001 Module, ADXL362

image

Texas Instruments MSP-EXP430FR5969 Launchpad

image

MQ-135 Air Quality Click board and click Booster Pack

image

Nordic nRF8001 Bluetooth Low Energy module

 

 

 

Btw, I accidentally bricked my MSP430FR launchpad whilst mocking around with the different compilers, testing out different Ti tools for the platform and upgrading the FET firmware.  Not exactly sure which from the above caused the corruption, but basically, the MSP430FR5969 chipset could no longer be identified by emulation tool.  I tried looking for the cause and the solution online but never found a real answer.  So with a bit of courage and determination, I ended up replacing the chip with another one.

image

  • Sign in to reply

Top Comments

  • xever
    xever over 10 years ago in reply to michaelwylie +2
    Not bad for a software dude i guess... will be practicing a lot more on SMD stuff to ready myself for when I start building the boards.
  • michaelwylie
    michaelwylie over 10 years ago in reply to xever +1
    I zoomed in, those joints look great to me.
  • xever
    xever over 10 years ago in reply to michaelwylie

    Not bad for a software dude i guess... image will be practicing a lot more on SMD stuff to ready myself for when I start building the boards.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • michaelwylie
    michaelwylie over 10 years ago in reply to xever

    I zoomed in, those joints look great to me.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • xever
    xever over 10 years ago in reply to michaelwylie

    yeah, else will have to get another board.  it was a daring attempt and i think it went well... image

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • michaelwylie
    michaelwylie over 10 years ago

    Phew! Thankfully that micro wasn't a BGA eh? image Looks like good progress.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • DAB
    DAB over 10 years ago

    Nice update.

     

    DAB

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube