The LoRa KitProject Page!
Thanks to the Kickstrarter pledges who made this campaign possible. This page will be updated periodically with new information. Stay tuned. There are a few things you'll need before you get started. Please watch the "Getting Started" video below.
QUICK START INSTRUCTIONS:
1) Download and install the CH340G USB bridge driver: sparks.gogo.co.nz/ch340.html
2) Download and install PyCharm. The free version is what you want. Include "PIP" when given the option. Follow along with on in the "Getting Started" video so that you can follow along with. Make sure that you get the community edition, as it is the free version: www.jetbrains.com/pycharm/download/#section=windows
3) Download and install the Arduino IDE.
4) Download the relative libraries for the Arduino IDE. Once downloaded, open the Arduino IDE, go to Sketch>Include Library>Add ZIP. Library
You'll then be prompted to find the ZIP. library location. Downloaded files should be in the DOWNLOADs folder. When you find it, double click on it, and you'll then have access to the relative libraries. Here is one of the libraries that you'll need: github.com/Arduino-IRremote/Arduino-IRremote
When you go to this page, you'll see a green "CODE" pull-down menu. Click on "Download ZIP ".
Required Libraries:
* IR Remote
QUICK START INSTRUCTIONS:
1) Download and install the CH340G USB bridge driver: sparks.gogo.co.nz/ch340.html
2) Download and install PyCharm. The free version is what you want. Include "PIP" when given the option. Follow along with on in the "Getting Started" video so that you can follow along with. Make sure that you get the community edition, as it is the free version: www.jetbrains.com/pycharm/download/#section=windows
3) Download and install the Arduino IDE.
4) Download the relative libraries for the Arduino IDE. Once downloaded, open the Arduino IDE, go to Sketch>Include Library>Add ZIP. Library
You'll then be prompted to find the ZIP. library location. Downloaded files should be in the DOWNLOADs folder. When you find it, double click on it, and you'll then have access to the relative libraries. Here is one of the libraries that you'll need: github.com/Arduino-IRremote/Arduino-IRremote
When you go to this page, you'll see a green "CODE" pull-down menu. Click on "Download ZIP ".
Required Libraries:
* IR Remote
What circuits are included on the RPI_No_RPI?
1) Light Sensor - LDR (Selectable)
2) 16x character by 2x line LCD with back-light control (Selectable)
3) Passive Infrared Motion Sensor (PIR Sensor - Selectable)
4) Noise Sensor - Electret Microphone with passive amplifier (Selectable)
5) Infrared remote control receiver (Selectable)
6) Relay with driver circuitry (Selectable)
7) Access to all GPIO pins
8) USB Bridge - Allows for RPI_no_RPI to be programmed via USB
9) Power rail
10) External ADC input (Selectable)
11) 1x LED
12: MCP9700 temperature sensor (Selectable)
2) 16x character by 2x line LCD with back-light control (Selectable)
3) Passive Infrared Motion Sensor (PIR Sensor - Selectable)
4) Noise Sensor - Electret Microphone with passive amplifier (Selectable)
5) Infrared remote control receiver (Selectable)
6) Relay with driver circuitry (Selectable)
7) Access to all GPIO pins
8) USB Bridge - Allows for RPI_no_RPI to be programmed via USB
9) Power rail
10) External ADC input (Selectable)
11) 1x LED
12: MCP9700 temperature sensor (Selectable)
Hardware Discussion Video:
DIY Kit Assembly Video:
The Projects:
Project#1 - Pycharm, pyseril, and Arduino comms (LCD readout)
In this project we will talk about pyCharm and the pySerial module. We will then establish contact with the RPI_no_RPI from our PC and send it instructions. The instructions will be received an read out on the RPI_no_RPI LCD!
The Pycharm Code - Start a new project, then copy and paste this code into pyCharm. Watch the video for instructions.
project1.txt | |
File Size: | 2 kb |
File Type: | txt |
The RPI_no_RPI (Arduino) Code - Start a new project, then copy and past this code into the Arduino IDE. Watch the video for instructions.
project1.ino | |
File Size: | 1 kb |
File Type: | ino |
The Project Video:
Project#2 - Sending and Receiving Data!
In this project we will have the PC send over an instruction to the RPI_no_RPI, and then wait for the RPI_no_RPI to send data back. This is important, as bidirectional communications is key to this course.
The Pycharm Code - Open your project, create a new python file in said project, and then copy and paste this code into pyCharm. Watch the video for instructions.
project2.txt | |
File Size: | 4 kb |
File Type: | txt |
The RPI_no_RPI (Arduino) Code - Start a new project, then copy and past this code into the Arduino IDE. Watch the video for instructions.
project2.ino | |
File Size: | 3 kb |
File Type: | ino |
The Project Video:
Project#3 - DateTime Automation
The Datetime module is a powerful python library that comes with python. You don't need to download/install it. Among other things, It allows for you to take extremely precise timing measurement, and allows for you to view/save the current date and time in real time. In this project the python program will wait until a pre-programmed time of day approaches, and when that time is hit, the RPI_no_RPI will turn on it's relay for 10 seconds. :For instance, if we have a programmed time of ' '11:10:00', then the relay will turn on at 11:10AM. We'll hook up a device such as an electromagnetic lock to the relay as an example in the project video!
The Pycharm Code - Open your project, create a new python file in said project, and then copy and paste this code into pyCharm. Watch the video for instructions.
project3.txt | |
File Size: | 3 kb |
File Type: | txt |
The RPI_no_RPI (Arduino) Code - Start a new project, then copy and past this code into the Arduino IDE. Watch the video for instructions.
project3.ino | |
File Size: | 2 kb |
File Type: | ino |
The Project Video:
Project#4 - Who turned out the lights?
In this project the PC will query the RPI_no_RPI constantly for light sensor data. If the returned value indicates that the lights are off, a sound bite on the PC will say "Who turned out the lights". Yup. In this project, we're going to learn how to easily play sound bites. I'll be teaching you where to find a decent text-to-speech website too. This is the first project where we're querying the RPI_no_RPI for sensor information.
The Pycharm Code - Open your project, create a new python file in said project, and then copy and paste this code into pyCharm. Watch the video for instructions.
project4.txt | |
File Size: | 4 kb |
File Type: | txt |
The RPI_no_RPI (Arduino) Code - Start a new project, then copy and past this code into the Arduino IDE. Watch the video for instructions.
project4.ino | |
File Size: | 2 kb |
File Type: | ino |
The Project Video:
Project#5 - Relay GUI
That's right. We're going to make a simple GUI using the tkinter module in python. This GUI (Graphical user interface) will allow for us to toggle the state of the relay on the RPI_no_RPI. You will also learn on how to expand on this code, so that you have GUI control over many relays!
The Pycharm Code - Open your project, create a new python file in said project, and then copy and paste this code into pyCharm. Watch the video for instructions.
project5.txt | |
File Size: | 4 kb |
File Type: | txt |
The RPI_no_RPI (Arduino) Code - Start a new project, then copy and past this code into the Arduino IDE. Watch the video for instructions.
project5.ino | |
File Size: | 2 kb |
File Type: | ino |
The Project Video:
Project#6 - Security System Emailer
This is a big one. Once you learn how to send emails with python, you can automate it. You can send emails when electronic events occur. In this project we're going to query the RPI_no_RPI over and over until motion has been detected. When the RPI_no_RPI reports back that motion has been detected since the last ping, the python program will send a time-stamped email to the address of your choice. The email will indicate that motion has been detected.
The Pycharm Code - Open your project, create a new python file in said project, and then copy and paste this code into pyCharm. Watch the video for instructions.
project6.txt | |
File Size: | 3 kb |
File Type: | txt |
The RPI_no_RPI (Arduino) Code - Start a new project, then copy and past this code into the Arduino IDE. Watch the video for instructions.
project6.ino | |
File Size: | 6 kb |
File Type: | ino |
The Project Video:
Project#7 - Combination Lock
Yup! We're going to make another GUI. This time we're going to make a more complicated GUI. In this project, the python script will create a GUI which has buttons for the numbers 0 - 9. You hard program your combination in the python code. If you enter in a correct 4-digit combination, then the relay on the RPI_no_RPI will turn on for 10 seconds. Everything is fed back to the python shell in pyCharm, and on the RPI_no_RPI LCD. GUI based interfaces are awesome, and we're not done with them yet.
The Pycharm Code - Open your project, create a new python file in said project, and then copy and paste this code into pyCharm. Watch the video for instructions.
project7.txt | |
File Size: | 7 kb |
File Type: | txt |
The RPI_no_RPI (Arduino) Code - Start a new project, then copy and past this code into the Arduino IDE. Watch the video for instructions.
project7.ino | |
File Size: | 3 kb |
File Type: | ino |
The Project Video:
Project#8 - Access Granted
We're working with text files! In this project, we're going to create a GUI that asks for a user name and a password. When the user types in their name and password and pressed the LOG IN button on the GUI, the program will open up a text file and look for the case-sensitive username and password. If it exists in the text file, then the PC will send a command to the RPI_no_RPI to beep the buzzer, and turn on the relay. This simulated a door opening / maglock deactivating. The LCD is also doing its part. If the username and password doesn't exist in the text file, then the PC will send a command to the RPI_no_RPI to beep the buzzer 5 times to indicate that ACCESS IS DENIED!
The Pycharm Code - Open your project, create a new python file in said project, and then copy and paste this code into pyCharm. Watch the video for instructions.
project8.txt | |
File Size: | 8 kb |
File Type: | txt |
The RPI_no_RPI (Arduino) Code - Start a new project, then copy and past this code into the Arduino IDE. Watch the video for instructions.
project8.ino | |
File Size: | 3 kb |
File Type: | ino |
The Project Video:
Project#9 - Access Granted Part#2
To keep things less complicated, we're going to add to the previous project here. In this project we're going to add in some sound bites, and we're going to use the GUI to add new usernames and passwords to the 'Passwords' text file. That's right! No more adding names manually. We can now use the GUI to do all of the work for us. My hope is that at this point you understand just how powerful python is. It is an extremely smart language that is hugely supported by a massive community.
The Pycharm Code - Open your project, create a new python file in said project, and then copy and paste this code into pyCharm. Watch the video for instructions.
project9.txt | |
File Size: | 11 kb |
File Type: | txt |
The RPI_no_RPI (Arduino) Code - Use the project#8 code sample. We will be reusing it for this project.
project8.ino | |
File Size: | 3 kb |
File Type: | ino |
The Project Video:
Project#10 - Security Tapes
For this project you're going to need either a webcam, or a default computer camera. You can get cheap webcams on Amazon, but most laptops come with a built in camera. We are going to use the RPI_no_RPI to scan for either noise or movement. When detected, it will instruct the PC to start recording. After 10 seconds of recording, the video is saved and titled with a time-stamp.
The Pycharm Code - Open your project, create a new python file in said project, and then copy and paste this code into pyCharm. Watch the video for instructions.
project10.txt | |
File Size: | 5 kb |
File Type: | txt |
The RPI_no_RPI (Arduino) Code - Use the project#6 code sample. We will be reusing it for this project.
project6.ino | |
File Size: | 6 kb |
File Type: | ino |
The Project Video:
Project#11 - Security Tapes Part#2
We're going to add to project#10 by adding in an email function and some audio bites. When noise or movement is detected, an email will be sent to the address of your choice and an audible warning will be played by the PC.
The Pycharm Code - Open your project, create a new python file in said project, and then copy and paste this code into pyCharm. Watch the video for instructions.
project11.txt | |
File Size: | 6 kb |
File Type: | txt |
The RPI_no_RPI (Arduino) Code - Use the project#6 code sample. We will be reusing it for this project.
project6.ino | |
File Size: | 6 kb |
File Type: | ino |
The Project Video:
Project#12 - Infrared Remote Controls
We're going to program buttons 0-through-9 from a standard household TV remote control into the RPI-no-RPI EEPROM memory and use it to send instructions to our PC.
The Pycharm Code - Open your project, create a new python file in said project, and then copy and paste this code into pyCharm. Watch the video for instructions.
project12.txt | |
File Size: | 5 kb |
File Type: | txt |
The RPI_no_RPI (Arduino) Code - Use the program to program the IR code. See the project Video.
project12_stand_alone.ino | |
File Size: | 21 kb |
File Type: | ino |
The RPI_no_RPI (Arduino) Code - Use this second program to work with the Python code. Please watch the project video for a full explanation.
project12_for_pc.ino | |
File Size: | 21 kb |
File Type: | ino |
The Project Video:
Project#13: Arduino UNO
In this video we're going to use an ordinary Arduino UNO to control a n active-low 4-channel relay board with a GUI. We are going to build on project#5 significantly here. This project serves to teach you that you don't need an RPI_no_RPI to control hardware with your computer. The RPI_no_RPI is just a teaching tool =D
The Pycharm Code - Open your project, create a new python file in said project, and then copy and paste this code into pyCharm. Watch the video for instructions.
project13.txt | |
File Size: | 9 kb |
File Type: | txt |
The Arduino Uno Code (Not for the RPI_no_RPI) - Please see the project video!
project13.ino | |
File Size: | 4 kb |
File Type: | ino |
The Project Video:
Project#14 - Logging Temperature
In this project, we're going to have the PC query the RPI_no_RPI for temperature data. We're then going to log the data to a .csv file for later viewing.
The Pycharm Code - Open your project, create a new python file in said project, and then copy and paste this code into pyCharm. Watch the video for instructions.
project14.txt | |
File Size: | 4 kb |
File Type: | txt |
The RPI_no_RPI (Arduino) Code - Use the project#8 code sample. We will be reusing it for this project.
project14.ino | |
File Size: | 4 kb |
File Type: | ino |
The Project Video:
Project#15 - Laser tripwire
While this project is a relatively simple one, it is also a fun one. We're going to use a run-of-the-mill laser pointer to create a tripwire. When the laser is breached, the will notify the PC, and the PC will send out an email, and set of an audible alarm. This is one of those projects that you'll want to show your friends!
The Pycharm Code - Open your project, create a new python file in said project, and then copy and paste this code into pyCharm. Watch the video for instructions.
project15.txt | |
File Size: | 4 kb |
File Type: | txt |
The RPI_no_RPI (Arduino) Code - Use the project#8 code sample. We will be reusing it for this project.
project15.ino | |
File Size: | 1 kb |
File Type: | ino |
The Project Video: