Introduction
This guide takes you through the steps to building your devices. In this stage we will show you how to:
- upload firmware to the ESPS32S board
- set up a network between two Yo-Yo devices
- assemble the hardware
Do take your time to go through each the steps. If you have any problems or need support you can visit our FAQs pages.
Once you have finished the assembly you can move to Stage 2 and build your own enclosures.
-
-
Download the USB driver so the ESP32 board can communicate with your computer. The Windows version can be found here.
-
Unzip the download and open the installer CP210xVCPInstaller_x64.
-
You may have to accept the Windows Defender warning so that the driver can be installed successfully.
-
-
-
Click Next to go through the installation wizard.
-
After installing successfully, the wizard should report that the driver is ready to use. Click Finish to exit the wizard.
-
-
-
The Yo-Yo Firmware Uploader will enable you to upload the latest firmware to your ESP32S board. Download the latest release here.
-
Firmware is code the ESP32S board needs in order to work as a Yo–Yo device. It's called firmware because it is software used to configure hardware — soft + hard = firm. Geddit?
-
Unzip the downloaded app and open the contents of the extracted folder. The app should be inside the extracted folder.
-
Please use 7zip or WinRAR to unzip the files. WinZip will not work.
-
-
-
Plug your ESP32S board into your computer with the USB cable. You should see a red light on the board, which means it is powered up.
-
-
-
Open the Yo-Yo Firmware Uploader and select the device in the drop down menu. You may need to press “refresh list” if you do not see it in your list.
-
Your board's serial port should appear as something along the lines of COM# (COM3 in this case).
-
If the device doesn't appear, double check that your USB cable has a data line. Some USB cables only have power lines, as they are used for charging only.
-
Leave the 'Erase Wifi Details' box unticked.
-
-
-
Use the 'project' drop-down menu to select which device you are making.
-
The menu is blank on this image. Click it to get a list of projects -- make sure to choose the right one for the device you're making! We'll be adding new ones periodically...
-
-
-
When you're ready, click on Upload to upload the latest firmware.
-
When prompted, hold the BOOT button on your board to set it to "programming mode". You can let go of the button once you see the text "Writing" in the console text.
-
If you receive an error, please make sure you have selected the correct device in the Firmware Uploader, and that you have pressed the 'BOOT' button as described above.
-
When the uploader finishes transferring the firmware to the device, it will say "Success!" If you have another device to set up, you can repeat this process with the new ESP32S board.
-
In the future, if you want to reset a device to factory settings, you can do so by ticking the "Erase WiFi Details" box and re-uploading the firmware.
-
-
-
There are two main methods for setting up the network and pairing Yo–Yo Machines. In the first, both devices are set up in the same space, before one of them is sent to a remote location. In the second, devices are set up in separate spaces while coordinating with someone over the phone.
-
Both methods are covered in the following guide, but setting up a pair in the same space is shown as the primary method.
-
-
-
Power up the first ESP32S (with uploaded firmware) using a USB port or USB power supply and wait 10 seconds.
-
Now that the firmware is loaded, you can power your ESP32Ss from any USB power supply – there is no need to use a computer anymore.
-
If you are setting up two devices in the same space, turn on the second ESP32S at least 10 seconds after the first. If you are setting them up remotely, you do not need to synchronise in this way. You should still wait at least 10 seconds before proceeding so the ESP32Ss can establish a network.
-
With your mobile device or computer, connect to the newly created Wi-Fi network named “Yo-Yo-####” with the password “blinkblink”. If you are viewing these instruction online on our website, use another device to connect to the new network so you can keep the instruction open. This procedure is the same whichever method you are using.
-
Android users may be prompted with a "Sign in to a Wi-Fi network" notification. Click this to open the captive portal (next).
-
-
-
A captive portal should open automatically.
-
If the captive portal doesn't open on the device you are using, you may have to try with an alternative smartphone / tablet / laptop.
-
The captive portal will show the 5 Wi-Fi networks with the strongest signals. Sometimes you may not see the network that you would like to connect to, if this is the case, move your hardware closer to your router.
-
The ESP32S board cannot connect to Wi-Fi networks with names longer than 31 characters. If your Wi-Fi network's name is too long, then you will need to change it to a shorter name to complete the build.
-
-
-
Fill in the prompts with credentials for the Wi-Fi network that you want to connect to.
-
When you are setting up two devices in the same space, you also have the option to include the Wi-Fi credentials of the network you want to send the device to. When you send the second device to someone, it will then automatically connect to their network.
-
Including the Wi-Fi credentials of the remote network when setting up a pair will store both the home and remote network credentials to both devices, so it will not matter which device you send away. For security purposes, the Wi-Fi credentials can never be retrieved from the devices later.
-
The image here shows two devices being set up in the same space. Note that the Yo-Yo codes have been exchanged automatically. Information on how to enter codes manually for remote setup is in the next step.
-
-
-
If you are setting up two devices in the same space, they have already exchanged Yo-Yo Codes automatically. Feel free to skip this step and press "Save"
-
Copy the text under the heading “Your Yo-Yo Code”.
-
Send your Yo–Yo Code to your partner via SMS, email, etc., in exchange for the one from their device.
-
Enter the Yo-Yo Codes for the partner devices in the text field named “Remote Yo-Yo Code”. It should be in the same format as yours eg: “4289 423988”. Once the forms are complete, press “Save”.
-
-
-
Wait for the devices' blue LEDs to blink 3 times to confirm the local wifi details are correct. If these details have been inputted incorrectly, please reconnect to the Yo-Yo-#### network and try again.
-
Once both devices have confirmed they can connect to their respective wifi networks, the connection between the devices can be tested. This is done by pressing the “BOOT” button of one device to blink the on-board led of the other.
-
-
-
Gather your components and take a moment to identify them.
-
-
-
Here's what our final circuit will look like. If you use the same colours of jumper wires, it will make it easier to identify any mistakes.
-
SIG = Signal
-
VDD = Supply voltage
-
GND = Ground
-
-
-
Bread boards are used to create quick connections between electronic components.
-
They have sockets that are electrically connected in rows. The connected sockets are shown as green lines in the diagram shown here.
-
Jumper leads and components placed in these rows will be connected together.
-
-
-
Place one side of the ESP32S onto the other side of the breadboard. The side used should be the same side as the button labelled EN.
-
Make sure all the pins are lined up, leaving an empty hole on either side of the breadboard. Give the ESP32S a good solid push to plug it all the way into the breadboard.
-
-
-
Place the MOSFET module on the top left side of your breadboard.
-
They have sockets that are electrically connected in rows. The connected sockets are shown as green lines in the diagram shown here.
-
-
-
Put the leads from the solenoid into the V+ and V- screw terminals of the MOSFET module. Most solenoids are supplied with two black leads as shown in the photograph, so it does not matter which way around they are placed.
-
Using a jumper wire, connect the MOSFET module's VIN terminal to the breadboard socket the lines up with ESP32S's VIN pin.
-
Some solenoids are supplied with a white connector on the end of the leads. In this case, you can either remove the connector, trim the leads and screw directly into the MOSFET module, or use two male-to-male jumper leads between the white connector and the MOSFET.
-
-
-
The leads of piezo sensor are unterminated, making it difficult to insert into the breadboard, using 'Wago' connectors to add jumper leads solves this issue.
-
The orange arms of the Wago connector can be very stiff, but two on each connector will need to be opened to the vertical position as shown in the picture.
-
Trim the lead insulation a little to expose at least 1cm of wire.
-
Insert the red lead of the piezo into one slot on the Wago and shut the arm. Add a red jumper lead in adjacent slot and close. Using another Wago, repeat these steps for the black leads.
-
Wago's are a fast reliable way of connecting cables, but you could also use a screw terminal block, twist bare leads together and cover with tape, or use solder to tin the piezo leads to use directly in the breaboard.
-
-
-
Attach the 1M (1 megohm) resistor between GND and D34 of the ESP32S on the breadboard.
-
Connect the piezo sensor's red wire to pin D34 on the breadboard.
-
Connect the piezo sensor's red wire to pin D34 on the breadboard.
-
-
-
The default sensitivity of the piezo sensor is tuned to work well with a strong cardboard box, however depending of the material to choose to build your enclosure with you may wish to adjust the sensitivity to make it more, or less, sensitive.
-
To increase sensitivity of the sensor, add two jumper leads between ground (GND) and D26 & D25 on the ESP32S.
-
To set a mid-range sensitivity (which is a little higher than the default setting), add one jumper lead between ground (GND) and D25 on the ESP32S.
-
To decrease sensitivity of the sensor, add one jumper lead between ground (GND) and D26 on the ESP32S.
-
-
-
Plug in your USB micro cable.
-
Make another Knock Knock device using the same steps.
-
You can make both devices in the same household and post one to your remote partner. Alternatively, they can be made remotely and paired via the internet.
-
Use the Network Setup guide to pair two devices. We assume you'll do before you start assembling the electronics, but you can link or re-link them at any time.
-
When you power up the devices the solenoid moves in and out to indicate that it has been plugged in correctly. Also the blue LED onboard the ESP32S board should blink three times to show the network connection is working.
-
-
-
Tap on the first device's piezo sensor to make a unique knock sequence. You should be able to see your secret knock played back on the second device's solenoid.
-
Try this again on the second device. You should see your knock played back on the first device's solenoid.
-
-
-
Now that your device is working you can now think about what kind of enclosure you want to encase it in.
-
We have a few examples in the 'Enclosure' section of the website. Or feel free to invent your own!
-
Your electronics are ready for use in an enclosure!
Your electronics are ready for use in an enclosure!