

Eyore test
ESP8266 hardware test assembly for esp-open-rtos
- Size
- 50 × 50 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 36
- Nets
- 46
- Pads
- 187
- Tracks, vias
- 952, 141
- Pours
- 3
- Routed
- Yes
- KiCad
- KiCad 4
- Created
- 29 Oct 2015
- Updated
- 1 Mar 2016
Overview
Eyore test is an open-source printed circuit board by projectgus, from the projectgus/eyore-test repository on GitHub. It is a 2-layer board of 50 × 50 mm with 36 parts on 46 nets, routed with 952 tracks and 141 vias.
It is built around the STM32F072C8T6, ESP-12E and LD1117S33CTR-HXY, with the BLM18KG121TN1D among its other parts. Its parts include 11 capacitors, 7 resistors, 4 ICs, 3 connectors and 3 inductors. It belongs with the ESP8266 and STM32 boards of this library.
Main components
4STM32F072C8T6
LQFP-48(7x7)-40℃~+85℃ 1.65V~3.6V 12bit 12bit 16KB 32 Bit 37 48MHz 64KB ARM Cortex-M0 Built-in FLASH LQFP-48(7x7) Microcontrollers (MCU/MPU/SOC) ROHSSTMicroelectronicsMicrocontrollers (MCU/MPU/SOC)ESP-12E
SMD,24x16mm-20℃~+70℃ -90dBm 16dBm 170mA 2.4GHz 3V~3.6V 56mA 802.11b/g/n ESP8266 Chip On-board PCB Antenna Over-the-air (OTA) update UART、SPI、I2C SMD,24x16mm WiFi Modules ROHSAi-ThinkerWiFi ModulesLD1117S33CTR-HXY
SOT-223-20℃~+85℃ 1.3V@(800mA) 15V 2mA 3.3V 800mA Fixed Over Temperature Protection SOT-223 Voltage Regulators - Linear, Low Drop Out (LDO) Regulators ROHSHXY MOSFETVoltage Regulators - Linear, Low Drop Out (LDO) RegulatorsBLM18KG121TN1D
06031 120Ω@100MHz 30mΩ 3A ±25% 0603 Ferrite Beads ROHSMurataFerrite Beads
README
README.mdEyore-Test
A hardware design for running automated tests against the esp-open-rtos ESP8266-based software framework.
Major Components
- 2x ESP-12E ESP8266 processor modules, to run tests on. Named A & B.
- 1x STM32F072C8 Cortex M0 microcontroller - acts as USB serial for programming & monitoring, also provides a "programmable peripheral" to test against.
- Host computer with esp-open-rtos source tree, including host test program (
test_runner.py).
Cost
Aim is for total BOM cost under $12US for small quantities, all inclusive.
Functional Description
Programming/Initialisation
STM32F072 acts as USB device (dual CDC ACM serial port). STM32 USART1 connects to ESP A's TX/RX pins, USART2 to ESP B TX/RX pins.
Other STM32 I/O pins are wired to drive RESET and GPIO0 on both ESP A & ESP B. This allows the STM32 to reset the ESPs & select either serial bootloading or normal operation.
The USB CDC interface provides a "NodeMCU-compatible" reset protocol that works with esptool.py - asserting DTR pulls down GPIO0, asserting RTS pulls down RESET, but asserting both DTR and RTS together does nothing.
ESP A / ESP B Connections
These connections match the "dual" configuration mentioned in the esp-open-rtos test_setup docs. These allow the ESPs to interact with each other during tests.
This part of the test setup can be reproduced on a breadboard fairly easily.
ESP A & B have the following interconncted pins, all via 220 ohm resistors for short circuit protection:
ESP A | ESP B | Function ----- | ------ -------- 2 | 2 | 4 | 4 | 5 | 5 | 12 | 12 | 13 | 15 | ESP UART RX/TX "swapped" 15 | 13 | ESP UART TX/RX "swapped" 14 | 14 |
Note that GPIOs on ESP A are also connected to the STM32.
ESP A / STM32 Connections
To allow peripheral testing between ESP A and an independent microcontroller, some STM32 peripherals are connected to ESP A peripherals:
| ESP A Interface | ESP GPIOs | STM32 Interface | ESP Pins |
|---|---|---|---|
| Software i2c | 4, 5 | I2C1 | PB6, PB7 [1] |
| HSPI | 12-15 | SPI1 | PA4-PA7 |
| I2S Input | 14(WS),13(BCK),12(DAT) | I2S1 | PA15, PB3, PB5 |
| I2S Output | 2(WS),3(DAT),14(CLK) | N/A (bit-bang) | PB11, PA9, PA4 [2] |
| SPI (flash intf) | SPI2 | PB12..PB15 [3] | |
| ADC (TOUT) | TOUT | GPIO (bit-bang) | PA0 & PB4 [4] |
[1] I2C1 slave is the only STM32 interface enabled after reset, and is the protocol used for the ESP itself to configure the STM32 as a "programmable peripheral".
[2] ESP I2S output is not wired to a I2S peripheral on the STM32. However STM32 can bit-bang reading of the I2S output (at slow clock speeds).
[3] Not used due to hardware bug: On Rev 1.0 of eyore-test the SPI2 NSS pin (slave select) is wired to the CS line of the ESP module, which is the CS line for the ESP's SPI flash. The other SPI2 NSS pin is not connected in this revision.
[4] TOUT pin is connected directly to STM ADC pin PA0. TOUT is also connected to PB4 via an RC network, so PB4 can be used as a low-fi DAC, PWMing a voltage for the ADC to read.
Programmable Peripheral Interface
As part of each test, ESP A can configure the STM32 peripherals via the I2C interface.
Actual I2C protocol/register details are TBD, likely to be incremental features.
STM32 Firmware
STM32 has a USB DFU bootloader in ROM. "Flash" button and jumper are provided to access this bootloader on power-on. SWD port is also provided for external programming/debugging if necessary.
Name
I've seen esp-open-rtos abbreviated to "e-o-r", and I tend to read that as "Eyore". :)
Parts
36| Qty | Value | Footprint | References |
|---|---|---|---|
| 5 | 22uF X5R 16V | FT:1210_CAP | C1, C2, C5, C8, C9 |
| 4 | 100nF 6.3V | FT:0603_CAP | C6, C7, C10, C11 |
| 3 | BLM18KG121TN1D | FT:0603 | L1, L2, L3 |
| 3 | TESTPOINT | FT:1X01 | TP1, TP2, TP3 |
| 3 | VAL** | Connect:1pin | 1pin, 1pin, 1pin |
| 2 | 10K | FT:0603 | R6, R7 |
| 2 | 220R | FT:RES_CAY16 | R3, R5 |
| 2 | ESP-12E | ESP:ESP-12E | U3, U4 |
| 2 | SW_PUSHBUTTON | FT:SW_PUSHBUTTON_SMD | SW1, SW2 |
| 1 | 100K | FT:0603 | R1 |
| 1 | 100nF | FT:0603_CAP | C3 |
| 1 | 10K | FT:RES_CAY16 | R4 |
| 1 | 1uF 6.3V | FT:0603_CAP | C4 |
| 1 | 47K | FT:0603 | R2 |
| 1 | CONN_01X02 | FT:1X02 | P3 |
| 1 | CONN_01X04 | FT:1X04 | P2 |
| 1 | LD1117S33CTR | SOT-223 | U1 |
| 1 | STM32F072C8 | Housings_QFP:LQFP-48_7x7mm_Pitch0.5mm | U2 |
| 1 | USB_5PIN_SHELL | FT:USB-MICRO-5pin_PTHMOUNT | P1 |
Questions
How big is the Eyore test PCB?
It measures 50 × 50 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Eyore test use?
36 parts, built around the STM32F072C8T6, ESP-12E, LD1117S33CTR-HXY and BLM18KG121TN1D. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the Eyore test KiCad files?
From the projectgus/eyore-test repository on GitHub, at the commit this page was made from: the board is eyore-test.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Can I use the Eyore test design in my own project?
Its repository states no licence, so its author keeps all rights: ask projectgus before reusing the design.
Similar boards
- 2 layers95.3 × 53.3 mm

- 2 layers64.8 × 36.8 mm

- 2 layers35 × 57.5 mm

- 2 layers36.8 × 41.3 mm

- 2 layers82.8 × 63 mm

- 2 layers50 × 75 mm

- 2 layers26.1 × 15 mm

Usb2can pcb
myaki-moe/usb2can
A compact and low cost open source USB to CAN bus adaptor. 紧凑且低成本的开源USB到CAN总线适配器
19 parts10GPL-3.0 - 2 layers50 × 100 mm

ActiveLoad
ahessling/ActiveLoad
Small 12 Watt Active Load (dummy load) with STM32 microcontroller
83 parts5MIT