I'm putting off destroying my existing CurrentCost IO board for a while (by soldering bodge wires to it whilst I test my ESP code). Therefore, I decided to do the first round of schematic capture.
It's a pretty simple board. I've mostly replicated the existing wiring but broken the TTL serial lines and put the ESP8266 in between. I've found that you can have "sort of" two UARTs on the ESP8266 by using the Serial.swap function which lets you mux the uart tx and rx pins between two sets of physical pins. Really it's only the RX pins that I care about (as far as I know, the CC doesn't do any receiving at all), which I want to be able to swap between the CC and the external terminal for bootstrapping and, indeed, reflashing. In this case, the external connector is going to be getting the default pins so that I can reflash it from the outside world without too much bother.
And there's an LED on it. Because, LEDs, dood.
Apparently you have to hold GPIO15 low. Hopefully that's not going to cause issues with the serial line from the CurrentCost driving that as well :-/ (there probably will be issues with that...)
I've stuck a "pin header" in that lets me put it into re-programming mode. Probably won't populate that, just hold something pressure-fit style whilst it boots to get into the right mode.
I tried to use those lovely RJ1x connectors I found before, but as it happens they're really quite fat and take up far too much room. So pin headers it is.
Here's the first attempt at a layout:
It looks like everything should fit - just. There's a fair bit of tolerance in the casing for moving things around ... so it looks fairly achievable.
(ignore the pointless groundplane to the right.... )
Now I know I'm not completely wasting my time, the next task will be butchering the existing board and hooking up some dev boards and see if I can put together some code that will work - at least as a proof of concept.