Gaming The Dino With ESP8266

What can you do with a Wio-link bare board ?

Control chrome:\\dino with it!!

HW Requirements

Wio-link board

WiFi connected PC/Laptop + Router

Battery-bank

USB-Cable

Software tools

Anaconda (Py3.4+, ampy, esptools), Visual Studio, PuTTY, httplib header, Any text editor, Chrome browser on PC

Introduction

The chrome browser ships with a simple jumper game that can be controlled with a single key (space bar). But, it needs to be played on the laptop.

The Wio-link bare board has a single button on it.

→ A great pairing to create a game, to be played free of the laptop or internet !

Note — The steps below will destroy the shipped firmware on wiolink board.

Design

The system consists of 3 parts:

  • The Wio-link acting as a WiFi-remote
  • The Server running on the Laptop, connected with wio on local network
  • The Chrome Browser on the Laptop, running chrome:\\dino

System Diagram

System Diagram (Board and PC are wifi connected)
Wio-link Config Button (Controller)

Software

Programming the Wio-link (as Controller)

Without the connector, the board has just 2 buttons — RESET, and CONFIG. Left with no choice than to choose the CONFIG button.

For the USB serial port to come up install the serial driver, referred in the notes in references below.

Finding the GPIO config for the CONFIG button took a while. It took just some more extra time to figure out it was pulled high, looking at the Schematic PDF on the Wiolink site.

The rest was easy to figure out.

Micropython code (for Wiolink as Station)

Programming the PC (as Server)

Python sample code

C++ server code (alternative to Python)

https://gist.github.com/prabindh/9dee285a38c4b708811f1fce7a36eca5

Operation

  1. Start the server application on the PC. Ensure to update the IP addresses for your case.
  2. The game can be manually launched by typing in Chrome browser address bar.

chrome:\\dino

  1. Update the IP addresses, and program the ESP board.
  2. Connect the Wio-link to battery-bank. It automatically connects to the network
  3. Click the CONFIG button on the Wio-link. It triggers the SPACE key on the PC and the game starts.
  4. Have fun.

Other compatible games

Scratch game clones like the below can be used as well,

https://scratch.mit.edu/projects/189057541

The WebGL game can be played on the PC as well!!

https://www.gpupowered.org/brainstem/game.html

Live

Here is a quick video of how it works

Notes

1. Operating via WiFi has significant latency, though it is played on local network. A direct p2p connection (wio as AP) could work better

But great for spending time. For ex, project to a TV, and have large-screen game time from the couch without needing the laptop.

2. The operations mentioned in this article, destroy the shipped firmware, beware.

Updates at,

References

  1. Random notes

2. Wiolink site

3. Ordering in India

Yet to beat the machines. https://github.com/prabindh

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

300-times faster resolution of Finite-Difference Method using numpy

How to Build a Slack App with Low-Code (and get $20K)

How to Write a Python Program to Query Biomedical Journal Citations in the PubMed Database

Example PubMed Search 1 — Search on “johns hopkins[ad].”

Fun with Snapchat’s Creative Kit!

Postgres — Query Performance Tuning

Writing Kotlin the Kotlin(Non Java) Way

Why Python?

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Prabindh Sundareson

Prabindh Sundareson

Yet to beat the machines. https://github.com/prabindh

More from Medium

Playing with ConfigCat’s Feature Flags in a Phaser.io application

Solve the error when npm publish for the first time.

Refreshing tokens with VideoAsk API

Why Ionic Platform Is The First Choice For Mobile Application Development