"esp-open-sdk" is an almost free and open SDK for ESP chips

While the vanilla Espressif SDK ships with a number of blobs, there is also an open SDK already. Let’s have a look at the details.

Tensilica Xtensa®

This is about the Tensilica Xtensa® processor family from Tensilica - Wikipedia. In their own words, Cadence offers Tensilica as an open IP platform built from SIP blocks.

gcc-xtensa

The gcc backend for the Xtensa is probably fully open as one could deduce from Xtensa Options (Using the GNU Compiler Collection (GCC)) and

ESP toolchain

On the other hand, Espressif Systems derived its ESP32 chip from the Xtensa® IP core and added a HAL library called ESP-IDF, which is the official development framework for the ESP32.

While most of its source code is open, there are some closed-source proprietary blobs from Espressif required to run any programs on the chip.

Q: What are these proprietary blobs?

[…] which pulls down all submodules that the framework depends on: in this case some binary blob libraries in components/esp32/lib and components/bt/lib as well as the esptool.py program that will actually flash the chip for us.

How To Get Started With The ESP32 | Hackaday

A: It’s the WiFi and Bluetooth software stack.

esp-open-sdk

This repository provides the integration scripts to build a complete standalone SDK (with toolchain) for software development with the Espressif ESP8266 and ESP8266EX chips.

The ESP8266 Wiki references the esp-open-sdk

which provides the integration scripts to build a complete standalone SDK (with toolchain) for software development with the Espressif ESP chips.

Q: Is the Arduino core for the ESP32 already based on the esp-open-sdk or how can it be twisted to be so?

More about this topic:

Free software and esp8266, do you trust the binary blobs?

Hello,

I’ve seen esp-open-sdk and other projects where the toolchain is freedom software, gcc/gdb/binutils etc, but still there is closed source proprietary blobs from Espressif required to run any programs on teh chip.

Where can I find totally freedom software to load on the esp8266 and run my programs?

Otherwise, doesnt this bother anyone else, why do you trust whats on the chip? It could own your network if it really wanted to, and you wouldn’t know if it did so or not. [In a] Post-Snowden world, the only question would be - how much could this esp8266 fuck up all your computers on your network?

EDIT: Found free/open source/reversed bootloaders for esp8266

https://www.reddit.com/r/esp8266/comments/462k8g/free_software_and_esp8266_do_you_trust_the_binary/ (Feb 2016)