Building a Faraday cage with data passthrough for ESP32 reverse engineering
esp32-open-mac.be
esp32-open-mac.be
I've had great luck with Ecofoil NT material, which is somewhere between cardstock and cheap poly tarp material in handling properties. (It's a polyethylene weave with foil on both faces.) Easy to work with, easy to fold and tape, easy to cover with other materials for durability. Super cheap in big rolls.
For 120VAC passthrough, the Delta 20DBAG5 is cheap and cheerful. Screw it into a metal junction box and tape all sides of the box to the chamber wall. But a battery in the box is simpler and quieter.
If you need windows/vents, avoid the hobby-store copper mesh that's meant as a stiffener for clay models; the way it's woven, it isn't guaranteed to have connections to itself in adjacent rows. It's good at first but any surface corrosion ruins it.
Go with punched or "expanded metal" sheet, even if you can't find copper, aluminum or stainless works fine in practice. Just make it significantly larger than the window opening and use plenty of foil tape at the edges; I suspect that capacitive coupling through the surface oxide layer means it's an RF short even if it looks open at DC.
I've been wondering if ITO-coated glass would work as a window but have not tried it. But it's no good for ventilation anyway so I'm not sure it's worth the bother.
I thought that maybe aluminum foil would work here. I found this paper: https://www.acsu.buffalo.edu/~ddlchung/Materials%20for%20ele...
> electrical conductivity is not the scientific criterion for sheilding ... Metals ... function mainly by reflection.
> A secondary mechanism of EMI sheidling is usually absoprotion.
> The absorption loss is a function of the product σrμr, whereas the reflection loss is a function of the ratio σr/μr, where σr, is the electrical conductivity relative to copper and μr is the relative magnetic permeability.
> The reflection loss decreases with increasing frequency, whereas the absorption loss increases with increasing frequency.
So it turns out aluminum foil wouldn't actually be much good, with σrμr=.61 and σr/μr=.61. The commercial material listed says it uses copper & nickel: nickel's σrμr=20, copper's σr/μr=1.
So my thought here is completely wrong. Who would have figured the commercial product has gone through more thought than my random guesses!
For comparison, GPS signals in good conditions are around -125dBm, and many receivers can go down to -165dBm, so WiFi signals are still much stronger in comparison.
[1] https://www.ieee.li/pdf/viewgraphs/gnss_fundamentals.pdf
See slides 37 and 38
[1] I did find out so far that my WiFi setup occasionally "clumps" packets, causing like 10 packets to hit a given ESP32 at an instant (instead of a few ms apart) - not great, but should not be disastrous. However, this seems to cause the ESP32 WiFi stack to just slow to a crawl: It responds to pings much slower (like, in 100+ ms range) (to my surprise it actually responds to PING requests out of the box in the first place...) and/or doesn't really process any more packets in general if I continue sending at the same rate as normal. But backing off on the packet stream usually gets it back on track, strangely enough. This also happens if I do nothing in the main loop except clear packets as they come in, so it's not in my code.
Your description of packet clumping sounds like Nagle's Algorithm at play, which I found increased TCP latency on the ESP32 fairly significantly.
If the hardware isn't battery powered, then you might also see improvements by playing with the ESP32's WiFi power saving modes.
Apparently modern wifi chips are just too good at picking up faint signals.
Also when a phone is in a microwave, the RF noise is also attenuated, so that helps a little (amplifier noise is unaffected).
But that's not even close to sufficient for actually isolating wireless transmissions. My microwave got 35-38 dB for WiFi signals when I measured it, and that got through a fairly reliable connection. You might want 90 dB or something like that if you want to ensure that you can't extract the data from the noise - so perhaps a starting point might be to put your device in a small microwave oven and put that oven in a large microwave oven :)
> I also tried putting my phone in a (turned off!) microwave, but this did not work either, it was still connected to the Wi-Fi access point.
But yeah I would have thought the same.
Never checked if true. But that could explain why they're so "leaky" at 2,4 Ghz (and other frequencies).