Use this forum to chat about hardware specific topics for the ESP8266 (peripherals, memory, clocks, JTAG, programming)

User avatar
By sounds
#525
Squonk wrote:Yeah, no ADC, but you have a sigma-delta PWM DAC capability on each GPIO.

To expand on what Squonk said, you can approximate an ADC by using a few op amps for sample and hold + comparison to the PWM DAC.

Of course, it's pretty easy to wire up an external ADC. But understandably it would be nice if the ADC function was integrated with the rest of the SoC.
User avatar
By tinhead
#527 from the current specs "ESP8266EX integrates a generic purpose 10-bit analog ADC. The ADC range is from 0V to 1.0V. It is typically used to measure the voltages from the sensor or battery status. The ADC cannot be used when the chip is transmitting. Otherwise the voltage may be inaccurate"

Then pin 6 is marked "TOUT (ADC)".

In the ESP8266 specs there is nothing about ADC.

However, there in no docummentation about. In libs all i found was sar_init, get_sar_dout, read_sar_dout. So that could be the ADC. Tat SoC seems to be reconfigurable, so as jonsmirl said, they probably working on ADC implementation.
User avatar
By Squonk
#530 I don't have access to the ESP8266EX spec, so I can't tell.

But WAIT: ALL the modules I received both from Electrodragon and AliBaba have this marking on SoC:
Code: Select allESP8266EX
252014
POHV54


This means that I already have the newest ESP8266EX from 16/06~22/06/2014 version featuring an ADC :P

These chips are reconfigurable, but only at the design level: if you want to implement new stuff, you need to have another run at TSMC, which is probably what they did 3 months ago, thus the "EX" suffix. It is supposed to have 2 UARTs (which I thought was already the case for plain ESP8266) and be more power-efficient.
User avatar
By hackrid
#537 Thanks for your research :)
May I ask from where you have this information?

edit: to answer from where: this information is shown in some later released datasheet.
But i couldn't find the 0..1V range :(, conversion time, input impedance etc... :(