Demo application for using the AT&T IoT Starter Kit Powered by AWS.
Dependencies: SDFileSystem
Fork of ATT_AWS_IoT_demo by
IoT Starter Kit Powered by AWS Demo
This program demonstrates the AT&T IoT Starter Kit sending data directly into AWS IoT. It's explained and used in the Getting Started with the IoT Starter Kit Powered by AWS on starterkit.att.com.
What's required
- AT&T IoT LTE Add-on (also known as the Cellular Shield)
- NXP K64F - for programming
- microSD card - used to store your AWS security credentials
- AWS account
- Python, locally installed
If you don't already have an IoT Starter Kit, you can purchase a kit here. The IoT Starter Kit Powered by AWS includes the LTE cellular shield, K64F, and a microSD card.
AWS_openssl/aws_iot_src/protocol/mqtt/aws_iot_embedded_client_wrapper/timer_interface.h
- Committer:
- ampembeng
- Date:
- 2016-12-01
- Revision:
- 15:6f2798e45099
- Child:
- 23:b9ff83dc965f
File content as of revision 15:6f2798e45099:
/******************************************************************************* * Copyright (c) 2014 IBM Corp. * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * and Eclipse Distribution License v1.0 which accompany this distribution. * * The Eclipse Public License is available at * http://www.eclipse.org/legal/epl-v10.html * and the Eclipse Distribution License is available at * http://www.eclipse.org/org/documents/edl-v10.php. * * Contributors: * Allan Stockdill-Mander - initial API and implementation and/or initial documentation *******************************************************************************/ /** * @file timer_interface.h * @brief Timer interface definition for MQTT client. * * Defines an interface to timers that can be used by other system * components. MQTT client requires timers to handle timeouts and * MQTT keep alive. * Starting point for porting the SDK to the timer hardware layer of a new platform. */ #ifndef __TIMER_INTERFACE_H_ #define __TIMER_INTERFACE_H_ #ifdef __cplusplus extern "C" { #endif /** * The platform specific timer header that defines the Timer struct */ #include "timer_platform.h" #include <stdint.h> #include <stdbool.h> /** * @brief Timer Type * * Forward declaration of a timer struct. The definition of this struct is * platform dependent. When porting to a new platform add this definition * in "timer_<platform>.h" and include that file above. * */ //typedef mbed::Timer Timer; typedef TimerExt Timer; char expired(Timer* timer); void countdown(Timer* timer, unsigned int timeout); void InitTimer(Timer* timer); /** * @brief Check if a timer is expired * * Call this function passing in a timer to check if that timer has expired. * * @param Timer - pointer to the timer to be checked for expiration * @return bool - true = timer expired, false = timer not expired */ bool has_timer_expired(Timer *); //bool has_timer_expired(mbed::Timer object); //TODO: modified to mbed::timer /** * @brief Create a timer (milliseconds) * * Sets the timer to expire in a specified number of milliseconds. * * @param Timer - pointer to the timer to be set to expire in milliseconds * @param uint32_t - set the timer to expire in this number of milliseconds */ void countdown_ms(Timer *, uint32_t); //void countdown_ms(mbed::Timer object, uint32_t); /** * @brief Create a timer (seconds) * * Sets the timer to expire in a specified number of seconds. * * @param Timer - pointer to the timer to be set to expire in seconds * @param uint32_t - set the timer to expire in this number of seconds */ void countdown_sec(Timer *, uint32_t); //void countdown_sec(mbed::Timer object, uint32_t); /** * @brief Check the time remaining on a given timer * * Checks the input timer and returns the number of milliseconds remaining on the timer. * * @param Timer - pointer to the timer to be set to checked * @return int - milliseconds left on the countdown timer */ uint32_t left_ms(Timer *); //uint32_t left_ms(mbed::Timer object); /** * @brief Initialize a timer * * Performs any initialization required to the timer passed in. * * @param Timer - pointer to the timer to be initialized */ void init_timer(Timer *); //void init_timer(mbed::Timer object); #ifdef __cplusplus } #endif #endif //__TIMER_INTERFACE_H_