Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

basic_example on esp-12e (nodemcu v1.0) doesn't work

Open
#18 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
25/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Stale
Tech stack
c

Research direction

Start with the basic_example build and its Makefile changes, then inspect user_init and the esptool commands used to create and flash the firmware. Reproduce the upload on the ESP-12E with DIO, 32m, and 40m settings, and compare the result with the working NodeMCU binary; done means the example boots and prints periodically without CHECK MEM FAIL.

Written by the indexing model from the issue text.

Description

I built the basic_example (https://github.com/esp8266/source-code-examples.git) and simply put the following code at the beginning of user_init

    uart_div_modify(0, UART_CLK_FREQ / 115200);

    while (true) {
        os_printf("Starting\n\r");
        os_delay_us(1000000);
    }

then considering that nodemcu v1.0 uses DIO for SPI flash, I modified the Makefile in two places:

- $(Q) $(ESPTOOL) elf2image -o $(FW_BASE)/ $(TARGET_OUT)
+ $(Q) $(ESPTOOL) elf2image --version=2 -o $(FW_BASE)/fw.bin $(TARGET_OUT)

in order to obtain a single bin and I added some options to esptool for loading:

- $(ESPTOOL) --port $(ESPPORT) write_flash $(FW_FILE_1_ADDR) $(FW_FILE_1) $(FW_FILE_2_ADDR) $(FW_FILE_2)
+ $(ESPTOOL) --port $(ESPPORT) write_flash -fm dio -fs 32m -ff 40m $(FW_FILE_ADDR) $(FW_BASE)/$(FW_FILE)

The program doesn't start up, I expected a periodic printing but I don't get anything.

I tried to load the nodemcu bin with the esptool command and I get a CHECK MEM FAIL even if it does work.

Dominant language
Makefile
Stars
278
Forks
125
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from esp8266/source-code-examples

All issues in esp8266/source-code-examples

Similar issues

More Embedded & IoT issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.