Hardware

Here's some hardware resources associated with the m0xpd / Kanga ESP8266 - AD9834 board.

ESP Module Support

When you look at the PCB, you'll notice that only some of the ESP module's pads have corresponding pads on the PCB - there is no electrical connection to some of the module's pads.

Don't worry - you don't need to access these pins in ordinary programming of the ESP8266 module.

Board Pinout

The m0xpd / Kanga ESP8266 - AD9834 board has the same form factor as an Arduino UNO R3 board, with 0.1 inch headers on either side. These headers provide for a range of digital I/O lines defined for the Arduino, which is wider than that supported by the Espressif ESP8266. Accordingly, there is some repetition / duplication.

The pin allocation used actually follows a standard established in the WeMos D1R2 board - the table below shows the Arduino R3 pin name in the left column and explains which ESP8266 IO line is connected to that pin in the corresponding position in the right column.

For example, the header associated with Arduino R3 Digital IO D4 is connected to the ESP8266 GPIO4. Notice, however, that (since this line handles the serial data element of I2C in the ESP8266), GPIO4 also appears on the Arduino header pin A4, which is also an SDA pin in the R3 pinout. It even appears a THIRD time on the R3 pinout, where SDA and SCL are repeated - near the DDS sub-system on this board.

The pin allocations of all the Arduino R3 headers (and of the 'm0xpd RF Bus', which carries the output from the DDS module) on the m0xpd / Kanga ESP8266 - AD9834 board are summarized below:

The 'm0xpd RF Bus' was originally defined for a series of Arduino shields and is used here to allow backward compatibility with those devices - particularly the Kanga / m0xpd Tx Shield, which can plug on top of the ESP8266 - AD9834 board to make a self-contained beacon. The RF bus carries the DDS output sinewave and also the sign bit from the DDS chip (which an be configured to generate a square wave).

The pinout can be traced on the schematic.

Jumper JP2

The header pin D13 is managed by the Jumper JP2.

JP2 is provided to switch the board between two states:

1) For operation with the Kanga / m0xpd Tx Shield (where D13 keys the transmitter):

Fit a shorting link between JP2 pins 2 & 3, to connect D13 = GPIO15

Pins 2 & 3 are the pins furthest from the edge of the board.

This is the default configuration

2) For operation in the WeMos D1R2 Pinout:

Fit a shorting link between JP2 pins 1 & 2, to connect D13 = GPIO14

Power

The board can be powered in three different ways...

1) USB Power (JP1 pins 2&3 shorted - pins 2 & 3 are the two NEAREST the USB socket)

In this mode, power is drawn directly from a host computer down the USB cable and down-regulated to 3v3 by the FTDI chip. Use this mode for initial programming.

2) 5V input (JP1 pins 1&2 shorted)

In this mode, power is drawn from voltage applied at the 5V pin (e.g. from the Kanga / m0xpd Tx shield) and further down-regulated by IC3. The system may be connected to a host computer, as the FTDI chip would then be powered by the computer. This is the main application mode

3) DC Input (JP1 1&2 shorted)

In this mode, power is drawn from a voltage applied to the DC input socket and down-regulated by IC3. The d.c. input voltage should preferably be 5V and must never exceed 12V (note that the power dissipation in IC3 will increase when voltages above 5V are applied). The system may be connected to a host computer, as the FTDI chip would then be powered by the computer. This is a stand-alone application mode.

Connections to the power header are explained in the table below

Notice that the 5V pin is an INPUT to this board, NOT an output.

Schematic

You can download a copy of the schematic below.