Adventures of a Technomancer

Witcher Wi-Fi sensing medallion - Part 5

Circuit cleaning time!

Once you are satisfied with how prototype performs it's time to remove all the wires from the ESP8266.

With a clean ESP8266;

  • Connect VCC to CH_PD.
  • Then connect GPIO15 to GND.
  • GPIO12 goes to the middle pin (B) on the transistor.
  • VCC connects to C on the transistor.
  • E on the transistor goes to positive on the motor.
  • Ground on the motor goes to ground on the ESP8266.
  • Positive battery lead to VCC or CH_PD.
  • Negative battery lead to GND.

Battery cables, transistor and motor all attached in a compact package.

To prevent any exposed connections from touching the medallion wrapping everything is heatshrink is a good idea.

And with that it's all done.

Mounting the motor and wireless module inside a medallion can be done with hot glue or an epoxy resin. I opted for hot glue so I can remove it and make improvements such as CR2032 battery instead of LiPo or glowing LEDs for eyes.

Witcher Wi-Fi sensing medallion - Part 4

Time to start coding!

But not to worry, I have done all of that for you.

Head over to my GitHub repo, click on releases and download the latest one.

From there, unzip and double click on the vibration.ino file to open the Arduino IDE.

Hit the tick icon in the top left to compile and check the code, make sure it has no errors. If it does, raise an issue on the GitHub issues tracker and it will be taken care of.

If everything compiled correctly and no errors were encountered, plug in the RS232 adapter and hit upload.

Once the upload is complete it should execute the code. Create a hotspot on your phone and be sure to turn off all security to make it 'free', just be sure to turn it off when you're done testing.

Open up the console window and watch for output.

Setup done

Scan start  
Scan done  
Open network not found

Scan start  
Scan done  
Open network not found

Scan start  
Scan done  
Open network found - vibrating  

If you see something like this then it's time to produce a cleaner circuit.

Witcher Wi-Fi sensing medallion - Part 3

Now its time to wire up the programming circuit.

These are the pinouts for the ESP8266-03.

  • VCC is power.
  • GND is ground.
  • CH_PD is connected to power.
  • URXD goes to TX on the USB to Serial adapter.
  • UTXD goes to RX on the USB to Serial adapter.
  • GPIO0 is tied low (to ground) when programming.
  • GPIO12 goes to the transistor which powers the vibration motor.
  • GPIO15 always goes to ground.

Fritzing diagram

After the code has been flashed a lot of these wires can be removed, simplifying the final product.

Don't worry if it looks a little complicated, following each wire one at a time makes placing them all down very easy.

This is what is needed to program the ESP8266.

When everything is wired up, it's time to flash the code.

Witcher Wi-Fi sensing medallion - Part 2

Starting with version 1.6.4, the Arduino IDE allows installation of third-party platform packages using Boards Manager.

ESP8266 has packages available for Windows, OSX, and Linux.

Install Arduino 1.6.5 from the Arduino website.

Start the Arduino IDE and open the preferences window.
Enter into Additional Board Manager URLs field.

You can add multiple URLs, separated by commas.

Open Boards Manager from Tools > Board menu and click install esp8266 module.

Wait for it to complete.

Select your ESP8266 board from Tools > Board menu after installation.

Time to assemble the bits on a breadboard!

Witcher Wi-Fi sensing medallion - Part 1

Image of components

Parts you'll need:

Total of all parts should be around $15 AUD or just over $11 USD, not bad for a quick mod.

Next we set up the Ardino IDE.