สารบัญ:

Slimbox - ลำโพง Bluetooth อัจฉริยะ!: 10 ขั้นตอน (พร้อมรูปภาพ)
Slimbox - ลำโพง Bluetooth อัจฉริยะ!: 10 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Slimbox - ลำโพง Bluetooth อัจฉริยะ!: 10 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Slimbox - ลำโพง Bluetooth อัจฉริยะ!: 10 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: Bluetooth speaker review: Samsung Level Box Slim 2024, กรกฎาคม
Anonim
Slimbox - ลำโพง Bluetooth อัจฉริยะ!
Slimbox - ลำโพง Bluetooth อัจฉริยะ!

สวัสดี!

สำหรับโครงการโรงเรียนของฉันที่ MCT Howest Kortrijk ฉันได้สร้างอุปกรณ์ลำโพงบลูทูธอัจฉริยะพร้อมเซ็นเซอร์ต่างๆ รวมถึงวงแหวน LCD และ RGB NeoPixel ทุกอย่างทำงานบน Raspberry Pi (ฐานข้อมูล, เว็บเซิร์ฟเวอร์, แบ็กเอนด์)

ดังนั้นในคำแนะนำนี้ ฉันจะแสดงให้คุณเห็นว่าฉันทำโปรเจ็กต์นี้ได้อย่างไรใน 3 สัปดาห์ ทีละขั้นตอน ดังนั้นหากพวกคุณคนใดต้องการสร้างโปรเจ็กต์ของฉันขึ้นมาใหม่ คุณก็สามารถทำได้!

นี่เป็นคำสั่งแรกของฉันหากคุณมีคำถามใด ๆ ฉันจะพยายามตอบคำถามโดยเร็วที่สุด!

GitHub ของฉัน:

ขั้นตอนที่ 1: วัสดุสิ้นเปลือง

เสบียง
เสบียง
เสบียง
เสบียง
เสบียง
เสบียง

DS18B20 เซ็นเซอร์อุณหภูมิ

DS18B20 เป็นเซ็นเซอร์แบบสายเดียวที่วัดอุณหภูมิ ผลิตโดย Maxim Integrated มีเซ็นเซอร์ DS18B20 อยู่ 2 ประเภท เฉพาะส่วนประกอบ (ที่ฉันใช้) และรุ่นกันน้ำ ซึ่งใหญ่กว่ามาก แต่นั่นไม่ใช่สิ่งที่ฉันต้องการสำหรับโครงการของฉัน ดังนั้นฉันจึงใช้ส่วนประกอบเท่านั้น เซ็นเซอร์สามารถวัดอุณหภูมิได้ตั้งแต่ -55 °C ถึง +125°C (-67°F ถึง +257°F) และมีความแม่นยำ 0.5°C ตั้งแต่ -10°C ถึง +85°C นอกจากนี้ยังมีความละเอียดที่ตั้งโปรแกรมได้ตั้งแต่ 9 บิตถึง 12 บิต

เอกสารข้อมูล:

โพเทนชิออมิเตอร์เซนเซอร์

โพเทนชิออมิเตอร์คือตัวต้านทานที่มีขั้วต่อสามขั้วซึ่งปรับได้ด้วยตนเองโดยเพียงแค่หมุนส่วนบนของเซ็นเซอร์ ตำแหน่งของส่วนบนกำหนดแรงดันเอาต์พุตของโพเทนชิออมิเตอร์

LSM303 มาตรความเร่ง + ฝ่าวงล้อมเข็มทิศ

บอร์ดฝ่าวงล้อม LSM303 เป็นการผสมผสานระหว่างเครื่องวัดความเร่งแบบสามแกนและเครื่องวัดความเข้มข้นของสนามแม่เหล็ก/เข็มทิศที่ผลิตโดย Adafruit ใช้กับอินเทอร์เฟซ I2C ของ Raspberry Pi

ภาพรวม:

เอกสารข้อมูล:

MCP3008

ในการอ่านข้อมูลจากโพเทนชิออมิเตอร์ของฉัน ฉันใช้ MCP3008 ซึ่งเป็นตัวแปลงอนาล็อกเป็นดิจิตอล 8 ช่อง 10 บิตพร้อมอินเทอร์เฟซ SPI และค่อนข้างง่ายต่อการตั้งโปรแกรม

เอกสารข้อมูล:

ลำโพง – เส้นผ่านศูนย์กลาง 3” – 8 โอห์ม 1 วัตต์

นี่คือกรวยลำโพงที่ฉันเลือกหลังจากคำนวณแรงดันไฟและแอมแปร์ที่ต้องการ และนี่เหมาะอย่างยิ่งสำหรับโปรเจ็กต์ Raspberry Pi ของฉันที่ผลิตโดย Adafruit

ภาพรวม:

MAX98357 I2S Class-D โมโนแอมพลิฟายเออร์

นี่คือแอมพลิฟายเออร์ที่มาพร้อมกับลำโพง ไม่เพียง แต่เป็นแอมพลิฟายเออร์เท่านั้น แต่ยังเป็นตัวแปลง I2S แบบดิจิทัลเป็นแอนะล็อก ดังนั้นจึงเหมาะอย่างยิ่งสำหรับลำโพงและระบบเสียงของฉัน

ภาพรวม:

เอกสารข้อมูล:

Arduino Uno

Arduino Uno เป็นบอร์ดไมโครคอนโทรลเลอร์โอเพ่นซอร์สที่ใช้ไมโครคอนโทรลเลอร์ Microchip ATmega328P ผลิตโดย Arduino.cc บอร์ด Uno มี 14 พินดิจิตอล, 6 พินอะนาล็อกและสามารถตั้งโปรแกรมได้อย่างสมบูรณ์ด้วยซอฟต์แวร์ Arduino IDE

ภาพรวม:

ตัวเลื่อนระดับ

นี่คือบอร์ดขนาดเล็กที่ดูแลการสื่อสารระหว่าง Arduino Uno และ Raspberry Pi และแรงดันไฟฟ้าที่แตกต่างกัน Arduino: 5V & Raspberry Pi: 3.3V นี่เป็นสิ่งจำเป็นเนื่องจากวงแหวน NeoPixel เชื่อมต่อกับ Arduino และทำงานที่นั่น ในขณะที่สิ่งอื่น ๆ ทั้งหมดทำงานบน Raspberry Pi

RGB NeoPixel Ring

นี่คือวงแหวนขนาดเล็กที่เต็มไปด้วยไฟ LED RGB 12 ดวง (คุณสามารถซื้อวงแหวนที่ใหญ่กว่าด้วยไฟ LED RGB เพิ่มเติมได้หากต้องการ) ซึ่งในกรณีของฉันเชื่อมต่อกับ Arduino Uno แต่ยังสามารถเชื่อมต่อกับอุปกรณ์อื่น ๆ ได้มากมายและใช้งานง่ายมาก

ภาพรวม:

จอ LCD 16x2

ฉันใช้จอ LCD พื้นฐานเพื่อพิมพ์อุณหภูมิ ระดับเสียง และที่อยู่ IP ของฉัน

เอกสารข้อมูล:

การ์ด SD Raspberry Pi 3B+ และ 16GB

โครงการทั้งหมดของฉันทำงานบน Raspberry Pi 3B+ พร้อมอิมเมจที่กำหนดค่าไว้ ซึ่งฉันจะช่วยคุณกำหนดค่าในภายหลังในคำแนะนำของฉัน

GPIO T-Part, 2 Breadboards และสายจัมเปอร์จำนวนมาก

เพื่อเชื่อมต่อทุกอย่างที่ฉันต้องการ breadboards และ jumperwires ฉันใช้ GPIO T-part ดังนั้นฉันจึงมีพื้นที่มากขึ้นและเป็นที่ชัดเจนว่าพินใดเป็นพิน

ขั้นตอนที่ 2: แผนผังและการเดินสาย

แผนผังและการเดินสายไฟ
แผนผังและการเดินสายไฟ
แผนผังและการเดินสายไฟ
แผนผังและการเดินสายไฟ
แผนผังและการเดินสายไฟ
แผนผังและการเดินสายไฟ

สำหรับแผนผังของฉัน ฉันใช้ Fritzing เป็นโปรแกรมที่คุณสามารถติดตั้งได้ ซึ่งช่วยให้คุณสร้างแผนผังได้ง่ายมากในมุมมองประเภทต่างๆ

ดาวน์โหลด Fritzing:

ดังนั้นตรวจสอบให้แน่ใจว่าคุณเชื่อมต่อทุกอย่างอย่างถูกวิธี! ในกรณีของฉันสีของสายไฟไม่เหมือนกับแผนผัง

ขั้นตอนที่ 3: การออกแบบฐานข้อมูล

การออกแบบฐานข้อมูล
การออกแบบฐานข้อมูล

เรากำลังรวบรวมข้อมูลจำนวนมากจากเซ็นเซอร์ 3 ตัวที่เชื่อมต่อ เราจึงจำเป็นต้องมีฐานข้อมูลเพื่อจัดเก็บข้อมูลและเซ็นเซอร์ ต่อมาเราจะดูวิธีกำหนดค่าฐานข้อมูลบน Raspberry Pi และวิธีเพิ่มข้อมูลลงในฐานข้อมูล แต่ก่อนอื่นต้องมีการออกแบบฐานข้อมูลหรือ ERD (Entity Relationship Diagram) และของฉันก็ถูกทำให้เป็นมาตรฐานด้วย 3NF นั่นเป็นเหตุผลที่เราแยกเซ็นเซอร์ออกเป็นตารางอื่นและทำงานกับ ID

โดยรวมแล้วนี่คือการออกแบบฐานข้อมูลพื้นฐานและใช้งานง่ายเพื่อการทำงานต่อไป

ขั้นตอนที่ 4: เตรียม Raspberry Pi

ตอนนี้เรามีพื้นฐานบางอย่างของโครงการเสร็จแล้ว มาเริ่มกันที่ Raspberry Pi กันเถอะ!

การกำหนดค่าการ์ด SD

ขั้นแรก คุณต้องมีการ์ด SD ขนาด 16GB ที่คุณสามารถใส่ภาพและโปรแกรมเพื่ออัปโหลดภาพเริ่มต้นไปยังการ์ด SD

ซอฟต์แวร์:

ภาพเริ่มต้น:

ดังนั้นเมื่อดาวน์โหลดสิ่งเหล่านี้แล้ว:

  1. ใส่การ์ด SD ของคุณในคอมพิวเตอร์
  2. เปิด Win32 ที่คุณเพิ่งดาวน์โหลด
  3. เลือกไฟล์รูปภาพ Raspbian ที่คุณเพิ่งดาวน์โหลด
  4. คลิกที่ 'เขียน' ไปยังตำแหน่งของการ์ด SD ของคุณ

อาจใช้เวลาสักครู่ ทั้งนี้ขึ้นอยู่กับฮาร์ดแวร์ของคุณ เมื่อเสร็จแล้ว เราก็พร้อมที่จะทำการปรับเปลี่ยนขั้นสุดท้ายก่อนที่จะใส่ภาพลงใน RPi ของเรา

  1. ไปที่ไดเร็กทอรีของการ์ด SD ค้นหาไฟล์ชื่อ 'cmdline.txt' แล้วเปิดขึ้น
  2. ตอนนี้เพิ่ม 'ip=169.254.10.1' ในบรรทัดเดียวกัน
  3. บันทึกไฟล์.
  4. สร้างไฟล์ชื่อ 'ssh' โดยไม่มีส่วนขยายหรือเนื้อหา

ตอนนี้คุณสามารถนำการ์ด SD ออกจากคอมพิวเตอร์ของคุณอย่างปลอดภัยและใส่ลงใน Raspberry Pi โดยไม่ต้องใช้พลังงาน เมื่อการ์ด SD อยู่ใน RPI แล้ว ให้เชื่อมต่อสาย LAN จากคอมพิวเตอร์ของคุณเข้ากับพอร์ต RPi LAN เมื่อเชื่อมต่อแล้ว คุณสามารถเชื่อมต่อแหล่งจ่ายไฟเข้ากับ RPi ได้

ตอนนี้เราต้องการควบคุม Raspberry Pi ซึ่งทำได้ผ่าน Putty

ซอฟต์แวร์สีโป๊ว:

เมื่อดาวน์โหลดแล้ว ให้เปิด Putty และใส่ IP '169.254.10.1' และ Port '22' และประเภทการเชื่อมต่อ: SSH ในที่สุด เราก็สามารถเปิดอินเทอร์เฟซบรรทัดคำสั่งและเข้าสู่ระบบด้วยข้อมูลการเข้าสู่ระบบเริ่มต้น -> ผู้ใช้: pi & รหัสผ่าน: ราสเบอร์รี่

Raspi-config

sudo raspi-config

สิ่งที่สำคัญมากสำหรับโปรเจ็กต์นี้คือส่วนเชื่อมต่อ เราต้องเปิดใช้งานอินเทอร์เฟซต่างๆ มากมาย เปิดใช้งานอินเทอร์เฟซต่อไปนี้ทั้งหมด:

  • สายเดียว
  • SPI
  • I2C
  • ซีเรียล

เมื่อเสร็จสิ้นกับ raspi-config แล้ว ให้ลองทำการเชื่อมต่อกับอินเทอร์เน็ต

การเชื่อมต่อ Wi-Fi

ขั้นแรก คุณต้องรูทสำหรับคำสั่งต่อไปนี้

sudo -i

เมื่อคุณรูทแล้ว ให้ใช้คำสั่งต่อไปนี้ SSID คือชื่อเครือข่ายของคุณและรหัสผ่านก็คือรหัสผ่าน

wpa_passphrase "ssid" "รหัสผ่าน" >> /etc/wpa_supplicant/wpa_supplicant.conf

ในกรณีที่คุณทำผิดพลาด คุณสามารถตรวจสอบ อัปเดต หรือลบเครือข่ายนี้ได้โดยเพียงแค่ป้อนไฟล์นั้น:

nano /etc/wpa_supplicant/wpa_supplicant.conf

หลังจากที่เราเข้าสู่เครือข่ายแล้ว ให้เข้าสู่อินเทอร์เฟซไคลเอนต์ WPA

wpa_cli

เลือกอินเทอร์เฟซของคุณ

อินเทอร์เฟซ wlan0

โหลดไฟล์ซ้ำ

กำหนดค่าใหม่

และสุดท้าย คุณสามารถดูว่าคุณเชื่อมต่อได้ดีหรือไม่:

ip a

อัปเดตและอัปเกรด

ตอนนี้เราเชื่อมต่อกับอินเทอร์เน็ตแล้ว การอัปเดตแพ็คเกจที่ติดตั้งไว้แล้วจะเป็นการดำเนินการที่ชาญฉลาด ดังนั้นเรามาทำกันก่อนทำการติดตั้งแพ็คเกจอื่นๆ

sudo apt-get update

sudo apt-get อัพเกรด

ฐานข้อมูล MariaDB

ติดตั้งเซิร์ฟเวอร์ฐานข้อมูล MariaDB:

sudo apt-get ติดตั้ง mariadb-server

เว็บเซิร์ฟเวอร์ Apache2

ติดตั้งเว็บเซิร์ฟเวอร์ Apache2:

sudo apt ติดตั้ง apache2

Python

ติดตั้งไพทอน:

อัพเดตทางเลือก -- ติดตั้ง /usr/bin/python python /usr/bin/python2.7 1

อัพเดตทางเลือก -- ติดตั้ง /usr/bin/python python /usr/bin/python3 2

แพ็คเกจ Python

คุณจะต้องติดตั้งแพ็คเกจเหล่านี้ทั้งหมดเพื่อให้แบ็กเอนด์ทำงานได้อย่างสมบูรณ์:

  • กระติกน้ำ
  • Flask-Cors
  • Flask-MySql
  • กระติกน้ำ-ซ็อกเก็ตIO
  • PyMySQL
  • คำขอ
  • Python-socketio
  • RPi. GPIO
  • เกเวนต์
  • Gevent-websocket
  • อุจซัน
  • Wsaccel

ห้องสมุดลำโพง

ติดตั้งไลบรารีของลำโพงจาก Adafruit:

curl -sS https://raw.githubusercontent.com/adafruit/Raspbe… | ทุบตี

ได้เวลารีบูต

sudo รีบูต

ขั้นตอนที่ 5: ส่งต่อวิศวกรรมฐานข้อมูลของเราไปยัง RPi

ตอนนี้เราได้ติดตั้งทุกอย่างที่เราต้องการแล้ว มาใส่ฐานข้อมูลที่เราออกแบบไว้ใน Raspberry Pi กันเถอะ!

ดังนั้นก่อนอื่น เราต้องส่งต่อวิศวกรฐานข้อมูลของเราใน MySql workbench ในขณะที่ทำอย่างนั้น ให้คัดลอกรหัสฐานข้อมูลทั้งหมดของคุณและลบคำที่ 'มองเห็นได้' ทั้งหมดออก ดังนั้นเมื่อคัดลอกแล้ว ให้เปิด putty อีกครั้ง เข้าสู่ระบบและพิมพ์:

sudo mysql

และตอนนี้คุณอยู่ในอินเทอร์เฟซ mysql แล้ว ให้คัดลอกโค้ดฐานข้อมูลของคุณลงไป แล้วกด Enter

ตอนนี้เราแค่ต้องสร้างผู้ใช้

สร้างผู้ใช้ 'ผู้ใช้' ระบุโดย 'ผู้ใช้';

ให้สิทธิ์ทั้งหมดบน *.* แก่ 'ผู้ใช้';

ตอนนี้รีบูต

ดังนั้นคุณควรตั้งค่าทุกอย่างในตอนนี้ คุณยังสามารถเชื่อมต่อกับ Pi และ MySql Workbench ได้ ดังนั้นการตรวจสอบข้อมูลทั้งหมดในตารางของคุณจึงง่ายกว่า

ขั้นตอนที่ 6: การกำหนดค่า Bluetooth บน RPi. ของเรา

เรากำลังสร้างลำโพง Bluetooth ซึ่งหมายความว่ามีการส่งสื่อจากแหล่งที่มาของเราไปยัง Raspberry Pi และสามารถทำได้ง่ายมาก มาเริ่มกันเลย!

แหล่งที่มาของฉันสำหรับการเชื่อมต่อบลูทูธ:

กำลังลบ bluealsa ที่กำลังทำงานอยู่

sudo rm /var/run/bluealsa/*

เพิ่มบทบาท Sink โปรไฟล์ A2DP

sudo bluealsa -p a2dp-อ่างล้างจาน &

เปิดอินเทอร์เฟซบลูทูธและเปิดบลูทูธ

bluetoothctl

เปิดเครื่อง

ตั้งค่าตัวแทนการจับคู่

ตัวแทน on

default-agent

ทำให้ RPi ของคุณค้นพบได้

ค้นพบได้บน

  • จากอุปกรณ์บลูทูธของคุณ ค้นหา RPi และเชื่อมต่อ
  • ยืนยันการจับคู่ในอุปกรณ์ทั้งสองเครื่อง พิมพ์ 'ใช่' ในสีโป๊วของคุณ
  • อนุญาตบริการ A2DP พิมพ์ 'ใช่' อีกครั้ง
  • เมื่อเสร็จแล้วเราสามารถวางใจในอุปกรณ์ของเราได้ ดังนั้นเราไม่ต้องดำเนินการทั้งหมดนี้ทุกครั้งที่ต้องการเชื่อมต่อ

เชื่อถือ XX:XX:XX:XX:XX:XX (ที่อยู่ mac บลูทู ธ ของคุณจากอุปกรณ์ต้นทางของเรา)

หากคุณต้องการให้ RPi ของคุณถูกค้นพบต่อไป นั่นเป็นทางเลือกของคุณเอง แต่ฉันชอบที่จะปิดอีกครั้ง เพื่อไม่ให้คนอื่นพยายามเชื่อมต่อกับกล่องของคุณ

ค้นพบได้ปิด

จากนั้นเราก็ออกจากอินเทอร์เฟซบลูทูธของเราได้

ทางออก

และสุดท้าย การกำหนดเส้นทางเสียงของเรา: อุปกรณ์ต้นทางของเราที่ส่งต่อไปยัง RPi. ของเรา

bluealsa-aplay 00:00:00:00:00:00

ตอนนี้อุปกรณ์ของเราเชื่อมต่อกับ Raspberry ของเราอย่างสมบูรณ์แล้ว และคุณควรจะสามารถเล่นสื่อจากอุปกรณ์ต้นทางของคุณบนลำโพง Pi ได้

ขั้นตอนที่ 7: การเขียนแบ็กเอนด์ที่สมบูรณ์

เมื่อตั้งค่าเสร็จแล้ว เราก็สามารถเริ่มต้นเขียนโปรแกรมแบ็กเอนด์ของเราได้!

ฉันใช้ PyCharm สำหรับแบ็กเอนด์ทั้งหมดของฉัน คุณเพียงแค่ต้องแน่ใจว่าโปรเจ็กต์ PyCharm ของคุณเชื่อมต่อกับ Raspberry Pi ของคุณ ซึ่งหมายความว่าพาธการปรับใช้ของคุณได้รับการตั้งค่าในการตั้งค่าของคุณ และคุณติดตั้งแพ็คเกจทั้งหมดที่เราต้องการ ควรทำในขั้นตอนแล้ว 4.

ฉันใช้ชั้นเรียนของตัวเองและทั้งหมดนี้รวมอยู่ใน GitHub ของฉันด้วย ลิงค์อยู่ในอินโทรเผื่อพลาด;)

ในไฟล์แบ็กเอนด์ของฉัน ฉันใช้คลาสเธรด ดังนั้นทุกอย่างสามารถทำงานพร้อมกันได้และจะไม่ขัดจังหวะซึ่งกันและกัน และที่ด้านล่างสุด คุณมีเส้นทางทั้งหมด เพื่อให้เรารับข้อมูลในส่วนหน้าได้อย่างง่ายดาย

ขั้นตอนที่ 8: การเขียนส่วนหน้า (HTML, CSS & JavaScript)

เมื่อแบ็กเอนด์เสร็จแล้ว เราสามารถเริ่มเขียนฟรอนต์เอนด์แบบเต็มได้

HTML & CSS นั้นทำได้ง่ายมาก พยายามใช้งานมือถือก่อนมากที่สุด เนื่องจากเราส่วนใหญ่เชื่อมต่อกับบลูทูธจากอุปกรณ์มือถือ การควบคุมจากแดชบอร์ดบนมือถือจะง่ายกว่า

คุณสามารถออกแบบแดชบอร์ดของคุณในแบบที่คุณต้องการ ฉันจะทิ้งโค้ดและการออกแบบไว้ที่นี่ คุณสามารถทำอะไรก็ได้ที่คุณต้องการ!

และจาวาสคริปต์ก็ไม่ได้ยากขนาดนั้น ทำงานกับ GET บางตัวจากเส้นทางแบ็กเอนด์ของฉัน ตัวฟังเหตุการณ์มากมาย และโครงสร้าง socketio บางตัว

ขั้นตอนที่ 9: สร้างกรณีของฉันและรวบรวมทั้งหมด

สร้างเคสของฉันและรวมทุกอย่างเข้าด้วยกัน
สร้างเคสของฉันและรวมทุกอย่างเข้าด้วยกัน
สร้างเคสของฉันและรวมทุกอย่างเข้าด้วยกัน
สร้างเคสของฉันและรวมทุกอย่างเข้าด้วยกัน
สร้างเคสของฉันและรวมทุกอย่างเข้าด้วยกัน
สร้างเคสของฉันและรวมทุกอย่างเข้าด้วยกัน

อันดับแรก ฉันเริ่มต้นด้วยการสเก็ตช์ภาพว่าฉันต้องการให้เคสดูเป็นอย่างไร สิ่งสำคัญคือต้องใหญ่พอสำหรับทุกอย่างที่จะใส่เข้าไป เนื่องจากเรามีวงจรขนาดใหญ่ที่จะใส่ในเคส

ฉันทำเคสจากไม้ ฉันคิดว่ามันง่ายที่สุดที่จะใช้งานเมื่อคุณไม่มีประสบการณ์มากนักกับการสร้างเคส และคุณยังมีหลายสิ่งที่คุณสามารถทำได้ด้วย

ฉันเริ่มจากกล่องใส่ขวดไวน์และเพิ่งเริ่มเลื่อยไม้ เมื่อฉันมีเคสพื้นฐานแล้ว ฉันแค่ต้องเจาะรูมัน (ส่วนใหญ่ที่ด้านหน้าของเคสอย่างที่คุณเห็นในภาพ:P) และตอกตะปูลงไป มันเป็นเคสพื้นฐานจริงๆ แต่มัน ดูเท่และลงตัวสุดๆ

และเมื่อคดีเสร็จสิ้นก็ถึงเวลาที่จะรวบรวมทุกอย่างดังที่คุณเห็นในภาพสุดท้าย! ภายในกล่องค่อนข้างจะเลอะเทอะ แต่ทุกอย่างใช้งานได้ดี และฉันไม่มีที่ว่างมากกว่านี้ ดังนั้นฉันแนะนำให้คุณสร้างเคสที่ใหญ่กว่านี้ หากคุณกำลังสร้างโปรเจ็กต์ของฉันใหม่

ขั้นตอนที่ 10: ปัญหาบางอย่างที่ฉันมีบนถนนในการสร้างลำโพง Slimbox…

ข้อผิดพลาดของ Bluetooth และ bluealsa

ทุกครั้งที่ฉันต้องการเล่นเพลงหรือเชื่อมต่อกับบลูทูธ ฉันได้รับข้อผิดพลาดจากบลูทูธและ bluealsa ฉันได้ค้นคว้าเกี่ยวกับเรื่องนี้และนี่คือวิธีแก้ไขปัญหาของฉัน ด้วยเหตุผลบางประการ บลูทูธของฉันจึงถูกบล็อกแบบซอฟต์บล็อก ไม่แน่ใจว่านี่เป็นซอฟต์บล็อกแบบมาตรฐานหรือไม่ คุณสามารถดูได้โดยการพิมพ์คำสั่งต่อไปนี้ในสีโป๊วของคุณ

รายการ rfkill

ดังนั้นหากเป็น softblock ให้ใช้สิ่งนี้:

rfkill ปลดบล็อกบลูทูธ

และคุณอาจต้องการรีบูตหลังจากนี้ แหล่งที่มาของฉัน:

ปัญหาการเชื่อมต่อแบบอนุกรม

ปัญหาใหญ่อีกประการหนึ่งที่ฉันมีคือฉันไม่สามารถเชื่อมต่อกับ Arduino ผ่านตัวเลื่อนระดับได้ หลังจากการค้นหาบางอย่าง ฉันพบว่า '/ dev/ttyS0' ของฉันหายไป และอาจเป็นเพราะการอัปเดต RPi ของคุณ พบวิธีแก้ปัญหานี้ด้วย

คุณจะต้องเปิดใช้งานคอนโซลซีเรียลอีกครั้งด้วย raspi-config รีบูต จากนั้นจึงลบบิต "console=serial0, 115200" ออกจาก '/boot/cmdline.txt' ด้วยตนเอง ยืนยันว่า "enable_uart=1" อยู่ใน ' /boot/config.txt' และรีบูตอีกครั้ง ซึ่งควรได้รับพอร์ต ttyS0 ของคุณกลับมา เช่นเดียวกับซอฟต์ลิงก์ '/dev/serial0'

ที่มา:

แนะนำ: