I received my first ESP8266 E-12 last Thursday, and found your book on Friday.
I was able to get it to do some useful functions on a breadboard on Saturday - mainly because of your book. Otherwise, I'm sure I'd still be out on the internet looking through documents which are scattered all over the place.
A couple of minor points I've found in the September version, which you might want to consider:
1. The table on page 21 is missing GPIO15. You may want to add here that this pin must be pulled low on boot or flash update (like you already mention in the table on page 51). You don't connect this to ground in any of your circuits, but luckily the E12 expansion board has a 10K resistor installed which pulls the GPIO15 pin low - Its the chip resistor on the bottom right of the board (when you hold the board so that the writing is right-side-up). The 10K resistor on the
bottom left pulls the CH_PD line high, but your circuits already describe tying this to 3.3V directly. (The 0-Ohm resistor in the middle just shorts out the landing pad for a voltage regulator on the back of the board, which is not populated.)
2. Page 33 talks about the gibberish which the module spits out when originally powered on, and mentions that this is at 76800 baud. I believe this is a minor typo, and the real baud rate is 74880, as defined in the table on page 280 of your book. A couple of things worth mentioning:
- The contents of the gibberish is the same as what you would see as the result of a soft reset "AT-RST", except the cause number is different (cold start vs. soft reset).
- The baud rate is rather oddball, and you won't find it supported by many devices (especially on Windows platforms).
3. On page 61, you start to describe using the RTS pin. I assume you were going to describe how to use this pin to automatically reset the device for a download, like the original Arduino boards do, but the section goes off on another topic and never gets back to RTS. Have you found any software which already uses the RTS pin to signal that the board is to be programmed automatically?
4. Have you considered adding a change history section? I've read the August and September versions, and at 300+ pages it becomes difficult to find what's been added, corrected or updated.
Thanks again for sharing this excellent book.
Marcus Walther
MANY thanks for the fantastic feedback. Rest assured that I am now going to spend time elaborating, researching and fixing each of the issues. The GPIO15 mistake on my part is glaring and I'll fix that immediately. Same with the baud rate typo. My reality is that I just ignore this "stuff" so while I am still in low hanging fruit mode, that area has been mostly ignore by me but a mistake in the numerical facts is very poor on my part. You are 100% on the RTS side of the house. Ideally I'd like to have a circuit which is "smart" so I don't have to press any buttons to put the thing in flash mode. As I started to make notes on that section, a shiny object distracted me and off I went.... but now I need to get back to it.
As for document change bars ... Ive always avoided those because I never made time to study them. If I can find a way to create change bars that will cover one month to the next I'll have a go. I use Libre Office so I'll study how to add change controls and see if I can create change bars from one months release to another.
Unfortunately, the book is taking a back seat at this time to me working on the "Espruino" project which is getting JavaScript running natively on the ESP8266. This is coming along well ... but it is time consuming ... and working on the ESP8266 is a hobby which means it gets juggled with my day job, family time and chores
Neil
Will sit down and have a read.
I suffer from a bad case of random misfiring synapses!