[Damien] sent us a quick email to let us know that Micro Python, a lean and fast implementation of the Python scripting language on microcontrollers is now running on the ESP8266. You may remember him from his interview on Hackaday, back when Micro Python was still at the crowdfunding stage. His campaign gathered £97k (for a £15k objective) and its comment section let us know that the backers are very happy with what he delivered.
As the very cheap ESP8266 Wifi module is gathering a lot of attention, he implemented support for it. You may use the dedicated files in the main repository ESP8266 folder together with esp-open-sdk or simply use the precompiled binary available here. Unfortunately the software doesn’t have WiFi support yet, as it’s only a Python REPL prompt over UART at the moment. Contributors are therefore welcome to help speed up the development!
Im about to start a project that uses the esp8266 and was trying to figure out if it made sense to use an MCU and AT commands for the increased IO or move to all SPI peripherals so I could use the SDK, with the added overhead of learning yet Another platform. this makes that easy as my PC app is written in python.
so…/follow
Was thinking the same thing. Especially after reading this. But until it’s all right there and worked out. It’s better to just use a mcu.
Also the ESP does not have ADC, if you need one….
it is said to have one
The datasheet mentions the RF side ADC, which is what might have confused some people to assume there is one available for the user. I have seen this mentioned on multiple websites, but there is nothing in text or picture in the datasheet to indicate there is one with user accessible input.
I am sure they will fix this in future versions of the chip…
The 8266ex version of the chip has a general purpose, though somewhat limited ADC.
“ESP8266EX also 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.”
Datasheet link: http://www.mikrocontroller.net/attachment/231858/0A-ESP8266_Specifications_v4.pdf
It looks like i have been a victim of out dated datasheets….Thank you! I was using this one, my mistake:
https://nurdspace.nl/images/e/e0/ESP8266_Specifications_English.pdf
it all depends if you care about form factor, power consumption obviously how many IO devices you’re going to connect is also a factor.
SPI and I²C peripherals are surprisingly expensive. For high volume products, I always end up using a small micro as a port extender. Those chips look nice on paper, until you see the price.
Yes, port expanders cost more than a micro with similar pin numbers that can do a lot more. I am actually wondering if they are dedicated silicon or if there is really a micro inside with a ROM for program.
just look at the keyboards, even first PC XT from IBM used microcontroller inside the keyboard
starting with AT (I think XT bitbanged keyboard using 8255?) keybaord controller inside PC was also a microcontroller
http://wiki.osdev.org/%228042%22_PS/2_Controller
you cant really beat cheap flexible small micro, you can have STM8s (17 IO?) today for $0.3, so there really is no point paying 3x that for i2c expander
I like the cheap STM8 parts. I generally get them by the hundred so they are 0.51 ea.
Still quite a bargain for a 20pin SM uC with 16mips, 8k flash, 1k ram, 128b ee and three timers.
Great idea porting Python to the ESP8266. The first beta is running fine.
Is there any way to pipe the TTL port to a socket on the wifi side for one way or bidirectional comms ?
Many devices (I have 3 of them without thinking too hard) have TTL ports on them and this would be a great way to internet enable them, if the ESP supports that. But I’ve read that the serial port is just for setup and nothing more. Which if true is an epic shame.
The other thing I was thinking of is a I2C bridge to a 1wire master to expand the I/O and environment readings. But as no one has done it yet, I’m thinking it also may not be possible (or at least easy).
But I’m tuned in for developments on this platform.