Let me introduce a highly cost-effective MCU, CH579M, priced as low as $0.7! Perhaps it is the cheapest Ethernet microcontroller in the market, this MCU features an Ethernet (including PHY+MAC) and integrates a 2.4g wireless transceiver front-end. It can compatible with Bluetooth and Zigbee protocols as well as custom wireless communication protocols. In addition, it also has multiple serial ports, USB host and slave, SPI, IIC, etc,.
Samples can be purchased on LCSC and AliExpress.
This awesome device is also designed by Nanjing Qinheng, if you have ever heard of their MCUs such as CH32V003 or CH32V307.
datasheet:
https://www.wch-ic.com/downloads/CH579DS1_PDF.htmlPCB files:
https://www.wch-ic.com/downloads/CH579DS1_PDF.htmlAliexpress:
https://www.aliexpress.us/item/3256805277474198.htmlLCSC: ch579M
https://www.aliexpress.us/item/3256805277474198.htmloffical sdk:
see the attachment below
Are you associated with the company?
No, I'm just hobbyist. I would like to recommend this cost-effective chip to everyone
Oh unlike the CH32V003 and 307 etc it's not a WCH-designed core, but an Arm Cortex M0, and running quite slowly too.
I don't know where this $0.70 price is.
Once I found it on LCSC (your link was a duplicated Aliexpress one) it was like $5 or $7.
I suppose this ethernet chip does not have arduino libraries/board for it ?
Does it come with an SDK? How mature is the SDK? The value of my time, even as a hobbyist, far exceeds the savings offered by lower-cost, race-to-the-bottom chips.
Does it come with an SDK? How mature is the SDK? The value of my time, even as a hobbyist, far exceeds the savings offered by lower-cost, race-to-the-bottom chips.
Though I seldom use WCH's chips, they do have a good reputation on SDK and tech support(relatively among most Chinese chip companies).
I don't use them because they are not cheap enough
Does it come with an SDK? How mature is the SDK? The value of my time, even as a hobbyist, far exceeds the savings offered by lower-cost, race-to-the-bottom chips.
As a hobbyist, i will also use the RiscV 307' boards ....
More of "everything", and approx same board price ...
/Bingo
A CPU with ETH is worthless unless there is a pretty well totally debugged TCP/IP stack, with all the low level libs, for it. ESP32 comes with this AFAIK (LWIP and the whole package) but look at the trouble STM 32F etc users have with this.
Interesting.
I think 32k of RAM is quite low for a practical networking applications, but some simple use cases might fit the bill. E.g. a simple connected sensor, or a serial monitor.
Ordered a dev board.
Looking at the data sheet, the Ethernet controller is not the Synopsis one used by CH32V307 (identical to STM32Fxx).
Some other controller is there, tersely documented.
The radio registers are documented, though the documentation also seems to be quite terse.
As I've seen for the CH series of chips that are marketed as interface chips, such as the CH565/569/579 etc, while those have a CPU core, they are not really marketed by WCH as microcontrollers in their own right, and the consequence is that the documentation and SDKs are much more opaque than with the CH32V series for instance.
I mentioned the CH569 earlier, which I'm interested in, but found out that the documentation is a bit too terse as well, and that the provided SDK doesn't contain any source code for the USB side, making you rely on a binary-only library for USB (and probably other peripherals). That's a terrible bummer IMO, but I haven't had time to look at the docs enough to tell whether implementing support would be difficult, impossible or quite possible.
One can spend a good number of man-months sorting out low level code and (e.g.) LWIP integration for a new CPU. Sorting out the 32F4 code took that long and that was when we were given supposedly working code from ST! In this case, good luck... And in ETH apps, a low level problem can be hidden until the application does something new
Also LWIP pretty much needs an RTOS (there is a way around it but is complicated) and that is something else you need to port to a new CPU (not as hard as ETH though).
Also LWIP pretty much needs an RTOS (there is a way around it but is complicated) and that is something else you need to port to a new CPU (not as hard as ETH though).
My interest in those Ethernet enabled chips is exactly that: Ethernet.
We make our own networking library with built-in TCP/IP and TLS 1.3 stacks, so don't care about LWIP and its issues.
Our stack does not require RTOS: it runs perfectly fine in a bare metal superloop, and in a RTOS task.
The reason Mongoose does not require RTOS is simple: our library provides a high-level event-based API for protocols like TCP, UDP, HTTP, MQTT, etc. Therefore we don't need socket layer, we simply bypass it.
And it is exactly the socket layer that needs RTOS support, because that's the way a blocking send()/recv() can be implemented. An RTOS is required for the "waiting" functionality, and a socket layer required for data buffering.
Bypassing a socket layer saves a whole lot. RTOS independence, performance, and memory.
Most people writing internet apps use the socket API.
the official has ported freertos and lwip, as well as webserver examples on ch579m, the retail price of the chip in China is just below 5 RMB, approximately 0.7 USD
Most people writing internet apps use the socket API.
Most people writing Internet apps, do NOT use socket API. They use one of the many network libraries that provide a higher level API.