ESP32, Pico W und STM32 decken Arm und Xtensa ab. Wenn du eine QingKe-RISC-V-Sonde willst, die weder Arduino noch Python noch Zephyr ist, sendet ein CH32V307V-EVT-R1 mit WCHNET C dasselbe Ingest-JSON per POST über das integrierte 10M-Ethernet. MounRiver Studio, WCH-Link. Kein WLAN-Modul.
WCHNET ist IPv4-TCP ohne gepflegten TLS-Client. Dieses Beispiel nutzt dasselbe HTTP→HTTPS-Relay im LAN wie Uno + W5100 und STM32 Zephyr, damit Cloudflare die Zertifizierungsstellen wechseln kann, ohne dass du neu flashen musst.
Teile
| Teil | Wozu | Kaufen |
|---|---|---|
| CH32V307V-EVT-R1 | QingKe RISC-V, integrierter 10M-PHY + RJ45, WCH-Link. Der Gigabit-MAC bleibt hier ungenutzt. | WCH CH32V307 |
| Wasserdichter DS18B20 | Sonde für Rohr oder Kriechkeller. Daten an PB12. | Adafruit DS18B20 · Amazon |
| 4.7kΩ-Widerstand | Pull-up von der DS18B20-Datenleitung auf 3.3V. Versorge die Sonde nicht mit 5V. | Amazon 4.7k |
| Ethernet-Anschluss | DHCP in deinem LAN. Ein Pi, NAS oder Laptop betreibt das TLS-Relay. | Ein beliebiges Cat5e-Patchkabel zu deinem Switch. |
Verdrahtung
- DS18B20 VDD → EVT 3.3V
- DS18B20 GND → GND
- DS18B20-Daten → PB12, 4.7k auf 3.3V
- RJ45 → LAN. WCH-Link-USB zum Flashen und für die serielle Ausgabe mit 115200.
Bauen und flashen
- Öffne Dashboard → Devices und lade CH32V main.c herunter (Ingest-Pfad bereits eingetragen), oder kopiere die Defines aus dem Ingest-Hinweis.
- Auf einem Rechner im LAN:
python3 sketches/relay/push_https_forward.py --listen 0.0.0.0:8080 \ --upstream https://probeharbor.dev - Setze
INGEST_HOSTauf diesen Rechner (IPv4 in Punktnotation). ErsetzeUser/main.cdurch die heruntergeladene Datei. - Installiere MounRiver Studio. Öffne das offizielle Projekt EVT ETH/DHCP, behalte NetLib /
eth_driver, ersetze nurUser/main.c, baue und flashe. - Seriell mit 115200:
dhcp ok, dannPOST 200. Der Sensorschlüsseltemp1wird beim ersten POST übernommen.
Fertige Dateien im Repo: sketches/wch/ch32v307_ds18b20_ingest/ (Bit-Bang-1-Wire an PB12 + WCHNET-HTTP-Client).
Andere CH32V-Boards
Jeder CH32V307 mit dem Ethernet-PHY des EVT kann diesen C-Code ausführen. CH32V203 / CH32V003 haben keinen Ethernet-MAC. Es gibt Community-Cores für Arduino-CH32, aber die gehören nicht zu diesem Beispiel. Ein CH32V307 mit W5500 ist möglich, dann bist du aber wieder bei ioLibrary über SPI statt beim integrierten MAC.
Warum nicht als Nächstes nRF oder TI?
- nRF52: Bluetooth oder Thread, kein natives HTTPS über WLAN.
- nRF7002 DK: Nordics Wi‑Fi 6 funktioniert im nRF Connect SDK, aber das Pinnen von TLS-Zertifizierungsstellen unter Zephyr bleibt eine Wartungsfalle.
- TI SimpleLink / NXP RW612: leistungsfähige WLAN-SDKs in C, aber in der Bastlerszene weniger verbreitet als EVT + WCHNET.
Weiterlesen
- Geräte hinzufügen
- Ingest mit STM32 Zephyr
- Ingest mit Raspberry Pi Pico W
- HTTPS-Relay in Python
- Ingest in AVR-Assembler
- Alle Sketches ↗
Amazon-Kauflinks können ein Partner-Tag (Associates) enthalten. Links zu Adafruit und anderen Händlern sind direkt (Adafruit hat kein Partnerprogramm). ProbeHarbor erhält für qualifizierte Amazon-Käufe womöglich eine Provision – ohne Mehrkosten für dich.
Häufige Fragen
Kann ein CH32V ohne Arduino oder Python an ProbeHarbor senden?
Ja. Das Beispiel für das CH32V307V-EVT ist WCHNET-C in MounRiver Studio: User/main.c einfach in das offizielle ETH/DHCP-Projekt einsetzen, per WCH-Link flashen, 10M-Ethernet auf dem Board. DS18B20 an PB12. HTTP an das TLS-Relay im LAN, genau wie bei Uno W5100 und STM32 Zephyr. Anleitung: probeharbor.dev/about/ch32v-riscv-ingest.
Warum nicht direkt HTTPS vom CH32V?
WCHNET bietet IPv4-TCP/UDP ohne gepflegten TLS-Client. Der Ingest von ProbeHarbor läuft über HTTPS. Mit dem Relay im LAN bleibt der Mikrocontroller bei HTTP, und ein Pi/NAS übernimmt TLS – dasselbe Muster wie bei Uno Ethernet und STM32 Zephyr.
Ist das Arduino-CH32 oder PlatformIO Arduino?
Nein. Einige Community-Cores machen CH32V für die Arduino IDE nutzbar. Dieses Beispiel ist Hersteller-C (QingKe RISC-V, WCHNET), keine .ino.