<?xml version='1.0'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:atom="http://www.w3.org/2005/Atom" >
<channel>
	<title><![CDATA[PublMe - Space: Posted Reaction by PublMe bot in PublMe]]></title>
	<link>https://publme.space/reactions/v/41146</link>
	<atom:link href="https://publme.space/reactions/v/41146" rel="self" type="application/rss+xml" />
	<description><![CDATA[]]></description>
	
	<item>
	<guid isPermaLink="true">https://publme.space/reactions/v/41146</guid>
	<pubDate>Tue, 25 Jun 2024 22:00:19 +0200</pubDate>
	<link>https://publme.space/reactions/v/41146</link>
	<title><![CDATA[Posted Reaction by PublMe bot in PublMe]]></title>
	<description><![CDATA[
<p>ESP-Hosted Turns ESP32 Into Linux WiFi/BT Adapter</p>
<div><img width="800" height="450" src="https://hackaday.com/wp-content/uploads/2024/06/hadimg_esphosted_feat.jpg?w=800" alt="Showing a Raspberry Pi 4 board connected to an ESP32 devboard using jumper wires for the purposes of this project" srcset="https://hackaday.com/wp-content/uploads/2024/06/hadimg_esphosted_feat.jpg 1280w, https://hackaday.com/wp-content/uploads/2024/06/hadimg_esphosted_feat.jpg?resize=250, 141 250w, https://hackaday.com/wp-content/uploads/2024/06/hadimg_esphosted_feat.jpg?resize=400, 225 400w, https://hackaday.com/wp-content/uploads/2024/06/hadimg_esphosted_feat.jpg?resize=800, 450 800w" data-attachment-id="692759" data-permalink="https://hackaday.com/2024/06/25/esp-hosted-turns-esp32-into-linux-wifi-bt-adapter/hadimg_esphosted_feat/" data-orig-file="https://hackaday.com/wp-content/uploads/2024/06/hadimg_esphosted_feat.jpg" data-orig-size="1280,720" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="hadimg_esphosted_feat" data-image-description="" data-image-caption="" data-medium-file="https://hackaday.com/wp-content/uploads/2024/06/hadimg_esphosted_feat.jpg?w=400" data-large-file="https://hackaday.com/wp-content/uploads/2024/06/hadimg_esphosted_feat.jpg?w=800"></div><p>While we are used to USB WiFi adapters, embedded devices typically use SDIO WiFi cards, and for good reasons – they’re way more low-power, don’t take up a USB port, don’t require a power-sipping USB hub, and the SDIO interface is widely available. However, SDIO cards and modules tend to be obscure and proprietary beyond reason. Enter ESP-Hosted – Espressif’s firmware and driver combination for ESP32 (<a rel="nofollow" href="https://www.espressif.com/en/news/ESP-Hosted_solution" target="_blank">press release</a>)(<a rel="nofollow" href="https://github.com/espressif/esp-hosted/" target="_blank">GitHub</a>), making your ESP32 into a WiFi module for either your Linux computer (ESP-Hosted-NG) or MCU (ESP-Hosted-FG). In particular, ESP-Hosted-NG his turns your SPI- or SDIO-connected ESP32 (including -S2/S3/C2/C3/C6 into a WiFi card, quite speedy and natively supported by the Linux network stack, as opposed to something like an AT command mode.</p><p><a rel="nofollow" href="https://hackaday.com/2015/12/09/raspberry-pi-wifi-through-sdio/">We’ve seen this done with ESP8266 before</a> – repurposing <a rel="nofollow" href="https://github.com/al177/esp8089" target="_blank">an ESP8089 driver</a> from sources found online, making an ESP8266 into a $2 WiFi adapter for something like a Pi. The ESP-Hosted project is Espressif-supported, and it works on the entire ESP32 lineup, through an SDIO or even SPI interface! It supports 802.11b/g/n and even Bluetooth, up to BLE5, either over an extra UART channel or the same SDIO/SPI channel; you can even get BT audio over I2S. If you have an SPI/SDIO port free and an ESP32 module handy, this might just be the perfect WiFi card for your Linux project!</p><p>There are some limitations – for instance, you can’t do AP mode in the NG (Linux-compatible) version. Also, part of the firmware <a rel="nofollow" href="https://github.com/espressif/esp-hosted/tree/master/esp_hosted_ng/esp/esp_driver/lib" target="_blank">has blobs in it,</a> but a lot of the firmware and all of the driver are modifiable in case you need your ESP32 to do even more than Espressif has coded in – this is not fully open-source firmware, but it’s definitely way more than the Broadcom’s proprietary onboard Raspberry Pi WiFi chip. There’s <a rel="nofollow" href="https://github.com/espressif/esp-hosted/blob/master/esp_hosted_ng/docs/setup.md" target="_blank">pl</a>e<a rel="nofollow" href="https://github.com/espressif/esp-hosted/blob/master/esp_hosted_ng/docs/spi_protocol.md" target="_blank">nt</a>y <a rel="nofollow" href="https://github.com/espressif/esp-hosted/blob/master/esp_hosted_ng/docs/sdio_protocol.md" target="_blank">of</a> <a rel="nofollow" href="https://github.com/espressif/esp-hosted/blob/master/esp_hosted_ng/docs/porting_guide.md" target="_blank">do</a>cu<a rel="nofollow" href="https://github.com/espressif/esp-hosted/blob/master/esp_hosted_ng/docs/host_sleep.md" target="_blank">me</a>nt<a rel="nofollow" href="https://github.com/espressif/esp-hosted/blob/master/esp_hosted_ng/docs/bluetooth.md" target="_blank">at</a>io<a rel="nofollow" href="https://github.com/espressif/esp-hosted/blob/master/esp_hosted_ng/docs/Troubleshoot.md" target="_blank">n,</a> and even some fun features like <a rel="nofollow" href="https://github.com/espressif/esp-hosted/blob/master/esp_hosted_ng/docs/Raw_TP_Testing.md" target="_blank">raw transport layer access.</a> Also, of note is that this project supports ESP32-C6, which means you can equip your project with <a rel="nofollow" href="https://hackaday.com/2021/04/11/new-part-day-espressif-esp32-c6/">a RISC-V-based WiFi adapter.</a></p><p>Title image <a rel="nofollow" href="https://github.com/espressif/esp-hosted/issues/78" target="_blank">from [zhichunlee].</a></p>]]></description>
	<dc:creator>PublMe bot</dc:creator>
</item>

</channel>
</rss>