Demo and Tutorial
Step 1: Things You Need
- 1 X Servo Motor
- 1 X Raspberry Pi 3 (any Raspberry Pi with internet would work)
- 1 X Raspberry Pi Adapter
- 1 X MicroSD Card with Rasbian OS
- 3 X Jumper Wires Male to Female
- 1 X Cardboard
- 1 X Scissors
- 1 X Marker/Pen
- 1 X Scale/Ruler
- 1 X Tape Role
- 1 X Echo Dot (optional)
Step 2: Make the Container
- Mark these dimensions on cardboard (you can make it as big/small as you want)
Use a marker/pen along with a ruler and make exact three shapes like these.
- Now cut these pieces using a scissor
Please note that A (the inner line) depends upon the amount food you feed to fish.
- Now fold along the inner lines
Fold each piece along the inner lines facing upwards as shown in the picture.
- Now Tape them together like a pyramid
Tape them together such that they form a pyramid-like structure, as shown in the picture.
- Now make a cap
Now make the cap for the smaller mouth of the pyramid, this needs to a little bit big so that it does not leak.
- Stick the cap on the servo motor dial
Paste the cap on the servo motor dial using some tape/glue
- Tape the servo motor on the container
Finally, tape the servo motor on the container, make sure it closes the mouth properly.
Step 3: Create Firebase Database
- Click on Go to Console.
- Click on Add Project.
- Name your Project.
- Click on Create Project.
- Click on Database.
- Select Start in Test Mode.
- Note down your firebase id.
Step 4: Create Alexa Skill
- Visit developer.amazon.com.
- Log in with your amazon credentials.
- Click on Developer Console.
- Click on Create Skill.
- Name the Skill.
- Click on Select (Custom Skill) and then Create Skill.
- Click on Invocation Tab and fill invocation name as fish feeder.
- Click on JSON Editor Tab and Paste the code below.
{"interactionModel": {"languageModel": {"invocationName": "fish feeder","intents": [{"name": "AMAZON.FallbackIntent","samples": []},{"name": "AMAZON.CancelIntent","samples": []},{"name": "AMAZON.HelpIntent","samples": []},{"name": "AMAZON.StopIntent","samples": []},{"name": "FeedNow","slots": [],"samples": ["feed the fish","feed fish","feed my fish right now","feed my fish please","please feed the fish","fish my feed now"]}],"types": []}}}
- Click on Build Model.
- Click on Endpoint Tab.
- Copy your Skill Id.
- Visit aws.amazon.com. (in new tab)
- Click on Sign in to console.
- Click on Lambda (search, if not on front page).
- Click on Create Function.
- Fill the details (check out the pic).
- Click on Create Function.
- Click on Alexa Skill Kit.
- Click on Enable and paste your skill id.
- Click on Add.
- Click Save.
- Now Click on your skill name (check out the pic).
- Scroll Down and Select Upload a.Zip file.
- Download the Github repo from here.
- Unzip the repo.
- Navigate into the folder called Alexa/Lambda.
- Open the file named as lambda_function.py in any text editor.
- Now paste the firebase id into the line 3 (replace {your firebase url} with your firebase id)
- Now move this file to the lambda-zipped.zip archive. (if using WinRAR just drag and drop it to the archive)
- Now upload this lambda-zipped.zip to aws.
- Copy your ARN (see the pic)
- Now go back to developer.amazon.com.
- Paste the ARN and click on ...