Hey all, just looking for some advice as some posts say hold off and some say working just fine…… I deployed a pretty large z-wave network last year using orange pi zero 3w and setup about 15 proxies (Z-wave JS UI) and connected to haos, I am now noticing z-wave iot devices are kinda phasing out…. So now I’m looking at BLE and despite 15+ hours of trying i can’t get my orange pi’s to act as proxies and I’m giving up…. I figured i can just get some esp32 boards and just take 5v from the Orange Pi’s power the esp32 boards and have a bunch of BLE Proxies. The issues im facing is that on esphome is clearly states project isn’t working on anything but the old plain esp32 boards but i find forums like this where it says it works fine on the c3…. So while it seems like all forums are on the same page that esphome doesn’t currently utilize BT 5.0 or 5.1 should i bother with newer hardware? Also im wondering if I should try to find a board that allows me to create BLE, Zigbee, Matter and thread proxies so i can just use any IoT device out there now or should i just keep it simple and by old esp32 boards deploy them and be done with this…… I really want to keep this project under $1000 but would be willing to go as high as $2000 if i can make it work with all the common IoT wireless technologies stabily……. Any advice is greatly appreciated
Update on Seeed Studio XIAO ESP32-S3 Plus + W5500 Ethernet Adapter for ESPHome Bluetooth Proxy Use
Hi everyone,
I wanted to provide an update regarding the Seeed Studio XIAO ESP32-S3 Plus used with the XIAO W5500 Ethernet Adapter, particularly for those of you using it (or planning to use it) as an ESPHome Bluetooth proxy.
Several users previously reported instability when using Bluetooth on the Plus model, and Seeed has now confirmed and addressed the issue. Here’s what’s happening and what to expect.
What’s Happening
The Seeed team reviewed the reported issues and confirmed that early batches of the XIAO ESP32-S3 Plus had RF performance problems that affected Bluetooth and Wi-Fi coexistence, especially under higher TX power.
It’s important to note that these boards were originally launched as “Early Build” versions focused primarily on Ethernet connectivity, not specifically for use as active Bluetooth proxies. The Home Assistant community discovered they could be used this way, which helped uncover and highlight these Bluetooth stability issues.
Seeed has since verified and corrected the hardware issue and is proceeding with a two-phase revision plan:
- Phase 1: Remaining early-batch units (around 200 pcs) are being modified with an INT pin wiring fix (D16 → W5500 INTn). These will ship as the current stock.
- Phase 2: A full board revision is planned for early January 2026, which will incorporate all fixes directly on the PCB. A release note will be added on the product page once this new version is ready.
My Test Results
I’ve tested one of the modified units provided by Seeed and can confirm that:
- Ethernet and Bluetooth coexistence are now stable
- Previously problematic Bluetooth devices (like Inkbird sensors) now connect reliably
- Occasional transient
0x3Econnection results may still appear — which is normal behavior for some BLE devices — but reconnections now succeed after one or two attempts
This represents a major improvement over the unmodified early units, which often failed to establish Bluetooth connections at all.
What This Means for You
- If you ordered before November 1, 2025, your board may be part of the early batch and could still show instability when used as an active Bluetooth proxy.
- If you order after November 1, 2025, you’ll receive one of the modified units with the wiring fix applied.
- The fully revised version with integrated fixes is expected in early January 2026.
For passive Bluetooth proxy use (e.g., just receiving BLE advertisements), the older boards generally work fine — just make sure to set the Ethernet polling interval to 1ms in your ESPHome configuration. That adjustment helps maintain consistent packet timing and smooth passive Bluetooth performance even on the early units.
Support and Upgrade Options
Because the early boards were never originally intended for use as active Bluetooth proxies, there isn’t a formal replacement program for existing users.
However, Seeed recognizes that many community members are using these boards for proxy applications and wants to help those who need improved Bluetooth performance.
To support this, Seeed is offering a $10 discount coupon for users who purchased early-batch units (orders before November 1, 2025) and wish to upgrade to the fully revised version once it’s available.
Coupon code: 2VX6LS2P
Valid until: January 30, 2026
If you have questions or run into issues, contact Seeed’s support team directly at [email protected] — they’ll handle individual cases as needed.
Moving Forward
I’ll continue long-term testing with the revised boards under normal proxy loads and share updates as results come in. Once stability is fully confirmed, I’ll also update the “Recommended Boards” list for ESPHome Bluetooth proxies.
Huge thanks to Nickey, Meilily, and the Seeed engineering team for their quick and open collaboration on this. Their transparency and willingness to engage directly with the community have been outstanding — it’s a great example of how feedback and cooperation lead to better products for everyone.
Thanks for the update. Was on the fence about ordering one to test out, but glad to hear they’re responsive to issues and willing to go back into their inventory and actually manually solder fixes onto their boards.
Totally going to grab a modified board now to try it out.
I bought one to test a play with.
Can the board modification be done by a handy end user ?
And any details would be greatly appreciated.
Thanks for the coupon.
Edit: missed the bit about
Just received a early hand modified unit form Seedo. A little wire from the d16 pad to very close SMD.
But what is D16 in Esphome terms as a GPIOXX and this board?
I’ve tried the obvious with " interrupt_pin: GPIO16". But it does not connect. So that lead me to believe I have the GPIO wrong.
What D16 in GPIOXX terms?
Refer to the pinout diagram
Thank you,
GPIO10
I was looking at the non plus version pinout before. And scratching my head to why I did not see a D16 on it.
Thanks again.
ESPHome Ready-Made Projects Page Updated
The Seeed Studio XIAO W5500 Ethernet Adapter V1.2 is now listed on the ESPHome Ready-Made Projects page under Bluetooth-capable devices:
- Only V1.2 boards (produced after November 1, 2025) are supported for active Bluetooth proxy use.
- Earlier “Early Build” versions were not designed for active GATT Bluetooth proxy functionality and will not work with the Ready-Made Projects web installer.
- Early units lack the required W5500 interrupt pin wiring and have Bluetooth RF performance issues from the first-batch ESP32-S3-Plus modules.
- Only Ethernet is supported by the Ready-Made Projects web installer. (that is the primary reason to buy this board)
- YAML files bluetooth-proxies/seeed at main · esphome/bluetooth-proxies · GitHub
Support and Upgrade Options for Early-Batch Users
Be sure to check my post above Great ESP32 Board for an ESPHome Bluetooth Proxy - #22 by bdraco
Notes for Users of Early Boards
If you already own an early unit:
- Passive BLE proxy operation (advertisement-only) works as long as the W5500 polling interval is set to 1 ms.
- Active GATT connections will continue to be unstable due to hardware limitations in the early boards.
If you require stable active Bluetooth proxy functionality, upgrading to V1.2 or later is recommended.
What’s next
- I will continue confirming behavior as the full production V1.2 batch becomes available.
- The ESPHome Ready-Made Projects page will remain updated with the latest compatibility details.
- Additional updates will be shared as new revisions ship and more information becomes available.
Thanks again to Seeed for working with the community on improvements, and thanks to everyone who has tested and shared feedback.
Thanks for the detailed update. I’m currently using the GL-S10. If I upgrade to the Seeed Studio XIAO W5500, will I notice any meaningful performance improvements?
From testing with several production devices, here’s how I’d rank the active Bluetooth range of the commonly used proxy boards, from best to worst:
- Olimex ESP32-POE-ISO-EA (external antenna)
- Seeed Studio XIAO W5500 (V1.2 and later)
- GL-S10
- Olimex ESP32-POE-ISO (on-chip antenna)
The Olimex ESP32-POE-ISO-EA and the Seeed W5500 perform very similarly and give the best range and connection stability in my testing.
The GL-S10 is only slightly behind — typically about 3–5 feet less range in real-world use.
The Olimex ESP32-POE-ISO with the on-chip antenna comes in last simply because the internal antenna can’t match the external-antenna designs.
If you’re using a GL-S10 today, you will see a small but noticeable improvement going to the Seeed W5500 v1.2+, especially for devices that sit at the edge of range or that require frequent active GATT connections.
One additional point worth mentioning: the Seeed W5500 runs cooler than the Olimex boards.
We’ve seen users report thermal-related issues with the PoE circuitry on older Olimex boards in warm environments (the common workaround is powering them via USB instead of PoE). The Seeed board has not shown these heat-related problems in similar setups.
That said, I actually recommend keeping both if you upgrade.
Home Assistant’s Bluetooth stack includes automatic failover, so if one proxy has trouble with a specific device at a specific moment, the system will transparently fall back to another proxy. Having multiple proxies generally results in a more stable and robust setup overall.
So upgrading helps, but combining them gives you the best reliability.
Thank you for the detailed explanation. I will consider both upgrading and using it together with my existing setup as you suggested.
This might warrant a post on its own, but can you comment on the use of both esp32_ble_tracker and bluetooth_proxy?
Obviously they’re not the same, but the funny thing is, every guide or person you find talking about setting up a BT proxy in order to connect BT devices to HA somewhere that isn’t near the host hardware has both in their ESPHome config, and then also every guide/person that talks about setting up an ESP32 to enable BLE device tracking in HA adds both to their config as well.
Even the ESPHome page on BT proxies adds in esp32_ble_tracker. Their example for esp32_ble_tracker makes more sense to me as it then goes on to use the ESP32 components related to tracking and gather stats from BLE devices (like ble_presence and ble_rssi), which makes it seem like the tracker component is just needed to pull in the required lower-level facilities to use those platforms/sensors. Perhaps if you plan to use proxies for tracking, you also need to pull in that component there as well or else the proxy won’t have the require capabilities when trying to use it with the BLE Tracker/Private BLE Device integrations (and perhaps Bermuda for example)?
It almost feels like it’s a bit of copy-paste, just throw it in there, if you don’t need it no harm/no foul where people don’t even necessarily know why its there, as I have yet to find any documentation that explains when the components are needed for which specific use-cases.
Obviously, the proxy is for proxying and the tracker is for tracking (as stated on their doc pages), but I’d imagine if you just want a proxy you’d just need the bluetooth_proxy component and then you could even add the BLE Tracker integration to HA and let it to all the tracking if you wanted and the proxy would be used just the same as a USB BT adapter plugged directly into the host; likewise, if you just want tracking and want to have the ESP32 handle most of the work, then I’d imagine you could just use esp32_ble_tracker and then read all of the sensor data within HA, no integration needed (nor the proxy component).
Yet, these two almost always seem to appear together as if there is more to it, like there is some kind of dependency, but this isn’t really elaborated on in the ESPHome documentation…
It’s clearly stated in the page you linked to:
The Bluetooth proxy depends on ESP32 BLE Tracker so make sure to add that to your configuration.
Hahah wow, ton’s of searching with nothing anywhere, but it was on that page all along. I somewhat skimmed that page as I already knew almost everything on it and then disregarded it, but of course it was nearly in the one area I didn’t look.
Also a little surprised as I thought I remembered components having the ability to silently add dependency components without them having to explicitly be in the config, but I guess not.
Thanks.
Some components do auto-load others. It’s possible that could be done with the Bluetooth proxy auto-loading the tracker but it’s not at the moment.
Does anyone know if this happened? The product seems to be out of stock both on Seeed’s site and Aliexpress, not sure what to make of that.
I see there is new stock, but it’s still showing V1.2. I’m also curious about the new revision.
v1.2 is the new revision.
By “new revision”, do you mean the November revision or the January revision?
It is my understanding from information further up in this thread (and in looking at the web site before and after January) that v1.2 is the January revision that will properly support Bluetooth proxy.