Ingestion Ethernet PIC18F67J60

Envoyez des relevés DS18B20 depuis un PIC18F67J60 avec la pile TCP/IP de Microchip sous MPLAB X et le même relais HTTPS LAN que l’Uno.

Gros plan de câbles Ethernet Cat-5e blancs avec connecteurs RJ45
Le JSON des sondes quitte généralement le LAN par Ethernet ou via un relais proche, pas directement par Internet. Photo : DiscDepotDundee.co.uk. CC BY-SA 4.0

Le Microchip PIC18F67J60 intègre une MAC Ethernet et un PHY 10BASE-T. Cet exemple est écrit en C avec MPLAB X + XC8 sur la Microchip TCP/IP Stack classique (démo Ethernet MLA) : ni Arduino, ni Python, ni Zephyr. Le même JSON d’ingestion via le relais HTTP→HTTPS du LAN.

La pile MLA ne fournit pas de client HTTPS maintenu pour Cloudflare. Laissez le MCU en HTTP vers un relais sur un Raspberry Pi ou un NAS, selon le même principe que Uno + W5100 et STM32 Zephyr.

Composants

Composants pour une sonde antigel PIC18 en Ethernet
Composant Rôle Acheter
Carte PIC18F67J60 MAC + PHY + RJ45 intégrés. PICkit / ICD pour le flash. Microchip PIC18F67J60
DS18B20 étanche Broche par défaut de l’exemple : RD0 (à changer si votre démo l’utilise). Adafruit DS18B20 · Amazon
Résistance 4.7kΩ Pull-up vers le VDD 1-Wire de la carte (adaptez les niveaux si les E/S sont uniquement en 5V). Amazon 4.7k
Prise Ethernet DHCP ou IP statique dans la démo MLA. Machine relais sur le même LAN. Câble Cat5e jusqu’à votre switch.

Câblage

  • DS18B20 VDD → VDD logique de la carte (souvent 3.3V ; vérifiez le schéma de la démo)
  • DS18B20 GND → GND
  • Données DS18B20 → RD0, pull-up 4.7k (modifiez les macros OW_* si besoin)
  • RJ45 → LAN. PICkit pour le flash ; UART pour les journaux à 115200

Compiler et flasher

  1. Ouvrez Dashboard → Devices et téléchargez PIC18 main.c (chemin d’ingestion déjà renseigné).
  2. Sur une machine du LAN :
    python3 sketches/relay/push_https_forward.py --listen 0.0.0.0:8080 \
      --upstream https://probeharbor.dev
  3. Réglez INGEST_HOST sur cette machine (IPv4 en notation pointée).
  4. Installez MPLAB X + XC8. Ouvrez une démo Ethernet TCPIP MLA pour PIC18F67J60, gardez les sources de la pile, ajoutez ce module, appelez ProbeHarborAppInit / ProbeHarborAppTask depuis la boucle principale de la démo à côté de StackTask(), compilez, flashez.
  5. UART à 115200 : lien/DHCP ok, puis POST via le relais. La clé de capteur temp1 est importée au premier POST.

Prêt à déposer dans le dépôt : sketches/microchip/pic18f67j60_ds18b20_ingest/

À voir aussi

Les liens d’achat Amazon peuvent contenir un identifiant Partenaires (Associates). Les liens Adafruit et des autres vendeurs sont directs (Adafruit n’a pas de programme d’affiliation). ProbeHarbor peut toucher une commission sur les achats Amazon éligibles, sans surcoût pour vous.

FAQ

Un PIC18F67J60 peut-il envoyer des données à ProbeHarbor ?
Oui. Du C prêt à l’emploi pour la pile TCP/IP MLA dans MPLAB X : MAC/PHY Ethernet intégré, DS18B20 sur RD0, HTTP vers le relais TLS du réseau local. Guide : probeharbor.dev/about/pic18-ethernet-ingest.

Pourquoi pas du HTTPS depuis le PIC ?
La pile TCP/IP classique de Microchip ne fournit pas de client HTTPS maintenu compatible avec Cloudflare. Le relais local garde le microcontrôleur en HTTP, comme pour Uno W5100 et STM32 Zephyr.

Est-ce de l’Arduino ou du XC8 ?
XC8 / MPLAB X sur la démo Ethernet MLA. Pas un .ino Arduino.