Live data from Hacker News

ESP32-C3 WiFi and BLE RISC-V processor is pin-to-pin compatible with ESP8266

cnx-software.com

71–80 of 119 posts

Re: ESP32-C3 WiFi and BLE RISC-V processor is pin-to-pin compatible with ESP8266

#71

Earlier quoted context omitted.

Is it even possible to make as much as the hype fields (webdev, data science, ML) in embedded? Is there opportunities for startups in HW sector?

Sadly no - apart from a very tiny number of silicon valley companies, everyone else in embedded tech seems to pay the people who write verilog and assembly the same as the people who make the schematics and the mechanical designs. That's sometimes only 40% of what people who write python and nodejs get in the same city...

I think that's partly due to market forces and the value produced per developer. A few Webdev's can write software that enables an entire web company in a few months. Due to the poor state of embedded development ecosystem the same is not true in hardware, compounded by the time/effort required to workaround bugs in the hardware plus working in error prone C. Then embedded developers/companies don't share workarounds via open source, so every team must spend time working around already solved issues. Personally, I'm using the ESP32 largely because of the open-source SDK, that didn't require an NDA or some crappy IDE, then I ported Nim to it. But normally it might take 2-3x more embedded devs to create products with comparable profits to similar devs in pure software

Re: ESP32-C3 WiFi and BLE RISC-V processor is pin-to-pin compatible with ESP8266

#72
post #62

Earlier quoted context omitted.

You are seeing economies of scale (and cheap labour) in action.

And people have the gall to badmouth capitalism from the comfort of their Ikea couch on their Iphone.

After an 8-hour work day or on a weekend. Thanks capitalism!

Re: ESP32-C3 WiFi and BLE RISC-V processor is pin-to-pin compatible with ESP8266

#73

Earlier quoted context omitted.

Mind pointing me in the right direction? The ones I have are more like 10-20 m A (maybe that's a side-effect of having USB on board? I'm not really an expert, I just want my battery powered stuff to last months instead of days)

https://www.ezsbc.com/product/esp32-feather/ https://www.crowdsupply.com/unexpected-maker/tinypico https://www.olimex.com/Products/IoT/ESP32-S2/ESP32-S2-DevKit...

Thanks, these are some neat boards! A bit higher cost than the Aliexpress ESP32s I'm used to, but maybe that's the price you have to pay for better design and components. It's neat that the TinyPICO lets you turn off the power LED without having to cut traces on the PCB.

Re: ESP32-C3 WiFi and BLE RISC-V processor is pin-to-pin compatible with ESP8266

#74

Just recently, Bouffalo Lab introduced BL602 which is a RISC-V WiFi-BLE chip with ESP8266 price. I guess Espressif had other plans for the competition! [1] https://news.ycombinator.com/item?id=24877335 [2] https://news.ycombinator.com/item?id=24916086 Skimming over C3 datasheet, it seems it doesn't have DAC but has one I2S. BL602 has DAC but no I2S!

I2S is also handy for bit-banging protocols without using CPU time—it's popular to use it on the ESP* chips to drive WS2812B and similar strips without hassle.

Curious question, is it just I2S that is used for this purpose? I'd assume you could use any serial protocol for bit banging purposes right?

Re: ESP32-C3 WiFi and BLE RISC-V processor is pin-to-pin compatible with ESP8266

#75

Earlier quoted context omitted.

I2S is also handy for bit-banging protocols without using CPU time—it's popular to use it on the ESP* chips to drive WS2812B and similar strips without hassle.

Curious question, is it just I2S that is used for this purpose? I'd assume you could use any serial protocol for bit banging purposes right?

I use the RMT (Remote Control) devices of the ESP32 from FreeRTOS for this. They were intended for generating on-off-keying of carrier modulated wave forms to blink an IR LED for a remote control.

If you leave off the carrier modulation you end up just specifying a list of on and off times and get absolutely rock solid waveforms in hardware.

There's a bunch of them, I forget, maybe 8? So you can drive a bunch of chains at once.

You can also use these for rock solid reading of input signals too. Say you have a weather station that sends some god awful protocol up a wire at you… you just collect a list of the high and low times and get notified when it stops wiggling the signal. Then you sort out the data from the transmission. The timing might be way off because it's cold and the sender's electronics are really cheap, but you can analyze the signal and see what they meant.

Re: ESP32-C3 WiFi and BLE RISC-V processor is pin-to-pin compatible with ESP8266

#76
post #64

Earlier quoted context omitted.

In my humble experience, slightly less ≈ 30% to 40% less.

Wow, that's a much bigger differential than my experience. Are you comfortable sharing the general region so I can avoid it?

I have been involved in embedded systems for more than 25 years now, and I barely do "pure" embedded development these days. That is projects that comprise only designing a specific PCB hardware, or writing the firmware drivers and top level application for them.

Except for a couple of years I have resided mostly outside of California, but when doing consulting I have mostly engaged with companies in the Bay area.

In the past when I did pure embedded development I had to fight tooth and claw to get rates close to $100/hour, while at the same time iOS app developers or webdevs were starting at $120-$140/hour easily, even after the mobile app craze. Despite taking into consideration that I am both a hardware and a software engineer, and rates outside of California were much lower ($45-$70/hour at the time). Which was one of the reasons I pushed hard to find my clients in the Bay area instead.

These days since I have more experience and business contacts I have diversified into more complex projects that have embedded components and pay me better since they belong to regulated industries. Even now I work with full-stack software programmers in AWS/GCP cloud apps, React/Vue frameworks, modern databases and connected middleware that make around $200/hour. For comparison, in the last years I have been involved in the development of a medical device where I did the hardware design (MCU/FPGA, signal acquisition), HDL/firmware programming (Verilog, RTOS, Linux, BLE), technical host tools (C++, Python, Qt) and was paid $180/hour, and lately a mobile robot project where I did the hardware architecture, integration and system control loops (MCUs), and prototyped the high level software application (RT-Linux, ROS, Nvidia Jetson) for $150/hour. An acquaintance in the valley that was working for a similar project but entirely in the ML/CV stack was billing $270/hour. That may be a bit extreme example since ML is hot today, but nevertheless.

Re: ESP32-C3 WiFi and BLE RISC-V processor is pin-to-pin compatible with ESP8266

#77

Earlier quoted context omitted.

That's horrifying. What is the fix/mitigation if you don't have proper atomics? I can't see how to properly avoid that.

You can disable interrupts when modifying locking primitives, and save/restore the CPU context when interrupts are entered/exited. You can also minimize the amount of changes that any interrupt handler can make within the interrupt context. It's not really that bad, and plenty of microcontrollers lack atomic operations.

If you disable the interrupts, does that mean any incoming events get ignored, or simply queued for later? If the former, that sounds like you risk missing something important.

Re: ESP32-C3 WiFi and BLE RISC-V processor is pin-to-pin compatible with ESP8266

#78

Earlier quoted context omitted.

That is going to put a dent in ARMs revenue. Even if that particular chip isn't a big seller, it means ST now has a drop-in replacement for ARM in their other SoCs. Soon people will realize that ISA is often irrelevant, but the peripherals, libraries, and tools are.

I'm not so sure. About ISA there is this : https://news.ycombinator.com/item?id=24958423

Any ISA can be dissected, but ultimately RISC-V's got the mindshare and the license.

Re: ESP32-C3 WiFi and BLE RISC-V processor is pin-to-pin compatible with ESP8266

#79
post #17

Espressif is no longer alone in the ultra low cost hobby WiFi SoC space. Pine has started working with the Bouffalo BL602 which seems to be a fairly similar RISC-V powered part: https://www.cnx-software.com/2020/10/28/the-quest-for-a-blob... It will be interesting to see which one gains critical mass in community use.

It’s all about the software & documentation. There’s lots of “competitors” to esp32, pretty much none of them except STM have the software for developers, which makes their offerings close to useless. The only way to gain critical mass is relentless deep commitment to developer tools/libraries and documentation. In many cases these competitors actually try to hide their documentation and keep secret how their chips w…

This. If it doesn’t work with the Arduino IDE/platformio, I would rather not use it. What these manufacturers should do is invest in integrating with these SDKs instead of creating their own. And they should document everything to the level that IPFS is documented (just an example of excellent documentation that comes to mind). Do those two things and you got a winner even if the device itself isn’t technically the superior choice.

Re: ESP32-C3 WiFi and BLE RISC-V processor is pin-to-pin compatible with ESP8266

#80
post #23

Earlier quoted context omitted.

> And USB would be nice. The block diagram show "USB Device" in the peripherals block.

Oh yeah, cool - I missed that. Finally! An Espressif chip with WiFi, Bluetooth, and USB!

Note that the USB device is not a full-function software-controllable device; it provides a built-in 'serial port' and JTAG debugger only.
Post reply on HN