martinayotte wrote:If you wish to hook up external ADC, yes there are SPI ones such as MCP3008, but you can also use I2C ones such as MCP3021 which would be even more easier, and those ones are really small SOT-23.
I can confirm that MCP3421 is also a nice cheap I2C ADC, upto 18 Bit resolution.
For a general view and a simple driver implementation you can take a look at ESP8266 - MCP3421 ADC Article.
Example code is in LUA but is pretty trivial to translate basic ADC_Write and ADC_Read functions in Arduino IDE. If you have difficulties with I will be more than happy to help you.
Available on Tindie: https://www.tindie.com/products/nEXT_EVO1/universal-ac-mains-dimmer-mpdmv41/