Easy
โปรเจกต์ Arduino MIDI Mouse Controller
เปลี่ยน "roller ball" mouse เครื่องเก่าให้กลายเป็น MIDI controller ที่สามารถปลดล็อกวิธีใหม่ๆ ในการสร้าง digital music
เปลี่ยน "roller ball" mouse เครื่องเก่าให้กลายเป็น MIDI controller ที่สามารถปลดล็อกวิธีใหม่ๆ ในการสร้าง digital music
▶ กดเพื่อดูวิดีโอสาธิตโปรเจกต์
thought Expert translator in electronics, programming, and robotics. English to Thai (natural, easy to understand).
1. Preserve all Markdown structures (images, links, bold, code blocks) and HTML tags exactly. No translation or deletion of these.
2. Keep technical terms in English (transliteration/original form): *Arduino, Relay, Sensor, GPIO, Loop, Variable, GND, VCC, Module, Pins, Board, PS/2, MIDI, X axis, Y axis, CC, USB, LED, matrix, I2C, OLED, Breadboard, IDE, libraries, etc.*
3. Return *only* the translated text. No intro/outro.
* *Title:* Reimagining MIDI devices based on old electronics -> การสร้างอุปกรณ์ MIDI ขึ้นใหม่จากอุปกรณ์อิเล็กทรอนิกส์เก่า
* *Sentence 1:* I hate throwing away old electronics... -> ผมไม่ชอบทิ้งอุปกรณ์อิเล็กทรอนิกส์เก่าๆ ที่ยังใช้งานได้แต่ไม่รองรับกับเครื่องใช้สมัยใหม่แล้ว
* *Sentence 2:* My idea for this project came after finding an old PS/2 port roller ball computer mouse... -> ไอเดียสำหรับโปรเจกต์นี้เกิดขึ้นหลังจากที่ผมเจอเมาส์คอมพิวเตอร์แบบลูกกลิ้งพอร์ต PS/2 เก่าๆ ตัวหนึ่งที่ไม่ได้ใช้งานแล้ว
* *Sentence 3 (Musician context):* I'm a musician... HELL SHEEP. -> ผมเป็นนักดนตรีในเวลาว่างและกำลังบันทึกเสียง EP ร่วมกับวงแนว Metal ของผมชื่อ [HELL SHEEP](https://hellsheep.bandcamp.com)
* *Sentence 4 (MIDI controllers):* I'm using MIDI controllers to create synth parts... -> ผมใช้ MIDI controllers เพื่อสร้างส่วนของ Synth สำหรับเพลงของเราใน Pro Tools
* *Sentence 5 (Writing MIDI):* Many people use a MIDI keyboard... -> หลายคนใช้คีย์บอร์ด MIDI ในการเขียน MIDI ลงในคอมพิวเตอร์
* *Sentence 6 (Experimenting):* I'm no pianist... chess games and cellular automata. -> ผมไม่ใช่นักเปียโน ดังนั้นผมจึงได้ทดลองใช้วิธีต่างๆ ในการเขียน MIDI รวมถึงการใช้ [chess games](https://youtu.be/TBQJtroDKkk) และ [cellular automata](https://www.youtube.com/watch?v=GayJycHz04s&t=1s)
* *Sentence 7 (The Mouse Idea):* Trying to think of a way to re-use the old computer mouse... repurposed with Arduino as a nifty MIDI controller. -> เมื่อพยายามคิดหาวิธีนำเมาส์คอมพิวเตอร์เก่ากลับมาใช้ใหม่ ผมก็เกิดไอเดียว่าสามารถดัดแปลงมันด้วย Arduino ให้กลายเป็น MIDI controller ที่เจ๋งๆ ได้
* *Section: The Arduino MIDI computer mouse controller*
* *Mapping:* I decided that the controller would make use of every feature... -> ผมตัดสินใจว่าตัว Controller นี้จะใช้ฟีเจอร์ทุกอย่างที่มีในเมาส์เก่าตัวนั้น นั่นหมายถึงการ Map คำสั่ง MIDI แยกกันสำหรับการคลิกซ้าย, คลิกขวา, คลิกที่ลูกกลิ้ง (Mouse wheel), การเลื่อนลูกกลิ้ง และการขยับเมาส์ในแนวแกน X และ Y
* *Pitch/Volume:* I decided to map the midi pitch to the X axis position, and the midi volume (known as 'velocity') to the Y axis position. -> ผมตัดสินใจ Map ค่า MIDI Pitch เข้ากับตำแหน่งแกน X และ MIDI Volume (หรือที่รู้จักกันในชื่อ 'Velocity') เข้ากับตำแหน่งแกน Y
* *Mouse Wheel:* The position of the mouse wheel... continuous controller (CC1). -> ตำแหน่งของลูกกลิ้งเมาส์จะเป็นตัวกำหนดค่าของ [continuous controller](https://www.sweetwater.com/insync/continuous-controller/) ซึ่งในการตั้งค่าเริ่มต้นจะเป็น CC1 หรือค่า Mod wheel
* *Modes:* Two modes... Glissando mode... Interval mode... -> การทำงานของอุปกรณ์จะแบ่งเป็น 2 Mode ซึ่งสามารถสลับไปมาได้โดยการคลิกที่ลูกกลิ้งเมาส์ ใน Mode *Glissando* อุปกรณ์จะเล่นโน้ต MIDI ได้ครั้งละ 1 ตัวเท่านั้น โดยการคลิกซ้ายหรือขวาจะ Map ไปที่โน้ตเดียวกัน การขยับเมาส์ขณะที่คลิกค้างไว้จะทำให้เกิดการเคลื่อนที่ของโน้ตอย่างต่อเนื่อง ส่วนใน Mode *Interval* การคลิกซ้ายและขวาจะ Map ไปที่โน้ตคนละตัวกัน ทำให้สามารถเล่นช่วงเสียง (Intervals) ได้โดยเริ่มจากการคลิกปุ่มหนึ่งของเมาส์ จากนั้นขยับตำแหน่งแกน X แล้วคลิกปุ่มอื่นของเมาส์
* *Section: The user interface*
* *Intuitive UI:* I wanted to give the controller an intuitive... -> ผมต้องการให้ Controller นี้มี User interface ที่ใช้งานง่ายและสมบูรณ์ เพื่อที่ผู้ใช้จะได้ไม่ต้องพึ่งพาหน้าจอคอมพิวเตอร์ในการใช้งานอุปกรณ์ **นั่นหมายความว่าตัว Controller** **สามารถใช้งานร่วมกับอุปกรณ์ใดก็ได้ที่สามารถอ่าน MIDI ผ่าน USB ได้** เพื่อที่จะทำสิ่งนี้ ผมจึงใช้ LED Bicolour Matrix ขนาด 8 * 8 และจอ I2C แบบ Monochrome ขนาด 128 * 64
* *LED Matrix:* The LED matrix provides a representation of the X and Y axis... -> LED Matrix จะแสดงตำแหน่งของแกน X และ Y ของเมาส์ รูปแบบของไฟตามแนวแกน X จะอิงจาก 1 Octave ของสเกล C Major ดังที่แสดงในรูปด้านล่าง มันจะวนซ้ำตั้งแต่ -5 ถึง +4 Octave เหนือ Middle C
* *Y Axis:* Unlike the X axis, the Y axis does not 'loop'... -> ไม่เหมือนกับแกน X ตรงที่แกน Y จะไม่มีการ 'Loop' ดังนั้นค่า Volume ที่เป็นไปได้ 127 ค่าจะถูก Map เข้ากับ 8 ตำแหน่งบน Matrix ดังที่แสดงในรูปด้านล่าง:
* *Colors:* Glissando mode (green/red), Interval mode (red/orange/green). -> ใน Mode Glissando ไฟ Matrix จะสว่างเป็นสีเขียวเพื่อแสดงตำแหน่งของเมาส์ก่อนที่จะกดโน้ต และจะเป็นสีแดงขณะที่กำลังกดโน้ต ส่วนใน Mode Interval ไฟ Matrix จะสว่างเป็นสีแดง ณ จุดที่คลิกปุ่มซ้าย, สีส้ม ณ จุดที่คลิกปุ่มขวา และสีเขียวที่ตำแหน่งปัจจุบันของเมาส์
* *OLED:* Alongside the LED matrix, there is a 128 * 64 OLED monochrome display... -> นอกจาก LED Matrix แล้ว ยังมีจอ OLED Monochrome ขนาด 128 * 64 ที่แสดงค่าโน้ตและ Volume ปัจจุบัน รวมถึงตำแหน่งของลูกกลิ้งเมาส์และ Mode การทำงาน โดยมีรูปประกอบพร้อมคำอธิบายอยู่ด้านล่าง
* *Section: How to assemble the device*
* *Breadboard/Libraries:* Wire up your components on a breadboard... -> เชื่อมต่ออุปกรณ์ของคุณบน Breadboard ตามรูปผังวงจรด้านล่าง ติดตั้ง Library ต่อไปนี้โดยใช้ Library manager ใน Arduino IDE: MIDIUSB, Adafruit_LEDBackpack, Adafruit_GFX, Adafruit_SSD1306
* *Upload:* Download the code... upload it onto your Arduino micro. -> ดาวน์โหลด Code จาก GitHub repository และ Upload ลงใน Arduino Micro ของคุณ
* *Section: Making music with your mouse*
* *Check UI:* Once you've wired the circuit... -> เมื่อคุณต่อวงจรและ Upload Code เรียบร้อยแล้ว ให้ต่อเมาส์ PS/2 แบบลูกกลิ้งและตรวจสอบว่า UI ทำงานหรือไม่ ถ้าทำงาน แสดงว่าอุปกรณ์พร้อมใช้งานในฐานะ MIDI Controller แล้ว หากคุณไม่เคยใช้ MIDI Controller เพื่อทำเพลงบน PC มาก่อน ผมแนะนำให้ทำตามคำแนะนำใน [Midi Sound Generation on Windows](https://www.arduino.cc/en/Tutorial/MidiDevice) ในเอกสารประกอบของอุปกรณ์ MIDI
* *Ready to use:* If you've used MIDI before... Pro Tools 12. -> หากคุณเคยใช้ MIDI มาก่อน อุปกรณ์นี้ก็พร้อมใช้งานเหมือนกับ MIDI Controller ทั่วไป ในรูปด้านล่างผมจะแสดงวิธีที่ผมใช้งานอุปกรณ์นี้ร่วมกับ Pro Tools 12
* *Pro Tools Steps:* ใน Pro Tools ให้ไปที่ Setup -> MIDI -> MIDI Input Devices ... เลือก 'Arduino Micro' ซึ่งจะถูกตรวจพบโดยอัตโนมัติหากคุณเชื่อมต่อ Arduino ผ่าน USB
* *Notes:* Some things to note: the MIDI channel is fixed at channel 1... -> ข้อควรทราบ: MIDI Channel ถูกกำหนดตายตัวไว้ที่ Channel 1 หากคุณต้องการเปลี่ยนค่านี้ คุณต้องไปแก้ที่ค่าคงที่ **midiChannel** ใน Code เช่นเดียวกันกับลูกกลิ้งเมาส์ที่ถูก Map ไว้ที่ CC 1 ซึ่งสามารถเปลี่ยนใน Code ได้เช่นกัน
* *Experimenting:* Finally, if you do some light tinkering with the code... -> สุดท้ายนี้ หากคุณลองปรับแต่ง Code เล็กน้อย คุณสามารถทดลองเปลี่ยนความไว (Sensitivity) ของเมาส์ หรือเปลี่ยนพารามิเตอร์ MIDI ที่ตำแหน่งแกน X, Y หรือลูกกลิ้งเมาส์สอดคล้องกัน หากคุณลองปรับแต่งแล้วได้อะไรเจ๋งๆ อย่าลืมแชร์ในคอมเมนต์ด้วยนะครับ!
* *Section: Acknowledgements*
* Markdown images? Yes.
* Markdown links? Yes.
* HTML tags (`<h3>`, `<p>`, `<span>`, `<strong>`, `<div>`, `<figure>`, `<iframe>`, `<ul>`, `<li>`, `<em>`)? Yes.
* Technical terms kept in English? Yes (Arduino, Relay, Sensor, GPIO, Loop, Variable, GND, VCC, Module, Pins, Board, MIDI, PS/2, controller, CC, synth, Pro Tools, pitch, velocity, matrix, I2C, OLED, Breadboard, IDE, library, Micro, channel).
* Tone? Natural and easy to understand. สนับสนุนเพื่อรับ Source Code หรือแอปพลิเคชันสำหรับโปรเจกต์นี้
ประเมิน Project
เอาฟอร์มยาวออกจากท้ายหน้า Project แล้ว เหลือเป็นปุ่มให้กดไปกรอกหน้าเดียว ตัวใหญ่ เว้นบรรทัดเยอะ อ่านง่ายกว่า
รีวิวจากคนใช้งานจริง
ถ้าเคยสั่งงาน เคยอ่านหน้านี้แล้วได้ประโยชน์ หรือมีข้อเสนอแนะ ฝากรีวิวไว้ได้เลย
ยังไม่มีรีวิวบนหน้านี้ ถ้าเคยใช้งานหรือมีข้อเสนอแนะ เขียนเป็นคนแรกได้เลย