January 18, 2015, 9:14 pm


I decided I wanted a fabricated board for my esp8266 programmer. I’d previous made a quick board with wire wrap. So I put this design above together in Kicad. You can find the gerbers below, or if you like one drop me an email. One word of warning, the silk on these boards is wrong (it’s on the wrong side!). So if you do decide to build this be careful sticking the connectors on. You can also find all the files on github.
Download the gerbers here: esp8266prog
UPDATE:
Assembled and tested, works well:

This is a continuation of my notes on the esp8266 microcontroller, you can find a complete list of my esp8266 posts here
January 18, 2015, 9:05 pm
The following short script renames the standard Kicad Gerber output filenames to those used by OSHPark and other PCB fabrication services. Put the script in the same directory as your gerbers, set execute permissions and run it. Make sure all the output files (including the drill file) are present before running the script. Let me know if you find any issues.
#!/bin/bash
front=`ls *-F_Cu.gbr`
projname=`basename $front \-F_Cu.gbr`
mv *-F_Cu.gbr $projname.GTL
mv *-B_Cu.gbr $projname.GBL
mv *-F_Mask.gbr $projname.GTS
mv *-B_Mask.gbr $projname.GBS
mv *-F_SilkS.gbr $projname.GTO
mv *-B_SilkS.gbr $projname.GBO
mv *-Edge_Cuts.gbr $projname.GKO
mv *.drl $projname.XLN
January 18, 2015, 1:20 am
The esp8266 marketing summary gives the following information on the available sleep states:
OFF: CHIP_PD pin is low. The RTC is disabled. All registers are cleared.
DEEP_SLEEP: Only RTC is powered on the rest of the chip is powered off. Recovery memory of RTC can keep basic Wi-Fi connecting information. (NOTE: system_deep_sleep)
SLEEP: Only the RTC is operating. The crystal oscillator is disabled. Any wakeup Sleep XTAL Off events (MAC, host, RTC timer, external WAKEUP events interrupts) will put the chip into the WAKEUP state.
WAKEUP: In this state, the system goes from the sleep states to the PWR state. The crystal oscillator and PLLs are enabled.
ON state: the high speed clock is operational and sent to each block enabled by the clock control register. Lower level clock gating is implemented at the block level, including the CPU, which can be gated off using the WAITI instruction, while the system is on.
But the publicly available SDK documentation is a little hazy on how you should enter these states. There’s one function in the SDK system_deep_sleep(uint32 time_in_us), which will power the system down for a given number microseconds (this is DEEP_SLEEP), after which the system will require full reinitialization. The marketing summary suggests that the power consumption in this state, with only the RTC active should be 10uA.
The following inline assembly also compiles:
asm ("waiti 0\n");
But I’ve yet to test it. This theoretically should turn off the CPU (I guess waking it on interrupt?). I’ve not yet seen anything which suggests how to enter WAKEUP or SLEEP states.
Please drop me a mail or leave a comment if you come across any information.
UPDATE: Version 0.9.5 of the espressif SDK has been updated to add a function called: system_deep_sleep_set_option this appear to allow the device to wake up in a lower power mode where the Wifi is off.
This is a continuation of my notes on the esp8266 microcontroller, you can find a complete list of my esp8266 posts here
January 17, 2015, 2:47 am

I picked up this comms analyzer ages ago because it looked kind of interesting, and finally go a chance to play with it. It looks like a pretty impressive piece of kit. Perhaps most interestingly it has a spectrum analyzer built in. From my limited understanding it seems like it might be possible to just use the spectrum analyzer functionality independently. Luckily it also came with a complete set of manuals on CD. But even the basic operation manual is 400 pages (linked below). Looks like I’ve got some reading to do!
When I get a chance to play with it again, I’ll update this page with more info.



opm_e_8_0