Suche

Die Oxocard Connect als persönlicher Assistent

Hier ein kleines Programm, mit dem die Oxocard Connect zum persönlichen Assistenten wird, der jeden Morgen etwas Nettes schreibt.

Anzeige

Die Oxocard Connect im Größenvergleich (Bild: Thomas Ell) [1/10]

Der Slot für die Cartridges (Bild: Thomas Ell) [2/10]

Hier sieht man die Kontakte für die Cartridges. (Bild: Thomas Ell) [3/10]

CO2-Gehalt in der Luft mit cooler Skala-Anzeige (Bild: Thomas Ell) [4/10]

Alle Sensordaten auf einmal (Bild: Thomas Ell) [5/10]

Luftqualität ohne Zahlen durch nette Grafiken (Bild: Thomas Ell) [6/10]

Dreidimensionale Darstellung des Objektes vor dem Sensor (Bild: Thomas Ell) [7/10]

Elektronische Bauteile (Bild: Thomas Ell) [8/10]

Die Steckplatine mit den wichtigsten Bauteilen (Bild: Thomas Ell) [9/10]

Tägliche Motivation durch ChatGPT (Bild: Thomas Ell) [10/10]

  1. openAIApiKey = "openai api key"
  2. url = "https://api.openai.com/v1/chat/completions"
  3. template:byte[500]
  4. template = "{\"model\":\"gpt-3.5-turbo\", \
  5. \"messages\": [ \
  6. {\"role\": \"system\", \"content\": \"Du bist der Personal Assistent von Monika.\"}, \
  7. {\"role\": \"user\", \"content\": \"Sag Monika einen netten Satz.\"} \
  8. ], \
  9. \"temperature\": 1 \
  10. }"
  11. json:byte[500]
  12. textFont(FONT_ROBOTO_24)
  13. def displayString(text:byte[], partLength):
  14. start = 0
  15. y = 0
  16. strLength = strLen(text)
  17. while start < strLength:
  18. charCount = partLength
  19. if start + partLength > 119:
  20. charCount = strLength - start
  21. part = strSubstring(text, start, charCount)
  22. drawText(0, y, part)
  23. start += partLength
  24. y += 24
  25. def onDraw():
  26. while getButton():
  27. background(255,0,0)
  28. update()
  29. addRequestHeader("Content-Type:", "application/json")
  30. addRequestHeader("Authorization:", "Bearer " + openAIApiKey)
  31. if (postRequest(url, template)):
  32. json = readRequestJSON("choices.0.message.content")
  33. if strLen (json) > 119:
  34. json = strSubstring (json, 0, 119)
  35. displayString(json, 18)
  36. else:
  37. drawText(0, 0, "Error!")
  38. update()

Das ist zwar noch keine typische IoT-Anwendung, zeigt aber, dass die Verbindung zu ChatGPT funktioniert. Durch die Kombination von IoT und KI ist, finde ich, eine neue große Spielwiese für unzählige faszinierende Ideen geschaffen worden.

Fazit

Die Oxocard Connect macht es in Verbindung mit den hochwertigen Cartridges und der speziellen Breadboard-Cartridge sehr einfach, Sensoren elektronisch mit der IoT-Welt zu verbinden.

In Verbindung mit der interpretierenden Sprache NanoPy ist auch die Programmierung schnell erledigt. Insofern ist dieser neue Zugang zum ESP32-Mikrocontroller möglicherweise die eleganteste und schnellste Form, mit dem ESP32 Anwendungen zu entwickeln.

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6