ESP01 versus ESP12

And for today’s intriguing question…  I’ve been working on the ESP-12 for some time now – the program has never failed to work on power up… today I wanted to put the code back into an ESP-01 as I only wanted to use GPIO0… same code – same kit – ESP-01 powers up – gives up the usual rubbish on powerup and… nothing.

Works in the ESP-12 – doesn’t work in ESP-01.  Tell me I’m dreaming but are they not identical apart from the actual pinout?

I feel like I’ve entered a parallel universe… used to work. I’ve tried spare boards – makes no difference.

7 thoughts on “ESP01 versus ESP12

  1. Just a thought…

    I have 01 modules from two different sources and they’re slightly different with regards to GPIO2 – one is pulled high via a 2K, the other isn’t. I seem to remenber reading somewhere that GPIO2 (and GPIO15) need to be high at bootup…

    Maybe…?

    1. Yes Terence, but I’m aware of the restrictions on GPIO0 – also – the same argument should apply – no difference in theory between ESP-12 and ESP-01 as far as I know other than more pins brought out on the 12. Am I right?

  2. All I can think of…
    – does your ESP-01 still run firmware that worked there previously? (this confirms your board and your upload chain)
    – does your working ESP-12 firmware expect levels or signals on any GPIOs that the ESP-01 doesn’t provide?

    1. Thanks for that Ken – I was just about to write in here. Guess what…. I tried reverting to SDK 0.9.5 and lo and behold – it works. I went back to 1.0.0 – doesn’t work. I discounted the GPIOs because though they are not brought out – they are the same on both boards – and the code fails before any port setup!

      Here’s my init code..

      void ICACHE_FLASH_ATTR user_init(void) {
      uart_init(BIT_RATE_115200, BIT_RATE_115200);
      os_delay_us(1000000);
      INFO(“\r\nESP PREPARING\r\n”);
      tm.Valid = 0; //ps time is invalid
      CFG_Load();

      See the info line – which is just an os_printf… it doesn’t even get that far.

      I’ve contacted Espressif.. the strange thing is – a simple HELLO WORLD program works a treat – so it could be something to do with the size of the program – I really don’t see it as the chips are the same – but it is utterly repeatable..

        1. Well, stating that there is a bug is one thing… finding it another 🙂 As long as they fix it I’m not too bothered about earning money. I do seem to have this knack for finding issues… I can say with confidence that I’m single-handedly responsible for reporting a lot of MQTT bugs – one reason is it so good now (the author is very helpful).

Comments are closed.