使用Gemini的串行監(jiān)視器通過Tiny Xiao ESP32-C3提出問題,并在mini 0.96顯示器上得到智能回復
在這個項目中,我使用Seeed Studio Xiao ESP32-C3在Mini 128*64OLED顯示器上帶來了谷歌Gemini AI響應。只需要幾個組件,我就創(chuàng)建了一個口袋大小的AI終端,它可以從Gemini獲取智能回復,并通過文本包裝和基于按鈕的導航非常流暢地顯示它們——沒有麻煩,只是直接和清晰的輸出。
我做這個是因為我一直想做一些非常簡單、智能和嵌入式的東西——一個緊湊的人工智能界面,而不太依賴于手機或PC屏幕。這個項目的靈感來自于Gemini和ChatGPT等基于聊天的人工智能。所以,我決定制作一個只通過文本交流的Pocket AI助手,完全在一個帶有小型OLED的微控制器上。
我用的是簡單的硬件
?Xiao ESP32-C3(由Seeed工作室)-緊湊,支持Wi-Fi板
?0.96“I2C OLED顯示屏- 128x64分辨率
?2個按鈕-用于上下滾動
?面包板和跳線
?USB-C電纜
我是如何建造它的
1. 顯示設置和字體
我使用U8g2庫來控制OLED顯示器。它允許干凈的字體和基于緩沖區(qū)的繪圖,非常適合簡單的文本顯示和動畫。
2. 動畫和UI
我補充說:
一個“開發(fā)由物聯網樞紐”濺動畫與緩慢的蹺蹺板運動
在獲取答案時,閃爍的“Loading…”動畫
換行,避免在行中間換行
3. Wi-Fi和Gemini API
使用ESP32-C3的Wi-Fi功能,我連接了本地網絡,并使用HTTPClient使用其公共API查詢Gemini。
使用ArduinoJson解析響應,并在屏幕上顯示-一次3行,使用兩個按鈕垂直滾動。
4. 用戶交互
1)通過串行監(jiān)視器輸入問題
2)對格式清晰的OLED的反應
3)使用GPIO按鈕上下滾動
如何構建它
?將OLED連接到小ESP32-C3上的SDA = GPIO6, SCL = GPIO7
?將兩個按鈕連接到GPIO8和GPIO9(帶有內部拉拔)
?Flash提供的Arduino代碼與您的API和WiFi SSID與密碼
?在串行監(jiān)視器中輸入一個問題,并直接在您的顯示器上獲得AI響應
?使用按鈕滾動瀏覽較長的答案
庫的使用
?U8g2用于OLED
?WiFi和HTTPClient進行網絡通信
?ArduinoJson解析雙子座的JSON響應
什么是你可以自己積分的?
你可以——
?使用麥克風模塊添加語音到文本的輸入
?使用SD卡模塊在SD卡上保存回答歷史
?添加菜單和其他多任務功能
本文編譯自hackster.io