General Questions and Submission Requirements
How do I follow the hackathon and get updates?
Who can I contact if I have questions about the hackathon?
What do I need to use to build my app?
What is AWS IoT?
What are the most common use cases for AWS IoT?
Do I have to be an IoT expert to use AWS IoT?
What is Amazon Kinesis?
How does AWS IoT work with Amazon Kinesis?Is there a cost for using AWS IoT?
Is there a cost for using Amazon Kinesis?
What is AWS re:Invent?
Testing Process
How can I provide Devpost with access to test my app?
Eligibility & IP
Who is eligible to enter the competition?
We are an organization. Can we enter?
Do the apps have to be newly created for this competition, or can they be preexisting?
Can more than one person work on a solution and receive credit for it? And if the app wins a prize, how will the prize money be split among the creators?
Can my app win more than one prize?
Can I enter more than one app?
Do I retain intellectual property ownership?
What else will you do with my submission?
General Questions
How do I follow the Challenge and get updates?
When you register for the challenge, you’ll automatically be signed up to receive email updates about it. Follow us on Twitter at @Devpost.
Whom can I contact if I have questions about the Challenge?
Email aws-iotapp-challenge@amazon.com or post a question to the Discussion Board. If you have questions about AWS IoT, please visit the AWS IoT developer forum. If you have questions about Amazon Kinesis, please visit our Amazon Kinesis Developer Forum.
Submission Requirements
What do I need to use to build my app?
To be eligible for prizes, participants must build and submit an IoT app using AWS IoT or Amazon Kinesis or both. App submissions must:
- Collect and processes sensor data to solve a particular user need, such as ordering fresh groceries before running out or replacing printer cartridges. The app must use AWS IoT, or Amazon Kinesis, or both to collect and process the data, and take actions in real-time.
- Be a new or existing app (If existing, submitters must have updated their app to run on AWS IoT and/or Amazon Kinesis during the submission period).
While it is not a requirement, we also recommend that your submission:
- Use other AWS services
- Use HTTP protocol to directly send data to Kinesis or use MQTT protocol to send the data to AWS IoT and then trigger a Kinesis action
- Bring your own sensor data or generate sample data using the Kinesis Data Generator and AWS IoT Simulator
- Leverage third-party APIs, SDKs, and services What APIs or datasets can I include in my app?
You may use whatever additional APIs, SDKs, and datasets you choose, as long as you are authorized to use and distribute them. Remember, you MUST meet the requirements above in order to be eligible for a prize.
What is AWS IoT?
AWS IoT is a managed cloud platform that lets connected devices easily and securely interact with cloud applications and other devices. AWS IoT can support billions of devices and trillions of messages, and can process and route those messages to AWS endpoints and to other devices reliably and securely. With AWS IoT, your applications can keep track of and communicate with all your devices, all the time, even when they aren’t connected.
AWS IoT makes it easy to use AWS services like AWS Lambda, Amazon Kinesis, Amazon S3, Amazon Machine Learning, Amazon DynamoDB, Amazon CloudWatch, AWS CloudTrail, and Amazon Elasticsearch Service with built-in Kibana integration, to build IoT applications that gather, process, analyze and act on data generated by connected devices, without having to manage any infrastructure.
What are the most common use cases for AWS IoT?
With AWS IoT, your applications can keep track of and communicate with all your devices, all the time, even when they aren’t connected.
Connect and manage your devices - AWS IoT allows you to easily connect devices to the cloud and to other devices for data collection, triggering actions and communication between devices.
Real-time streaming data - IoT devices can be a constant source of streaming data. The AWS IoT platform makes it easy to get data into the cloud so that you can take advantage of services like Amazon Kinesis to analyze streaming data on AWS, offering powerful services to make it easy to load and analyze streaming data along with the ability to build custom streaming data applications for specialized needs.
Process and act upon device data - With AWS IoT, you can filter, transform, and act upon device data on the fly, based on business rules you define. You can update your rules to implement new device and application features at any time. AWS IoT makes it easy to use AWS services like AWS Lambda, Amazon Kinesis, Amazon S3, Amazon Machine Learning, Amazon DynamoDB, Amazon CloudWatch, and Amazon Elasticsearch Service for even more powerful IoT applications.
Some common use cases will include the following:
- Manufacturer implements support for a lightweight alternative protocol to address commands, access and interpret collected data, while minimizing resource requirements, Bill of Materials (BoM) and bandwidth costs of a product.
- An app developer establishes long-lived connections to each instance of a mobile app in order to provide customers with low-latency control of a physical device.
- An enterprise migrates its device connectivity away from a legacy solution onto a managed cloud solution for low cost, high performance, and easy integration with other IT infrastructure that may already run on AWS
Do I have to be an IoT expert to use AWS IoT?
While some knowledge of IoT is helpful, AWS IoT makes it fast and easy to start building AWS-connected products. This challenge is meant for you to start exploring and experimenting with AWS IoT to learn how it can benefit you.
AWS IoT provides Device SDKs for 8 different development platforms, including SDKs that are optimized for mobile devices, constrained devices, and web clients. . The Device SDKs makes it easy to use AWS IoT without writing unnecessary device-side code, regardless of what type of device is being used.
What is Amazon Kinesis?
Amazon Kinesis makes it easy to collect, process, and analyze sensor data so you can get timely insights and react quickly to new information. It offers three key capabilities –Kinesis Streams, Kinesis Firehose, and Kinesis Analytics- to cost effectively process streaming data at any scale, along with the flexibility to choose the tools that best suit the requirements of your application. With Kinesis, you can ingest real-time IoT telemetry data into your databases, data lakes and data warehouses, or build your own real-time applications using this data. Kinesis enables you to process and analyze data as it arrives and respond in real-time instead of having to wait until all your data is collected before the processing can begin.
How does AWS IoT work with Amazon Kinesis?
AWS IoT offers built-in integration with Amazon Kinesis via the AWS IoT Rules Engine so you can effortlessly ingest data from AWS IoT into Kinesis and process it in real-time. Once a rule is configured on a topic, AWS IoT will route all messages in that topic a Kinesis stream. Once the data is in a Kinesis stream, you can process it using Kinesis Analytics, and deliver the processed data to your data stores or take actions such as triggering an text or email alert.
Is there a cost for using AWS IoT?
With AWS IoT, you pay only for what you use. You are charged based on the number of messages emitted or received by your devices, at a rate of $5 per million messages. Messages are metered in 512 byte increments, so large payload messages may be metered as multiple messages. Upon sign-up, new AWS IoT customers can process up to 250,000 per month for free during the first year.
Is there a cost for using Amazon Kinesis?
Amazon Kinesis offers three capabilities, each of which has its own pricing. Kinesis Streams allows you to build custom applications that process and analyze streaming data and its pricing is based on two core dimensions - Shard Hour and PUT Payload Unit, and an optional dimension – Extended Data Retention. Kinesis Analytics allows you to process streaming data in real time with standard SQL without having to learn new programming languages or processing frameworks. You are charged an hourly rate based on the average number of Kinesis Processing Units (or KPUs) used to run your stream processing application. Kinesis Firehose is the easiest way to load streaming data into AWS. It can capture, transform, and load streaming data into Amazon Kinesis Analytics, Amazon S3, Amazon Redshift, and Amazon Elasticsearch Service, enabling near real-time analytics with existing business intelligence tools and dashboards you’re already using today. With Kinesis Firehose, you pay only for the volume of data you transmit through the service. There are no set up fees or upfront commitments to use any of the Amazon Kinesis capabilities.
In addition, we will offer a $25 free Kinesis credit for each registrant to cover Kinesis charges for developing your app during the challenge.
What is AWS re:Invent?
AWS re:Invent is the largest global cloud computing conference and features keynote announcements, training and certification opportunities, more than 400 technical sessions, a partner expo, after-hours events, and more. It will be held in Las Vegas, NV on 11/27/17 – 12/1/17.
Testing Process
How can I provide Devpost with access to test my app?
Include a link to your app code on GitHub or BitBucket. Your code repository may be public or private. If your repository is private, access must be given in the testing instructions provided with your submission. Code will be used only for application review and testing. Make sure to include all deployment files and testing instructions needed for testing your app. In addition include any sample data you used for development in CSV or JSON format. If you generated the data using the Amazon Kinesis Data Generator or the AWS IoT Simulator, include instructions so we can regenerate the sample data for testing purposes.
Eligibility & IP
Who is eligible to enter the competition?
The hackathon is open to individuals, and teams of eligible individuals, who have reached the age of majority in an eligible area of residence at the time of entry. The challenge is also open to legally registered corporations or organizations in eligible areas that employ fewer than 50 people at the time of entry. (See the next question for large organization eligibility.).
The competition will welcome submitters from around the globe. However individuals or organizations may be disqualified if they are based in a nation, state, province, or territory where U.S. or local law prohibits participating in the competition or receiving a prize. This includes individuals, who are residents of, and organizations domiciled in Brazil, Quebec, Cuba, Sudan, Iran, North Korea, Syria and any other country designated by the United States Treasury's Office of Foreign Assets Control.
Please review the Official Rules for complete eligibility requirements.
We are an organization. Can we enter?
Organizations with 50 or fewer employees may enter and compete for cash prizes. Organizations with more than 50 employees may enter and compete only for the Large Organization Recognition Award, which has no prize.
Do the apps have to be newly created for this competition, or can they be preexisting?
Yes, you can use an existing app. Your app is eligible as long as it is a working app that runs on AWS IoT or Amazon Kinesis or both.
Can more than one person work on an app and receive credit for it? And if the app wins a prize, how will the prize money be split among the creators?
Yes, teams are encouraged. If a team of individuals or an organization is selected as an award winner, the full prize amount will be sent to the submitter. It will be up to the winning team or organization to reallocate the prize money between the team members, as they deem it appropriate.
Can I enter more than one app?
Yes. There is no limit to how many times an eligible person, team, or organization may enter. An individual may also participate on behalf of more than one team, corporation, or nonprofit organization. However, if you submit two or more solutions that are identical or substantially similar, the Sponsor and Devpost reserve the right to disqualify all the submissions or require you to choose one submission to enter into the competition.
Do I retain intellectual property ownership?
By submitting an app to the Challenge, you do not transfer any intellectual property rights to the Sponsor or Devpost. The Sponsor and Devpost will have the right to feature all apps entered in the competition for promotional purposes. See the Official Rules for details.
What else will you do with my submission?
The Sponsor and Devpost will have the right to publicly display your submission on the hackathon website. They will also be allowed to publicize your name on the hackathon website in connection with the submission and the hackathon during the competition and for 36 months after its conclusion. For more information on publicity rights, please see the Official Rules.