Esp8266 limitations?

Posted on
  • Hi,
    I just read about the ESP8266 chip's limitations.
    Will there me some that can never be fixed? not hardware problems like DAC's but software limitations, like PWM support or SPI.
    I really REALLY wish espruino had full support for the esp8266. Wifi + javascript = Awesomeness!

  • I think there's a lot that could be fixed on ESP8266 given some time on it.

    For truly real-time stuff you're off to a bad start because you're having to share the same CPU with the WiFi, but there may be some things that can be done to improve that.

    The built-in debugger will likely never be enabled though because it would require a significant re-design so that it didn't trip the ESP8266's watchdog timer.

    It's all open so nothing stops anyone from fixing things themselves. However I'm not optimistic that everything will be fixed - purely because it's hard to expect people to spend weeks of time working for free on something that might not be that fun (although many ESP8266 contributors still do exactly that :)

    If there was a way for me to make money out of ESP8266 I'd probably be willing to put some real effort into it - but unfortunately I just can't see a way of doing anything with it that people would be willing to pay money for when you can buy modules for just a few dollars and load the software on yourself.

  • Im not sure what limitations you are referring to?

    I2c, onewire and spi work fine. Pwm is not supported in hardware, so is done in software.

    Here is an example of spi driving a Nokia display:­287196/#comment13070259

    The limitation with the board really is lack of ram - this limits your code size.

    What is it you intend to do?

  • There are a few of us working on the esp32 port - it is like an esp8266 on steroids - it has 2 cores, much more ram and hardware i2c, i2s, spi,pwm, DAC, adc ... and 512k ram...

    haha I want to control servos with the esp8266 and I would really like pwm support.
    I chose the esp8266 because of the massive 4mb flash - more than enough to store most projects.
    Also, does the dht11 sensor use analog input or digital?

  • re:

    does the dht11 sensor use analog input or digital?

    @user73202 Have you taken a look at the data sheet yet?


    That's pretty normal here, he's super responsive.

    I chose the esp8266 because of the massive 4mb flash - more than enough to store most projects.

    Espruino loads the minified js into RAM - so your project size is limited by the RAM, not the flash. There is undeniably a significant overhead to using Espruino (vs, say, programming the chip in C) - but in exchange, you get to write javascript in all it's modern glory instead of C, and there's a js console that you can execute arbitrary code through in real time.

    Also, does the dht11 sensor use analog input or digital?

    DHT11 is digital, should be able to use any pin that you can setWatch() on. That said, they're pretty crap - you get what you pay for.

    If you want PWM and wifi, and generally good chip features (hardware PWM on tons of pins, real hardware I2C, multiple UARTs, etc), have you considered the official Espruino Wifi? Ain't cheap - but you do get what you pay for (and Gordon will fix problems if you find them)

    I use ESP8266's running Espruino all over the place - as long as the projects are fairly small. I've got a bunch deployed running my ping-pong ball lights, for example (where they're rock-solid stable, might I add), but I would not think of using them for a large project - I'd use a Pico or a WiFi.

  • Hi @user73202,

    a DHT22 is a better choice - check the this page

  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview

Esp8266 limitations?

Posted by Avatar for BootySnorkeler @BootySnorkeler