Live data from Hacker News

Unveiling secrets of the ESP32: creating an open-source MAC layer

zeus.ugent.be

141–150 of 157 posts

Re: Unveiling secrets of the ESP32: creating an open-source MAC layer

#142

Earlier quoted context omitted.

You are assuming you have full insight into what the board is capable of.

What part don't I have insight into? At least the parts that could be exploited by china in some way that would affect me, and couldn't be detected?

Google 'the thing' and tell me that you could have predicted what it was and how it worked. Hardware is finicky in that way: you look at one thing it can be quite another.

Re: Unveiling secrets of the ESP32: creating an open-source MAC layer

#143

Earlier quoted context omitted.

It is because of FCC certification requirements. Usually, if the end user can modify the lowlevel radio firmware on the device, the device looses it's FCC certification and cannot be sold in USA. It also seems that Espressif has bought their wifi IP, so their contracts and licensing terms with the IP vendor likely prevent any sharing. But FCC is the reason for closed binary blob firmware for all wifi radios out there…

I don't understand how the license affects certification TBH. As this post clearly shows users can implement their own stack if they really want to, it's not that the license is going to prevent them. Why can't one have an open source stack with specific builds that are approved, tested and certified?

FCC certification is for the entire system, firmware included.

The reason the modules with integrated antenna are so popular is that the module carries its own certification, so you don't need to do it yourself.

If you use the module with an antenna connector instead of integrated, you must get your own FCC certification. It's for the entire system.

> Why can't one have an open source stack with specific builds that are approved, tested and certified?

Mainly because it's heinously expensive and difficult.

Re: Unveiling secrets of the ESP32: creating an open-source MAC layer

#144
post #45

Earlier quoted context omitted.

I’ve actually found that ESPHome is sufficient for most basic use cases

The question then is where have you found ESPHome to fall short?

I've found it to be nearly unusable. The opaque firmware generation is an anti-feature IMO. It also doesn't fucking work. If you change the config, you have to force a full clean and rebuild or you'll get a corrupt image. Building an esp firmware image from scratch takes several minutes every time you want to change a config.

All of the provided controls are bad. It's incredibly difficult to get it on the network. The documentation is laughable.

It took me three hours to get a simple RGB strip working. All it had to do was drive three PWM signals. The esp has hardware specifically for that. It took a lot of effort to even find out how to use the LEDC hardware, much less how to assign a pin and hook it to the color picker.

I also wanted to hang an IR LED off it to control my TV and such. No sort of configurable button panel, you get one giant widget per action.

I did eventually get it working, but honestly it would have been so much faster to just write my own firmware to talk to HA directly.

Re: Unveiling secrets of the ESP32: creating an open-source MAC layer

#145
post #99

the esp32 also has a mask ROM (which includes BASIC for some weird reason). Hence fully deblobbing it is a hopeless battle. https://docs.espressif.com/projects/esp-idf/en/v4.3/esp32/ap...

Nothing about a mask ROM makes the data unrecoverable. It's still Memory that can be Read.

I'd be very surprised if there's not an exploit that will get the CPU to barf up the full ROM contents. That's if there isn't a more direct way to read it.

Even in the extremely unlikely case that it can't be read programmatically, you can always physically decode it with a microscope and a working eyeball.

From there, it's "just" a matter of decompiling the machine code into something readable. It's not trivial, but it can be done by a single person in a reasonable timeframe.

Re: Unveiling secrets of the ESP32: creating an open-source MAC layer

#146
post #105
post #99

the esp32 also has a mask ROM (which includes BASIC for some weird reason). Hence fully deblobbing it is a hopeless battle. https://docs.espressif.com/projects/esp-idf/en/v4.3/esp32/ap...

I would guess most 32-bit microcontrollers and any SoCs capable of running Linux have some sort of boot ROM, at least for the flash programming mode (especially if it's over USB).

Pretty much, yeah. You'll usually see a boot ROM, but it will also have the ability to boot into flash so you can run your own bootloader. But the ROM is always there as a fallback and can't be destroyed.

Re: Unveiling secrets of the ESP32: creating an open-source MAC layer

#147
post #117

Earlier quoted context omitted.

I think that US agencies are not as interested in stealing trade secrets or harming US companies as other countries would be.

NSA is infamous for its involvement in stealing trade secrets and generally cooperating clandestinely to for example ensure US company wins the bid. And the competition is often supposed US allies. It also rather infamously claimed it never partakes in industrial espionage, despite it being somewhat well documented in 1990s that they do. Generally, if the contract is big enough, and specially if the companies involve…

> NSA is infamous for its involvement in stealing trade secrets and generally cooperating clandestinely to for example ensure US company wins the bid. And the competition is often supposed US allies.

This was my point. They don't steal trade secrets in order to harm US companies.

Re: Unveiling secrets of the ESP32: creating an open-source MAC layer

#148

Earlier quoted context omitted.

I think that US agencies are not as interested in stealing trade secrets or harming US companies as other countries would be.

I think that is a very, very naive point of view. There are countless examples of this happening - probably they're not on your radar because your nation was the recipient of the stolen goods .. The USA regularly uses its intelligence apparatus to undermine economy and industry in other countries. I would even say, at a far greater rate, with worse results (for the targets) than anything China or Russia are doing ..…

> The USA regularly uses its intelligence apparatus to undermine economy and industry in other countries. I would even say, at a far greater rate, with worse results (for the targets) than anything China or Russia are doing ..

This was my point. How often does it use its power to undermine the US economy or industry in the US?

Re: Unveiling secrets of the ESP32: creating an open-source MAC layer

#149

I wasnt aware of this wifi blob. This feeds a tiny paranoia I have at the back of my head when dealing with esp32/espressif. I have dozens of esp32s around and I love them, but Espressif is 100% Chinese. Im uncomfortable with what I read that every company of significant size in China automatically requires CCP party members to be involved in the company at a high level. So Im very happy to hear people such as these…

Tbf I think China is more interested in the money espressif makes than anything like spying. Because they'd be so easily caught out by anyone with a decent router. And if they ever happened then the whole company would be gibbed.

Re: Unveiling secrets of the ESP32: creating an open-source MAC layer

#150
He should just go with stm and its open source LwMesh library instead.

But the closed radio parts are indeed horrible. Qualcomm (US Intelligence) and Broadcom (Chinese intelligence) controlling the physical layer underneath is as disturbing as the various Intel, AMD, ARM backdoors in their pre-OS layers.

Post reply on HN