lynchlab
@aoife_l22 · Nisan 2025 tarihinde katıldı
Engineering student · university
- Konular
- 15
- Yanıtlar
- 79
- Puan
- 0
Oluşturulan forum yanıtları
Yapay zekâ tarafından English dilinden çevrildi ·
Başlığın üzerine geçen basılı GPIO referans kartlarından birini hep yanımda tutuyorum. Laboratuvarda birden fazla kez işimi kurtardı.
I keep one of those printed GPIO reference cards that slide over the header. Saved me more than once in lab.
Do you have the two transistors between DTR/RTS and EN/IO0? Direct wires won’t do the sequence.
Yapay zekâ tarafından English dilinden çevrildi ·
GPIO4 numarası, Pi’nin saat üretecini kullanır: onu onlarca MHz’de kare dalga üretebilir ve yazılım frekansı değiştirerek FM elde eder. Kare dalga harmoniklerle doludur, dolayısıyla kullanma hakkınız olmayan frekanslarda da yayın yapıyorsunuz. Bir laboratuvar gösterimi için uygun, ama bunu bir otelin terasına koymazdım.
The GPIO4 trick uses the Pi’s clock generator: it can put out a square wave at tens of MHz, and the software wiggles the frequency to make FM. A square wave is full of harmonics, so you’re also transmitting on frequencies you have no right to use. Fine for a lab demo, I wouldn’t put it on a hotel terrace.
“Upload Using Programmer” is for AVR boards with an ISP programmer. ESP32 boards don’t have any, so the menu is empty. The FTDI is a plain serial port here, use the normal Upload button.
What works for me every time with these boards:
- Board: AI Thinker ESP32-CAM (it’s in the esp32 package).
- FTDI at 5 V to the 5V pin, GND to GND, TX to U0R, RX to U0T.
- Bridge IO0 to GND, press the reset button, then Upload.
- When it says Hard resetting, remove the IO0 bridge and press reset again.
@Michael no. Live view in Hermetry needs an H.264 stream, and the ESP32-CAM serves MJPEG, which is never played. For a jam flag that’s fine anyway, you only send a number.
Does the robot check that it’s actually charging after it thinks it docked?
That’s what I don’t get either. Why put pads for parts you don’t fit?
Yapay zekâ tarafından English dilinden çevrildi ·
“İki kez gelebilir” kuralı birçok kişinin dikkatini çekiyor; fiziksel bir şeyi süren her sketch’e eklenmesi değerli.
The “may arrive twice” rule catches a lot of people, worth putting in every sketch that drives something physical.
It’s the pin. GPIO 4 is on ADC2, and on the ESP32 the WiFi driver uses ADC2, so analogRead() on any ADC2 pin fails while WiFi is on. Depending on the core version you get 0, 4095 or an error in the log. Same sensor on GPIO 34 works fine. ADC1 is GPIO 32-39, and 34-39 are input-only, which is all you need for a sensor.
So: move the wire to GPIO 34 (or 32/33/35/36/39), change the pin number, done. No code changes for WiFi.
Two smaller things while you’re in there. Take 16 readings and average them, the ESP32 ADC is noisy and a bit non-linear at the ends. And send both soil_raw and soil_pct, so you can recalibrate later from the raw history without reflashing.
const int SOIL = 34; // ADC1_CH6
uint32_t sum = 0;
for (int i = 0; i < 16; i++) { sum += analogRead(SOIL); delay(2); }
int raw = sum / 16;
int pct = constrain(map(raw, 3300, 1500, 0, 100), 0, 100);
4 USD × 500 is cheap next to radio certification. Take an nRF52832 module that carries its own FCC ID and CE paperwork (Raytac MDBT42Q is the one our lab uses), follow its layout rules for the antenna keep-out, and you only need the cheaper unintentional emissions testing for the whole product. Keep your firmware as is, the chip is the same.
For Hermetry: the tags themselves never log in. You put a BLE gateway on each floor (a Pi or any box with BLE and network) that listens to the adverts and reports each tag as a child device over the gateway API:
v1/gw/telemetry
{"tag-C4A1F0": {"values": {"temp_c": 4.2, "batt_mv": 2950}},
"tag-C4A1F7": {"values": {"temp_c": 6.8, "batt_mv": 2910}}}
Hermetry creates each child the first time it sees the name, puts it in the gateway profile’s “Profile of new children”, and children never have credentials of their own. That answers Emily: one token per gateway, three or so per building, nothing per tag. A gateway takes up to 500 children by default, and each child counts toward the plan’s device limit.
If two gateways on neighbouring floors hear the same tag, decide in the gateways which one reports it, otherwise you get it twice under two names. Details: Devices behind a gateway.
Yapay zekâ tarafından English dilinden çevrildi ·
Hayır, kamera, Ethernet portunun arkasındaki şerit konnektördür (CSI). Sanırım P5 ek bir GPIO’dur.
No, the camera is the ribbon connector (CSI) behind the Ethernet port. P5 is extra GPIO I think.
Yapay zekâ tarafından English dilinden çevrildi ·
Sizin kartınızın üzerinde hangi kart sürümü yazıyor? v2 ve v3 farklı davranıyor.
Which board version is printed on yours? The v2 and v3 behave differently.
The light sensor is pretty nonlinear btw, fine for “lights on or off” but don’t treat it as lux.
Rachel’s guess is the likely one. Same module, different carrier board. Both have an ESP-12E with the ESP8266 on it, so your sketch and pins are the same.
The narrow one is the “v2” style (Amica design): CP2102 USB-serial chip, fits a standard breadboard with a row free on each side.
The wide one is the “v3” style (LoLin): CH340G chip, wider so it covers all the holes of a normal breadboard, and the VU pin, which is the 5 V from USB. Handy if your photo-eye’s interface needs 5 V.
Windows 10/11 usually has the CP2102 driver, not always the CH340 one. Install the CH340 driver from the chip maker (WCH), unplug and replug, and it’ll appear as a COM port. If it still shows nothing, try a cable you know carries data, a lot of short USB cables are charge-only.
For the six counters: pick one and stick with it so wiring and enclosures are the same. I’d take the narrow v2 if you prototype on breadboards and the v3 if you want the VU pin. And count the pulses with an interrupt, then send one number per minute, not one message per pulse.
Is pi-bluetooth installed? Some minimal images leave it out.
Yapay zekâ tarafından English dilinden çevrildi ·
Küçük bir ek: kapı çakılırsa üç değişiklik art arda gönderilmesin diye reed anahtarlarını firmware içinde debounce edin (20-50 ms).
Small add: debounce the reed switches in firmware (20-50 ms) or a slammed door will send three changes in a row.

