Difference between revisions of "Thing Dispenser"
Line 36: | Line 36: | ||
::c) visit Rich Nelson's [https://github.com/rmn388 GitHub page] and select the [https://github.com/rmn388/dog-treat-dispenser dog-treat-dispenser] | ::c) visit Rich Nelson's [https://github.com/rmn388 GitHub page] and select the [https://github.com/rmn388/dog-treat-dispenser dog-treat-dispenser] | ||
::d) follow the directions shown in the [https://github.com/rmn388/dog-treat-dispenser/blob/master/README.md Readme] '''WARNING: this tutorial is not yet complete*:)''' | ::d) follow the directions shown in the [https://github.com/rmn388/dog-treat-dispenser/blob/master/README.md Readme] '''WARNING: this tutorial is not yet complete*:)''' | ||
+ | ***Make to activate the virtual ??? by typing...''source env/bin/activate'' | ||
:::i) during the editing of the ''config.py'' configuration file, you will be asked for: | :::i) during the editing of the ''config.py'' configuration file, you will be asked for: | ||
:::::''twilio_phone_number = "+###########" #Your unique Twilio phone number'' | :::::''twilio_phone_number = "+###########" #Your unique Twilio phone number'' |
Revision as of 21:04, 19 June 2018
This is not an easy project, but i believe it is doable (?). This project will create a physical device that will dispense a "thing" (dog treat or dry erase marker) when a txt message is sent to a phone number. The physical device contains a Raspberry Pi micro-computer.
This project was described in the March 2018 MAKE magazine (MAKEzine), here
To get started, I found the following video to be useful; if this physical device is going to respond to a txt message, then there must be some link between the act of sending the txt and the dispensing of the thing. In the following video, a basic description of something called an API (Application Programming Interface) is presented here
In this above video, the analogy of a restaurant is presented. As you sit at a table, you need to send information (your order) to the kitchen to get food. The "API" is the waitperson.
- STEP 1...you tell the waitperson what you want to order,
- STEP 2...the waitperson goes to the kitchen and tells to cook what to prepare, then
- STEP 3...the waitperson then brings you your food.
Similarly, as i sit at my work desk, and i want a device to do something (like dispense a treat to my dog) the API controls the communications between me and the device...
- STEP 1...I send a txt to the device,
- STEP 2...the device executes the command, and then
- STEP 3...the device sends a txt back to me indicating the commend has bee executed.
On to the actual setup...
Hardware configuration (the easy part)
You will need to build a device. In the original article a Raspberry Pi is connected to an Arduino board, which is in turn connected to a servo motor to actuate the dispensing. This is actually the easiest part of the project. Here are a few pictures (Note: the RP is not connected to mouse, keyboard, or monitor):
Software configuration (the hard part)
- a) setup a raspberry pi (see this page).
- b) install Ardruino software (this is also described at the end of this page).
- c) visit Rich Nelson's GitHub page and select the dog-treat-dispenser
- d) follow the directions shown in the Readme WARNING: this tutorial is not yet complete*:)
- Make to activate the virtual ??? by typing...source env/bin/activate
- i) during the editing of the config.py configuration file, you will be asked for:
- twilio_phone_number = "+###########" #Your unique Twilio phone number
- twilio_account_sid = "#################################" #Your Twilio Account SID
- twilio_auth_token = "################################" #Your Twilio Auth Token
- i) during the editing of the config.py configuration file, you will be asked for:
How to get Twilio Phone Number
YouTube Video: Getting Started with Twilio
- 1) Go to Twilio.com
- 2) Select "Sign up"...and then "Get Started"
- - when asked, "which product do you plan to use first?" choose I'm just exploring
- - when asked "what are you building?" choose I don't have a project in mind
- - you will need to give Twilio an existing phone number, like your personal cell number.
- - After the intro, you will want to select Programmable SMS in the left tool bar while in the Console...then choose get started...by the way SMS means simple message system.
- - then follow the directions in order to get a new phone number...
File:Screen Shot 2018-06-19 at 1.26.24 PM.png
1) First off, you need to have a phone number which can receive a txt message which is ultimately connected to the device. This is done by setting up an account with a online company called Twilio. Getting a phone number is relatively easy...a trail Twilio account give you a credit of $15 to spend before you need to connect a credit card to the account.