BerryBase
  • Shop
  • Raspberry Pi
  • Projekte
    • Alle
    • Audio / Sound
    • Display
    • Fun
    • IoT / Smart Tech
    • Kamera
    • LED
    • Luft / Wetter
    • Software
    Smart Speaker selber bauen: Alte Lautsprecher mit dem HiFiBerry AMP2 modernisieren

    Smart Speaker selber bauen: Alte Lautsprecher mit dem HiFiBerry AMP2 modernisieren

    Kodi auf dem Raspberry Pi – die umfassende Anleitung zur Installation, Einrichtung und Optimierung

    Kodi auf dem Raspberry Pi – die umfassende Anleitung zur Installation, Einrichtung und Optimierung

    Home Assistant auf dem Raspberry Pi – Schritt-für-Schritt Anleitung ohne Cloud

    Home Assistant auf dem Raspberry Pi – Schritt-für-Schritt Anleitung ohne Cloud

    Kompilierung eines eigenen Linux-Kernels für den Raspberry Pi 5

    Kompilierung eines eigenen Linux-Kernels für den Raspberry Pi 5

    Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte

    Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte

    Arduino Projekte-Ideen für den Sommer

    Arduino Projekte-Ideen für den Sommer

    DIY-Projekte für die Rasenpflege: Raspberry Pi Mähroboter und Sprinkler

    DIY-Projekte für die Rasenpflege: Raspberry Pi Mähroboter und Sprinkler

    Smart Home mit Shelly, JSON und Node Red: Leitfaden zur Installation und Programmierung

    Smart Home mit Shelly, JSON und Node Red: Leitfaden zur Installation und Programmierung

    Sprachassistenten mit Picovoice’s On-Device LLM-Technologie erstellen

    Sprachassistenten mit Picovoice’s On-Device LLM-Technologie erstellen

    • Audio / Sound
    • Display
    • Fun
    • IoT / Smart Tech
    • Kamera
    • LED
    • Luft / Wetter
    • Software
  • Themen
    • Alle
    • Ad Blocker
    • Arduino
    • ESP
    • Gaming & Emulatoren
    • Hausautomation
    • IoT
    • Raspberry Pi
    • Robotik
    • Sensoren & Aktoren
    Vom HackberryPi Zero zum HackberryPi CM5 – vom mobilen Terminal zum Pocket PC

    Vom HackberryPi Zero zum HackberryPi CM5 – vom mobilen Terminal zum Pocket PC

    Recalbox auf dem Raspberry Pi 5 installieren – Der Retro-Gaming-Guide

    Recalbox auf dem Raspberry Pi 5 installieren – Der Retro-Gaming-Guide

    Smart Speaker selber bauen: Alte Lautsprecher mit dem HiFiBerry AMP2 modernisieren

    Smart Speaker selber bauen: Alte Lautsprecher mit dem HiFiBerry AMP2 modernisieren

    Pi-Hole & AdGuard Home mit dem Router verbinden – Werbung im ganzen Heimnetz blockieren

    Pi-Hole & AdGuard Home mit dem Router verbinden – Werbung im ganzen Heimnetz blockieren

    Pi-Hole vs AdGuard Home: Die besten Ad-Blocker für dein Netzwerk auf dem Raspberry Pi

    Pi-Hole vs AdGuard Home: Die besten Ad-Blocker für dein Netzwerk auf dem Raspberry Pi

    Home Assistant auf dem Raspberry Pi – Schritt-für-Schritt Anleitung ohne Cloud

    Home Assistant auf dem Raspberry Pi – Schritt-für-Schritt Anleitung ohne Cloud

    HackberryPi Zero: Ein Cyberdeck für die Hosentasche

    HackberryPi Zero: Ein Cyberdeck für die Hosentasche

    Steam Link auf dem Raspberry Pi 5 installieren: Offizielle Methode & Docker-Alternative

    Steam Link auf dem Raspberry Pi 5 installieren: Offizielle Methode & Docker-Alternative

    MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers

    MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers

    • Raspberry Pi
    • Arduino
    • ESP
    • Sensoren & Aktoren
    • IoT
    • Hausautomation
  • Kaufberatung
    • Alle
    • Produkte
    • Reviews
    • Top 10 Listen
    • Unboxing
    Vom HackberryPi Zero zum HackberryPi CM5 – vom mobilen Terminal zum Pocket PC

    Vom HackberryPi Zero zum HackberryPi CM5 – vom mobilen Terminal zum Pocket PC

    HackberryPi Zero: Ein Cyberdeck für die Hosentasche

    HackberryPi Zero: Ein Cyberdeck für die Hosentasche

    Fischertechnik Maker Kits – Neuheiten für die DIY- und Maker-Szene

    Fischertechnik Maker Kits – Neuheiten für die DIY- und Maker-Szene

    Nicla Sense Env – Die leistungsstarke Sensorlösung für Portenta- und MKR-Boards

    Nicla Sense Env – Die leistungsstarke Sensorlösung für Portenta- und MKR-Boards

    Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte

    Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte

    PiNEBOARDS HATs im Test: Erweiterungsmöglichkeiten für den Raspberry Pi 5

    PiNEBOARDS HATs im Test: Erweiterungsmöglichkeiten für den Raspberry Pi 5

    Was sind Widerstände, Potentiometer und Kondensatoren? Ein Guide für Einsteiger und Maker

    Was sind Widerstände, Potentiometer und Kondensatoren? Ein Guide für Einsteiger und Maker

    DisplayPort vs. HDMI: Welches Kabel passt zu dir?

    DisplayPort vs. HDMI: Welches Kabel passt zu dir?

    Raspberry Pi 5 Anschluss

    Raspberry Pi 5: Neue 2GB-Variante für nur 55 Euro veröffentlicht

    • Produkte
  • How To
    • Alle
    • Guides
    • Software / Programmierung
    • Wissensdatenbank
    Recalbox auf dem Raspberry Pi 5 installieren – Der Retro-Gaming-Guide

    Recalbox auf dem Raspberry Pi 5 installieren – Der Retro-Gaming-Guide

    Smart Speaker selber bauen: Alte Lautsprecher mit dem HiFiBerry AMP2 modernisieren

    Smart Speaker selber bauen: Alte Lautsprecher mit dem HiFiBerry AMP2 modernisieren

    Kodi auf dem Raspberry Pi – die umfassende Anleitung zur Installation, Einrichtung und Optimierung

    Kodi auf dem Raspberry Pi – die umfassende Anleitung zur Installation, Einrichtung und Optimierung

    Pi-Hole & AdGuard Home mit dem Router verbinden – Werbung im ganzen Heimnetz blockieren

    Pi-Hole & AdGuard Home mit dem Router verbinden – Werbung im ganzen Heimnetz blockieren

    RAID einfach erklärt: So nutzt du Raspberry Pi & Co. für sichere Datenspeicherung

    RAID einfach erklärt: So nutzt du Raspberry Pi & Co. für sichere Datenspeicherung

    Apache Guacamole: Die clientlose Remote-Desktop-Lösung installieren und einrichten

    Apache Guacamole: Die clientlose Remote-Desktop-Lösung installieren und einrichten

    Steam Link auf dem Raspberry Pi 5 installieren: Offizielle Methode & Docker-Alternative

    Steam Link auf dem Raspberry Pi 5 installieren: Offizielle Methode & Docker-Alternative

    Scratch 3.0 – Spielerisch Programmieren lernen

    Scratch 3.0 – Spielerisch Programmieren lernen

    MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers

    MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers

    • Guides
    • Wissensdatenbank
    • Software / Programmierung
  • News
Keine Ergebnisse
Alle Ergebnisse anzeigen
  • Shop
  • Raspberry Pi
  • Projekte
    • Alle
    • Audio / Sound
    • Display
    • Fun
    • IoT / Smart Tech
    • Kamera
    • LED
    • Luft / Wetter
    • Software
    Smart Speaker selber bauen: Alte Lautsprecher mit dem HiFiBerry AMP2 modernisieren

    Smart Speaker selber bauen: Alte Lautsprecher mit dem HiFiBerry AMP2 modernisieren

    Kodi auf dem Raspberry Pi – die umfassende Anleitung zur Installation, Einrichtung und Optimierung

    Kodi auf dem Raspberry Pi – die umfassende Anleitung zur Installation, Einrichtung und Optimierung

    Home Assistant auf dem Raspberry Pi – Schritt-für-Schritt Anleitung ohne Cloud

    Home Assistant auf dem Raspberry Pi – Schritt-für-Schritt Anleitung ohne Cloud

    Kompilierung eines eigenen Linux-Kernels für den Raspberry Pi 5

    Kompilierung eines eigenen Linux-Kernels für den Raspberry Pi 5

    Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte

    Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte

    Arduino Projekte-Ideen für den Sommer

    Arduino Projekte-Ideen für den Sommer

    DIY-Projekte für die Rasenpflege: Raspberry Pi Mähroboter und Sprinkler

    DIY-Projekte für die Rasenpflege: Raspberry Pi Mähroboter und Sprinkler

    Smart Home mit Shelly, JSON und Node Red: Leitfaden zur Installation und Programmierung

    Smart Home mit Shelly, JSON und Node Red: Leitfaden zur Installation und Programmierung

    Sprachassistenten mit Picovoice’s On-Device LLM-Technologie erstellen

    Sprachassistenten mit Picovoice’s On-Device LLM-Technologie erstellen

    • Audio / Sound
    • Display
    • Fun
    • IoT / Smart Tech
    • Kamera
    • LED
    • Luft / Wetter
    • Software
  • Themen
    • Alle
    • Ad Blocker
    • Arduino
    • ESP
    • Gaming & Emulatoren
    • Hausautomation
    • IoT
    • Raspberry Pi
    • Robotik
    • Sensoren & Aktoren
    Vom HackberryPi Zero zum HackberryPi CM5 – vom mobilen Terminal zum Pocket PC

    Vom HackberryPi Zero zum HackberryPi CM5 – vom mobilen Terminal zum Pocket PC

    Recalbox auf dem Raspberry Pi 5 installieren – Der Retro-Gaming-Guide

    Recalbox auf dem Raspberry Pi 5 installieren – Der Retro-Gaming-Guide

    Smart Speaker selber bauen: Alte Lautsprecher mit dem HiFiBerry AMP2 modernisieren

    Smart Speaker selber bauen: Alte Lautsprecher mit dem HiFiBerry AMP2 modernisieren

    Pi-Hole & AdGuard Home mit dem Router verbinden – Werbung im ganzen Heimnetz blockieren

    Pi-Hole & AdGuard Home mit dem Router verbinden – Werbung im ganzen Heimnetz blockieren

    Pi-Hole vs AdGuard Home: Die besten Ad-Blocker für dein Netzwerk auf dem Raspberry Pi

    Pi-Hole vs AdGuard Home: Die besten Ad-Blocker für dein Netzwerk auf dem Raspberry Pi

    Home Assistant auf dem Raspberry Pi – Schritt-für-Schritt Anleitung ohne Cloud

    Home Assistant auf dem Raspberry Pi – Schritt-für-Schritt Anleitung ohne Cloud

    HackberryPi Zero: Ein Cyberdeck für die Hosentasche

    HackberryPi Zero: Ein Cyberdeck für die Hosentasche

    Steam Link auf dem Raspberry Pi 5 installieren: Offizielle Methode & Docker-Alternative

    Steam Link auf dem Raspberry Pi 5 installieren: Offizielle Methode & Docker-Alternative

    MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers

    MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers

    • Raspberry Pi
    • Arduino
    • ESP
    • Sensoren & Aktoren
    • IoT
    • Hausautomation
  • Kaufberatung
    • Alle
    • Produkte
    • Reviews
    • Top 10 Listen
    • Unboxing
    Vom HackberryPi Zero zum HackberryPi CM5 – vom mobilen Terminal zum Pocket PC

    Vom HackberryPi Zero zum HackberryPi CM5 – vom mobilen Terminal zum Pocket PC

    HackberryPi Zero: Ein Cyberdeck für die Hosentasche

    HackberryPi Zero: Ein Cyberdeck für die Hosentasche

    Fischertechnik Maker Kits – Neuheiten für die DIY- und Maker-Szene

    Fischertechnik Maker Kits – Neuheiten für die DIY- und Maker-Szene

    Nicla Sense Env – Die leistungsstarke Sensorlösung für Portenta- und MKR-Boards

    Nicla Sense Env – Die leistungsstarke Sensorlösung für Portenta- und MKR-Boards

    Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte

    Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte

    PiNEBOARDS HATs im Test: Erweiterungsmöglichkeiten für den Raspberry Pi 5

    PiNEBOARDS HATs im Test: Erweiterungsmöglichkeiten für den Raspberry Pi 5

    Was sind Widerstände, Potentiometer und Kondensatoren? Ein Guide für Einsteiger und Maker

    Was sind Widerstände, Potentiometer und Kondensatoren? Ein Guide für Einsteiger und Maker

    DisplayPort vs. HDMI: Welches Kabel passt zu dir?

    DisplayPort vs. HDMI: Welches Kabel passt zu dir?

    Raspberry Pi 5 Anschluss

    Raspberry Pi 5: Neue 2GB-Variante für nur 55 Euro veröffentlicht

    • Produkte
  • How To
    • Alle
    • Guides
    • Software / Programmierung
    • Wissensdatenbank
    Recalbox auf dem Raspberry Pi 5 installieren – Der Retro-Gaming-Guide

    Recalbox auf dem Raspberry Pi 5 installieren – Der Retro-Gaming-Guide

    Smart Speaker selber bauen: Alte Lautsprecher mit dem HiFiBerry AMP2 modernisieren

    Smart Speaker selber bauen: Alte Lautsprecher mit dem HiFiBerry AMP2 modernisieren

    Kodi auf dem Raspberry Pi – die umfassende Anleitung zur Installation, Einrichtung und Optimierung

    Kodi auf dem Raspberry Pi – die umfassende Anleitung zur Installation, Einrichtung und Optimierung

    Pi-Hole & AdGuard Home mit dem Router verbinden – Werbung im ganzen Heimnetz blockieren

    Pi-Hole & AdGuard Home mit dem Router verbinden – Werbung im ganzen Heimnetz blockieren

    RAID einfach erklärt: So nutzt du Raspberry Pi & Co. für sichere Datenspeicherung

    RAID einfach erklärt: So nutzt du Raspberry Pi & Co. für sichere Datenspeicherung

    Apache Guacamole: Die clientlose Remote-Desktop-Lösung installieren und einrichten

    Apache Guacamole: Die clientlose Remote-Desktop-Lösung installieren und einrichten

    Steam Link auf dem Raspberry Pi 5 installieren: Offizielle Methode & Docker-Alternative

    Steam Link auf dem Raspberry Pi 5 installieren: Offizielle Methode & Docker-Alternative

    Scratch 3.0 – Spielerisch Programmieren lernen

    Scratch 3.0 – Spielerisch Programmieren lernen

    MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers

    MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers

    • Guides
    • Wissensdatenbank
    • Software / Programmierung
  • News
Keine Ergebnisse
Alle Ergebnisse anzeigen
BerryBase
Keine Ergebnisse
Alle Ergebnisse anzeigen
Startseite How To Software / Programmierung

Integration von ChatGPT mit Arduino GIGA R1 – Leitfaden

Katrin Erdmann von Katrin Erdmann
2. Mai 2024
in Software / Programmierung, Arduino, Projekte
Lesezeit: 8 Min. Lesezeit
A A
0
Arduino GIGA R1 Display S

Entdecke mit uns die faszinierende Welt der künstlichen Intelligenz durch unser neuestes Projekt, das den Arduino GIGA R1 Display Shield einsetzt, um eine optimale Mensch-Maschine-Interaktion zu gewährleisten.

In diesem Blog wird erläutert, wie das Arduino GIGA R1 WiFi und das Display Shield DIY-Elektronikprojekte durch Integration modernster KI-Fähigkeiten für die Echtzeitkommunikation revolutionieren können. Wir werden wesentliche Komponenten, Einrichtungsverfahren und die innovative Nutzung der ChatGPT API für dynamische Interaktionen behandeln. Ideal für Enthusiasten und Entwickler, zielt dieser Beitrag darauf ab, einen umfassenden Leitfaden für den Aufbau und das Verständnis der Integration von Arduino mit KI-Technologien bereitzustellen.

Inhaltsverzeichnis
  • Essenzielle Bauteile für das Arduino GIGA R1-Projekt
  • Interaktive Echtzeit-Kommunikation mit ArduinoGPT und ChatGPT
  • Mein Setup ist wie folgt
  • So richtest du dein Projekt Schritt für Schritt ein
  • Shakhizat Nurgaliyev

Essenzielle Bauteile für das Arduino GIGA R1-Projekt

Arduino GIGA R1 WiFi:

Dies ist eine leistungsstarke und vielseitige Entwicklungsumgebung, die mit integriertem WiFi ausgestattet ist. Dieser Mikrocontroller ist ideal für Projekte, die eine drahtlose Kommunikationsfunktion benötigen.

Arduino GIGA Display Shield:

Dieses Shield passt perfekt auf den Arduino GIGA R1 WiFi und bietet ein großes 4.2″ Touch-Display. Es erweitert die Funktionalität deines Arduino durch visuelle Ausgaben und interaktive Eingaben, was es perfekt für Benutzeroberflächen macht.

Benötigte Entwicklungssoftware: Arduino IDE

Giga Display Shield, mit Chat GPT gesteuert

Interaktive Echtzeit-Kommunikation mit ArduinoGPT und ChatGPT

Das Projekt „ArduinoGPT“ revolutioniert die Art und Weise, wie wir mit Maschinen interagieren, indem es die leistungsstarke Kombination aus Arduino GIGA R1 WiFi und einer Tastatur zur Eingabe von Benutzeranfragen nutzt. Die Anfragen werden direkt an ChatGPT übermittelt, und die Antworten werden nahtlos auf dem GIGA Display Shield angezeigt.

Die Nutzung der ChatGPT API eröffnet zudem neue Möglichkeiten für Echtzeitanwendungen. Statt auf eine vollständige Antwort zu warten, ermöglicht der “stream”-Parameter das Empfangen und Anzeigen von Antworten in einem kontinuierlichen Fluss. Dieses Vorgehen ist besonders vorteilhaft, wenn Antworten in Echtzeit verarbeitet oder die Ergebnisse direkt während ihrer Entstehung beobachtet werden sollen.

Durch diesen innovativen Ansatz wird nicht nur die Mensch-Maschine-Interaktion verbessert, sondern es werden auch praktische und ansprechende Lernerfahrungen in der Welt der eingebetteten Systeme und künstlichen Intelligenz ermöglicht.

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer OPENAI_APIKEY" \
  --data-raw '{
    "model": "gpt-3.5-turbo",
    "messages": [
      {"role": "system", "content": "Du bist ein hilfreicher Assistent."},
      {"role": "user", "content": "Was ist Arduino"}
    ],
    "max_tokens": 50,
    "temperature": 0.7,
    "stream": true
  }' https://api.openai.com/v1/chat/completions

In diesem Befehl wird ein HTTP POST-Request an die OpenAI ChatGPT API gesendet. Dabei wird JSON als Content-Type festgelegt und ein API-Key für die Autorisierung verwendet. Die Anfrage enthält Nachrichten, die in einem Dialog zwischen System und Nutzer ausgetauscht werden, sowie Parameter zur Steuerung der Antwortlänge und Kreativität. Der “stream”-Parameter ist aktiviert, was bedeutet, dass Antworten als kontinuierlicher Datenstrom zurückgegeben werden.

Hier ist ein Beispiel dafür, wie die Antwort aussehen könnte, wenn du einen solchen Request ausführst:

data: {"id":"chatcmpl-8S1KjF9N9yYQyXrNkFBb83WMhM9y7","object":"chat.completion.chunk","created":1701689001,"model":"gpt-3.5-turbo-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"finish_reason":null}]}
data: {"id":"chatcmpl-8S1KjF9N9yYQyXrNkFBb83WMhM9y7","object":"chat.completion.chunk","created":1701689001,"model":"gpt-3.5-turbo-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Arduino"},"finish_reason":null}]}
data: {"id":"chatcmpl-8S1KjF9N9yYQyXrNkFBb83WMhM9y7","object":"chat.completion.chunk","created":1701689001,"model":"gpt-3.5-turbo-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" ist"},"finish_reason":null}]}

Bei diesem Request gibt die API eine Liste von Antwortfragmenten zurück. Jedes Fragment enthält einen Teil der gesamten Antwort im content-Feld.

Der USB-A-Anschluss des GIGA R1 kann verwendet werden, um generische USB-Tastaturen anzuschließen. Dies ermöglicht es dir, Eingabeaufforderungen direkt an ChatGPT zu senden. Arduino hat eine Bibliothek namens USBHostGiga veröffentlicht, die von GitHub heruntergeladen werden kann. Diese Bibliothek ermöglicht die Integration einer Funktion, die es Nutzern erlaubt, über eine Tastatur Eingaben am Arduino GIGA R1 WiFi vorzunehmen.

Mein Setup ist wie folgt

Essenzielle Bauteile für das Arduino GIGA R1 -Projekt

So richtest du dein Projekt Schritt für Schritt ein

  • Lade die USBHostGiga-Bibliothek von GitHub herunter. Diese Bibliothek ermöglicht es dir, den USB-A-Anschluss des GIGA R1 zu nutzen, um eine generische USB-Tastatur anzuschließen.
  • Installiere die USBHostGiga-Bibliothek in deiner Arduino IDE.
  • Schließe eine generische USB-Tastatur an den USB-A-Anschluss des GIGA R1 an.
  • Öffne die Arduino IDE und erstelle ein neues Sketch.
  • Kopiere den untenstehenden Code-Snippet.
  • Ersetze SSID_NETWORK_NAME, WIFI_PASSWORD und OPENAI_APIKEY mit deinen Daten.

<pre style="background-color: #f4f4f4; padding: 10px; border-radius: 8px; border: 1px solid #ccc; font-family: 'Courier New', Courier, monospace;">
<code>
#include &lt;Wire.h&gt;
#include &lt;SPI.h&gt;
#include "Arduino_GigaDisplay_GFX.h"
#include &lt;WiFi.h&gt;
#include &lt;ArduinoJson.h&gt;
#include &lt;WiFiSSLClient.h&gt;
#include &lt;string&gt;
#include "USBHostGiga.h"

GigaDisplay_GFX display; // create the object
#define BLACK 0x0000
#define ARDUINOJSON_DECODE_UNICODE 1

Keyboard keyb;
HostSerial ser;

char server[] = "api.openai.com";     
const int serverPort = 443;

char ssid[] = "SSID_NETWORK_NAME";        
char pass[] = "WIFI_PASSWORD";        
std::string apikey = "OPENAI_APIKEY"; 
int status = WL_IDLE_STATUS;

String getUserInput() {
  display.fillScreen(BLACK);
  display.setCursor(10, 10);
  display.println("User Prompt");
  display.setCursor(40, 40);

  String userInput = "";
  while (true) {
    if (keyb.available()) {
      auto _key = keyb.read();
      char inputChar = keyb.getAscii(_key);
      display.print(inputChar);
      if (inputChar == '1') {
        break;
      } else {
        userInput += inputChar;
      }
    }
  }

  return userInput;
}

void setup() {
  Serial.begin(115200);
  while (!Serial);
  pinMode(PA_15, OUTPUT);
  keyb.begin();
  ser.begin();
  display.begin();
  display.fillScreen(BLACK);
  display.setCursor(0, 0);
  display.setTextSize(3);
  display.setRotation(3);
  delay(1000);
  if (WiFi.status() == WL_NO_SHIELD) {
    Serial.println("Communication with WiFi module failed!");
    while (true);
  }

  while (status != WL_CONNECTED) {
    delay(1000);
    display.fillScreen(BLACK);
    display.setCursor(10, 10);
    display.println("Accessing Wi-Fi...");
    Serial.println("Accessing Wi-Fi...");
    status = WiFi.begin(ssid, pass);
    delay(3000);
  }
  delay(1000);
  display.fillScreen(BLACK);
  display.setCursor(10, 10);
  display.println("Connected to Wi-Fi");
  display.setCursor(40, 40);
  display.println(ssid);
  Serial.println("Connected to Wi-Fi");
  Serial.println(ssid);
  delay(1000);
}

void loop() {
  String userPrompt = getUserInput();
  Serial.println(userPrompt);
  // Create the JSON payload using ArduinoJson library
  DynamicJsonDocument doc(1024);
  doc["model"] = "gpt-3.5-turbo";
  doc["temperature"] = 0.7;
  doc["stream"] = true;

  JsonArray messages = doc.createNestedArray("messages");

  JsonObject systemMessage = messages.createNestedObject();
  systemMessage["role"] = "system";
  systemMessage["content"] = "You are an assistant. You have a character limit of about 100 words ";

  JsonObject userMessage = messages.createNestedObject();
  userMessage["role"] = "user";
  userMessage["content"] = userPrompt;

  String requestBody;
  serializeJson(doc, requestBody);

  delay(3000);
  Serial.println("\nStarting connection to server...");

  WiFiSSLClient client;

  if (client.connect(server, serverPort)) {
    Serial.println(client.status());
    Serial.println("Connected to the Server: api.openai.com");
    delay(100);

    // Send HTTP POST request and change the prompt to your own
    String request = "POST /v1/chat/completions HTTP/1.1\r\n";
    request += "Host: api.openai.com\r\n";
    request += "Authorization: Bearer " + String(apikey.c_str()) + "\r\n";
    request += "Content-Type: application/json\r\n";
    request += "Content-Length: " + String(requestBody.length()) + "\r\n";
    request += "Connection: close\r\n\r\n";
    request += requestBody;

    Serial.println(request);
    client.print(request);
    String response;
    String accumulatedContent; // Variable to accumulate content words

    while (client.connected()) {
      String line = client.readStringUntil('\n');
      if (line.startsWith("data: ")) {
            // Remove the "data: " prefix
            line.remove(0, 6);
            Serial.println(line);
            DynamicJsonDocument doc(1024);
            DeserializationError error = deserializeJson(doc, line);  

            if (error) {
            Serial.print("Failed to parse JSON: ");
            Serial.println(error.c_str());
            display.fillScreen(BLACK);
            display.setCursor(10, 10);
            display.print("Failed to parse JSON: ");
            display.println(error.c_str());
        } 
        else if   (line.equals("[DONE]")) {
            break;
      }
        else {
            JsonArray choices = doc["choices"];
            for (JsonObject choice : choices) {
              String content = choice["delta"]["content"];
              Serial.println("ChatGPT Response: " + content);
              accumulatedContent += content + " ";
    
              display.fillScreen(BLACK);
              display.setCursor(10, 10);
              display.println("ChatGPT Response:");
              display.setCursor(40, 40);
              display.println(accumulatedContent);
            }
        }     
    }
    }

  } else {
    Serial.println("api.openai.com connection failed");
    display.fillScreen(BLACK);
    display.setCursor(10, 10);
    display.println("api.openai.com connection failed");
  }

    // Delay between iterations
  delay(10000);
}
</code>
</pre>



Um die Eingabeaufforderung zu akzeptieren, sollte der Benutzer die Taste „1“ auf seiner Tastatur finden und drücken.

Chat GPT auf dem Arduino Giga Display

Das folgende Video veranschaulicht die Echtzeit-Nutzung von ArduinoGPT.

Ich hoffe, du findest dieses Projekt nützlich und danke fürs Lesen. Hast du Fragen oder Feedback? Hinterlasse unten einen Kommentar.

Der gesamte im Artikel erwähnte Code ist in Shakhizats GitHub-Repo verfügbar.

Shakhizat Nurgaliyev

Wir freuen uns sehr, dir heute einen faszinierenden Artikel vorstellen zu dürfen, der uns von Shakhizat Nurgaliyev aus Kasachstan bereitgestellt wurde. Shakhizat ist ein engagierter Entwicklungsingenieur für eingebettete Systeme, der sich insbesondere auf die Bereiche Robotik und das Internet der Dinge (IoT) spezialisiert hat. Er möchte seine Begeisterung für technologische Innovationen und seine umfassenden Kenntnisse nun auch mit deutschen Technik-Enthusiasten teilen. Durch seine Arbeit an autonomen und intelligenten Systemen, die maschinelles Lernen zur Interaktion mit ihrer Umgebung nutzen, leistet Shakhizat einen wichtigen Beitrag zur Entwicklung der Robotik und des IoT. Seine Expertise umfasst den gesamten Prozess von der Idee bis zur Umsetzung, was ihn zu einem wertvollen Akteur in seinem Fachgebiet macht.



Schlagwörter: ArduinoArduino IDE
TeilenTeilenTwittern
Vorheriger Beitrag

Poetry Camera mit Raspberry Pi Zero 2 W und Pi Camera Modul

Nächster Beitrag

Raspberry Pi Projekte für den Frühling

Katrin Erdmann

Katrin Erdmann

Hallo und herzlich willkommen! Ich bin technikbegeistert, liebe SEO und bin ein kreativer Bastler – kurz: ein Allrounder, wenn es ums Entdecken und Gestalten geht. Technik fasziniert mich, weil sie unser Leben auf so viele spannende Arten verändern kann. Ich halte mich immer über die neuesten Trends und Gadgets auf dem Laufenden und liebe es, mein Wissen zu teilen. Kreativität und Basteln sind mein Ausgleich. Ich liebe es, mit den Händen zu arbeiten, Dinge zu erschaffen und Technik mit kreativen DIY-Ideen zu verbinden. Egal ob kleine Projekte oder größere Herausforderungen – Hauptsache, ich kann meine Ideen verwirklichen. In meinem Blog teile ich alles, was mich begeistert: Technik-Tipps, kreative DIY-Projekte. Mein Ziel ist es, komplexe Themen einfach zu erklären und Inspiration zu bieten. Ich freue mich, wenn du mich auf dieser Reise begleitest!

ÄhnlicheArtikel

Nicla Sense Env – Die leistungsstarke Sensorlösung für Portenta- und MKR-Boards
Kaufberatung

Nicla Sense Env – Die leistungsstarke Sensorlösung für Portenta- und MKR-Boards

14. Oktober 2024
Welche Sensoren gibt es für Arduino? Dein umfassender Leitfaden
Arduino

Welche Sensoren gibt es für Arduino? Dein umfassender Leitfaden

18. September 2024
Arduino
Arduino

Ist Arduino-Programmierung schwer zu lernen? – Ein Leitfaden für Anfänger

18. September 2024
Arduino Plug and Make Kit: Dein idealer Einstieg in die Welt des IoT
Kaufberatung

Arduino Plug and Make Kit: Dein idealer Einstieg in die Welt des IoT

27. August 2024
Nächster Beitrag
Raspberry Pi Projekte für den Frühling

Raspberry Pi Projekte für den Frühling

Schreibe einen Kommentar Antwort abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

News

Pineboards HatDrive! Nano: Revolutionäre Speicherlösung für Raspberry Pi 5
Produkte

Pineboards HatDrive! Nano: Revolutionäre Speicherlösung für Raspberry Pi 5

15. Juli 2024
Entdecke Raspberry Pi Connect: Fernzugriff leicht gemacht
Allgemein

Entdecke Raspberry Pi Connect: Fernzugriff leicht gemacht

10. Juli 2024
postmarketOS v24.06 Update: Jetzt über 250 unterstützte Geräte!
Allgemein

postmarketOS v24.06 Update: Jetzt über 250 unterstützte Geräte!

19. Juni 2024
Raspberry Pi AI Kit mit Hailo AI Modul
Raspberry Pi

Raspberry Pi AI Kit mit Hailo AI Modul

12. Juni 2024
DIY-Projekte mit Edge AI: Kleine KI-Modelle für Bastler
News

DIY-Projekte mit Edge AI: Kleine KI-Modelle für Bastler

4. Juni 2024
Arduino und MicroPython jetzt gleichzeitig auf Multi-Core-Mikrocontrollern betreiben
News

Arduino und MicroPython jetzt gleichzeitig auf Multi-Core-Mikrocontrollern betreiben

3. Juni 2024
  • OpenMediaVault NAS auf dem Raspberry Pi

    NAS mit einem Raspberry Pi bauen – Eine Anleitung

    1 teilen
    Teilen 0 Twittern 0
  • OpenMediaVault auf Raspberry Pi installieren: Tutorial

    0 teilen
    Teilen 0 Twittern 0
  • Raspberry Pi 5 mit M.2 HAT+ und SSD zusammenbauen und einrichten – Guide

    0 teilen
    Teilen 0 Twittern 0
  • Die Top 10 Smart Home Software im Vergleich

    0 teilen
    Teilen 0 Twittern 0
  • Raspberry Pi Betriebssysteme im Vergleich

    0 teilen
    Teilen 0 Twittern 0

Shop-Service

  • Berrys lohnen sich
  • Produktvorschlag
  • Jobs

Information

  • Impressum
  • AGB
  • Cookie-Richtlinie (EU)
  • Kontakt
BerryBase Blog

BerryBase GmbH
Am Studio 20D
12489 Berlin
blog@berrybase.de

© 2025 BerryBase

Keine Ergebnisse
Alle Ergebnisse anzeigen
  • Shop
  • Raspberry Pi
  • Projekte
    • Audio / Sound
    • Display
    • Fun
    • IoT / Smart Tech
    • Kamera
    • LED
    • Luft / Wetter
    • Software
  • Themen
    • Raspberry Pi
    • Arduino
    • ESP
    • Sensoren & Aktoren
    • IoT
    • Hausautomation
  • Kaufberatung
    • Produkte
  • How To
    • Guides
    • Wissensdatenbank
    • Software / Programmierung
  • News

© 2025 BerryBase

Zur mobilen Version gehen