Skip to content
Proof-of-concept ESP8266 web server and ARM Serial Wire Debug client
Branch: master
Clone or download
Micah Elizabeth Scott
Micah Elizabeth Scott Begin less, for more responsiveness
Let's only reset the debug connection when loading the root page.
Latest commit 2833ad9 Dec 14, 2015
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
data Begin less, for more responsiveness Dec 13, 2015
patch Program example is working Dec 13, 2015
.gitignore
LICENSE
README.md js is Dec 12, 2015
YOUR-WIFI-CONFIG.ino Try to make wifi config more obvious Dec 11, 2015
arm_debug.cpp
arm_debug.h More debugging register support Dec 13, 2015
arm_kinetis_debug.cpp More debugging register support Dec 13, 2015
arm_kinetis_debug.h
arm_kinetis_reg.h
arm_reg.h
esp8266-arm-swd.ino Performance and random polish Dec 13, 2015
package.json Adjust proxy to match new sketch behavior Dec 12, 2015
webdev-proxy.js Adjust proxy to match new sketch behavior Dec 12, 2015

README.md

esp8266-arm-swd

Proof-of-concept ESP8266 web server and ARM Serial Wire Debug client!

This directory is an Arduino sketch.

The Serial Wire Debug client here is a slightly adapted version of the one I originally wrote for Fadecandy's factory test infrastructure. It has optional extensions for the Freescale Kinetis microcontrollers, but the lower-level SWD interface should be compatible with any ARM microcontroller.

Installing

Software you'll need:

Now open esp8266-arm-swd.ino in the IDE:

  1. In the Tools menu, select your ESP8266 board and serial port info
  2. In the sketch, put your Wifi network info in the YOUR-WIFI-CONFIG tab
  3. Sketch -> Upload
  4. Tools -> ESP8266 Sketch Data Upload

Okay, now your Internet Thing is ready!

Usage

Default URL: http://esp8266-swd.local/

  • Visit the web page, edit all the hexes
  • Use the HTML5 components to make your own tools
  • Send pull requests

Hookups:

Signal SWD Port SWD over JTAG ESP8266 pin Equiv. NodeMCU pin
3.3v Power Pin 1
Data In/Out Pin 2 TMS GPIO2 D4
Ground Pin 3
Clock Pin 4 TCLK GPIO0 D3

Development Proxy

It's slow to update the filesystem, so for development work it's convenient to use a proxy to merge your local static files with the sketch's live API.

A simple tool using Node is included:

npm install
node webdev-proxy.js
You can’t perform that action at this time.