ENC28J60 Gateway (Was:- Not-So-Recent Changes)

While answering a question in another thread, I realized that I’d missed an exciting change which, from the number of hits related pages get, is sure to be of interest to readers of this blog.

Back in the March/April time frame, Martin Ger updated his ESP WiFi Repeater to support an SPI-connected ENC28J60 ethernet module.  The work was quite well hidden, way down the page in a very long README (which catalogues the tremendous amount of work that Martin has put into this project).  Martin credits Andrew Kroll “…for his great work on getting [this] right”, so kudos to both of them for a very useful addition.

ENC28J60 hardware

You’ll need to run your ESP at 160MHz and have a decent power-supply to have this mod work effectively, but as Martin points out, once you have the ENC28J60 hardware configured with his ESP WiFi Repeater package, you’ve got yourself a super-cheap, DIY access-point.


CNX Give-away

Just a very quick plug for one of my favourite techie sites, CNX Software.  They always have interesting stuff there and frequently cover the latest ESP8266/ESP32 modules.  This week they’ve been having their great, annual give-away of boards and modules.  Unfortunately, you’re already too late to join in on the ESP32 sound board, but if you hurry, there’s still a chance to pick up a nice little Friendly Arm NanoPC-T4 board (knock three times and tell them ESP8266Hints sent you).


Recent Updates (20th Oct 2018)

esp-go  –  Pete Scargill’s re-badged “Hackitt & Bodgitt” code for a universal i2c Nano peripheral extender for the ESP8266.

Pete has mainly been updating the documentation for his code over the past couple of weeks.  In the latest release, the name has changed to “esp-go.doc” to reflect the re-branding.


badgy  –  SQFMI’s “Swiss Army” e-Ink badge,based on the ESP-12F.

SQFMI has updated the code to work with the latest version (3.0) of the GxEPD library.


mobile-rr  –  idolpx’s ESP8266 Mobile Rick-Roll Captive Portal.

idolpx has added some images to the documentation to help novice ESP8266 users get a better grasp of what they’re doing, as well as updating the code to add DNS overrides and improve the WiFi scan filtering.


Sonoff-Tasmota  –  Theo Arends’ all-purpose replacement for Sonoff firmware.

Theo has been steadily updating and improving the 6.2.1 version of his firmware with (in no particular order):-

  • A change to a non-blocking MQTT library as the default.
  • Add support for the DS3231 RTC.
  • Add TasmotaModbus library.
  • Add support for the HX711 load cell.
  • Add support for Pzem energy monitors.

…as well as various fixes.


IRremoteESP8266  –  A library to enable IR send and receive on the ESP8266.

Mark has updated the package to support Disney’s “Made With Magic” protocol.




Recent Updates

JLed – a library to provide painless control of LED blinking, breathing and fading effects.

Jan Delgado has updated his JLed library a couple of times over the past week.  The first update was a change specific to the ESP8266 to improve the 8-bit to 10-bit scaling, so that LEDs now reach full brightness.  The second change is the addition of a boolean return value to the Update() function to indicate whether the target effect is still active, or has completed.

OpenMQTTGateway – Bidirectional gateway for the integration of 433MHz, BLE and IR devices with MQTT.

Florian has made a small change to his OpenMQTTGateway to make the “TRACE” function compile-time selectable, in order to reduce the overall code size for those who don’t use it.

IRremoteESP8266 – A library to enable IR send and receive on the ESP8266.

Mark and his various contributors (including “crankyoldgit”) have added initial support for Elektra, Samsung and Whirlpool air-conditioners and experimental support for  Coolix and Lutron.  There are also additional fixes for Mitsubishi A/C and the IRMQTTServer code.

Esparto – A rapid development framework for ESP8266

Phil Bowles has added MQTT username & password functionality to his (relatively new) rev-2 version of Esparto, as well as fixing a couple of minor bugs.


esp8266-weather-station-color – An ESP8266 and ILI9341/XPT2046 based weather display.

Daniel and Marcel continue to update the colour weather-station display, with fixes for some I18N and WiFi issues.

YAESPK (Yet Another ESP Killer)

Seeed Studios is currently advertising the Air602 WiFi module at a price of $1.90 for single unit quantities.  The Air602 is tiny (smaller than a postage stamp and smaller than the ESP8266), but before you whip out your credit card to order half a dozen, you need to realize that one reason it’s so small is that there is no on-board antenna and no antenna socket, just a normal, edge connect pin on the board.

Block Diagram of WinnerMicro W600This thing in not an ESP of any variety.  It is based on the WinnerMicro W600 SOC, which has a Cortex M3 core.  The block diagram looks very impressive (although at the moment, the WinnerMicro web site is much less impressive and is doing an excellent impression of a honey-pot/tar-pit trap for unwary browsers), with dual UARTs, I2C, SPI and I2S interfaces, an RTC and hardware crypto all baked in.

The Air602 module has a limited number of pinouts (more than the ESP-01, though), so the available interfaces are fairly limited.  There are 12 pins available, but with two ground pins, one 3v3, one antenna and one (input only) reset, that leaves only 7 pins available for I/O and those seem to be split between the two UARTs as primary (with the SPI bus as alternate use) and the single GPIO-8 available as unassigned.  I’m guessing that the reason for the two pins being assigned to GND is an attempt to make it easier to add a micro antenna socket (the grounds are either side of the antenna pin).

The SDK zip is available from Seeed’s site and, given the current, sloooo-o-o-w state of the WinnerMicro web site, that’s where I’d advise you to go for more info.  The module itself seems to ship with LUA and an AT command set implementation as standard (again, shades of the original ESP-01).  Seeed also have a WiFi development board, based on the Air602 module, for only $2.90, which is a give and take proposition.  It has an antenna (big plus) and the PCB is made to plug directly into a USB socket, but only 5 of the W600’s IO pins are available as through-hole connections.

Get it while it’s hot!

If you happen to be resident in Japan and if you’re thinking about interfacing to an ESP8266 via Google Home, then you’re in luck …but only for the next two days.  Bic Camera is having a sale between the 22nd and 24th (of September, 2018) with some specific items heavily discounted.  One of them is the Google Home Mini at ¥3,240 (with free shipping inside Japan).  Not only is this a really good price (especially for the land of the rising yen), but you don’t even need to trust some intermediate, dodgy web site with your credit-card details; this is Japan, so you can just stroll down to your nearest “combini”, type your order number into their terminal and then use the printed invoice it produces to pay cash at the counter.  The next step is to sit back with a couple of beers and a good book while you wait for the Takkyubin to knock at your door.  Yappari, Nippon wa sugoi, desune (tokidoki!).

A non-trivial ESP8266 project

If the name Aidan Ruff rings bells with you, it’s probably because of the frequent mentions he receives on Pete Scargill’s blog and for his designs of their “Hackitt & Bodgitt” series of ESP-based hardware (Aidan’s board designs, such as "Hackitt & Bodgitt" Nextion Display Boardthis ESP12 board aimed at supporting a Nextion display, are especially useful for general purpose ESP8266 development and he makes the files freely available on-line).

Aidan is in the process of having an old farmhouse (in an olive grove in Spain) rebuilt and, because there are no mains services (electricity or water) available, has embarked on what, to most of us, would be the non-trivial project of providing enough solar (and possibly wind) power and enough battery capacity to provide summer cooling and winter heating without having to resort to the use of a generator during prolonged, adverse weather conditions.  His outline plan on how he intends achieve this (along with some impressive floor-plans) are available on his “Off Grid in Spain” blog.

Of more specific interest to ESP aficionados though, is the solar-tracking sub-project he’s put together to ensure that the (MPPT) output from his panels is maximized by adjusting elevation and direction.  The tracker controller is an ESP8266-ESP12 of course, but with a novel twist.  Instead of using the tried-and-tested optical tracking method (with its inherent problem of “hunting” on overcast days), Aidan has hooked up a GPS receiver to the ESP and uses a combination of the precise time and positional data to compute where the sun should be in the sky at his particular location (whether it’s hidden by clouds, or not).  The ESP communicates via MQTT (but also has an embedded web server and an attached OLED display panel), which means that, with additional data from a connected weather station, Aidan can add features such as having the solar panels rotate down to lie flat when the wind speed exceeds a pre-set limit.

The initial prototyping and testing of the two-axis, linear actuator based tracker is already completed and Aidan has put up his board and mechanical design files and a couple of videos on a Hackaday I/O project page.  Unfortunately, at the time of writing, the ESP code doesn’t seem to be available either on that page or from Aidan’s GitHub repository, but despite that, it’s definitely a project worth watching (tracking?).