INHOUDSOPGAWE:

Arduino Infinity Mirror (Bluetooth en klankreaktief): 9 stappe (met foto's)
Arduino Infinity Mirror (Bluetooth en klankreaktief): 9 stappe (met foto's)

Video: Arduino Infinity Mirror (Bluetooth en klankreaktief): 9 stappe (met foto's)

Video: Arduino Infinity Mirror (Bluetooth en klankreaktief): 9 stappe (met foto's)
Video: Arduino Infinity Mirror (Bluetooth & Sound Reactive) 2024, Julie
Anonim
Image
Image
Arduino Infinity Mirror (Bluetooth en klankreaktief)
Arduino Infinity Mirror (Bluetooth en klankreaktief)
Arduino Infinity Mirror (Bluetooth en klankreaktief)
Arduino Infinity Mirror (Bluetooth en klankreaktief)

Ek het 'n Infinity Mirror geskep vir 'n skoolprojek met Arduino wat u met u telefoon of tablet kan beheer met behulp van Bluetooth. Die spieël het ook 'n ingeboude mikrofoon wat klank/musiek opspoor en daarop reageer deur opvallende ligstrale op die maat van die musiek te genereer! Begin eenvoudig die app, maak verbinding met bluetooth en sien hoe die magie gebeur!

In hierdie instruksies sal ek jou wys hoe jy hierdie Infinity Mirror kan maak. So laat ons begin!

Stap 1: Versamel materiaal

Versamel materiaal
Versamel materiaal

Om hierdie oneindige spieël te maak, benodig u die volgende materiale:

1) Arduino Uno ($ 30)

U kan ook 'n ander tipe Arduino gebruik, maar dit is heeltemal aan u.

2) Mini broodbord of PCB ($ 5)

Ek het die broodbord vir prototipe gebruik en later alles aan 'n perfboard/strook gesoldeer.

3) WS2813 Digital 5050 RGB LED Strip - 144 LED's (1 meter) ($ 25)

U kan ook 'n ander LED -strook gebruik, maar maak seker dat alle LED's individueel aangespreek kan word. Maak ook seker dat die LED -strook 'n "ekstra" 5V -spanning vir elke meter LED's gee. Dit is omdat die spanning oor die strook daal en die stroom aan die begin aansienlik kan toeneem. (en miskien brand die begin van u LED -strook!) U kan hier meer hieroor lees: Powering Neopixels.

4) prototipe drade ($ 3)

Kleure maak in die algemeen nie saak nie, maar dit is baie handig om dit as verwysing vir jouself te hê. Ek het wit, swart, rooi, groen, geel, oranje en blou gebruik.

5) USB A tot B -kabel ($ 4)

Dit sal gebruik word om u Arduino -kode op te laai na die Arduino Uno -bord.

6) Mean Well Switching Power Supply - 5V 10A ($ 15)

Dit sal gebruik word om die LED -strook met eksterne 5V -spanning te ondersteun, omdat die Arduino self nie kragtig genoeg is om alle LED's te verlig nie. U kan ook kies om 'n muuradapter te gebruik, maar maak seker dat dit op 5V werk.

7) 230V -kragkabel met prop ($ 3)

Dit word gebruik om die skakelaar aan die 230V -aansluiting te koppel. Afhangende van waar u woon, kan die spanning van die stopcontact wissel. U benodig in elk geval 'n behoorlike kabel met 'n prop.

8) Bluetooth HC-06 module RF-ontvanger Slave 4-PIN ($ 8)

Hierdie module sal gebruik word om data vanaf u telefoon of tablet na die Arduino te stuur. Hierdie bluetooth -module kan slegs as 'n slaaf dien. Die standaard bluetooth -PIN / wagwoord is 1234.

9) Module 3-PIN vir klankopsporing ($ 3)

Hierdie module sal gebruik word vir die opsporing van klank, aangesien dit 'n ingeboude mikrofoon het. Stel die potensiometer in vir die gewenste hoeveelheid klank waarop 'n sein gegenereer word. U kan ook 'n ander klanksensor gebruik, maar dit is aan u.

10) 220 Ω Weerstand ($ 0,25)

Dit sal gebruik word om die spanning van die LED's te beheer. As u dit nie gebruik nie, word die LED's uiteindelik baie warm. 'N Weerstand van 220Ω het rooi, rooi en bruin strepe in die volgorde. Die laaste streep verteenwoordig die verdraagsaamheid. Goud beteken ± 5%. Meer inligting hier: 220 Ohm Weerstand.

11) 1000uF 16V elektrolitiese kondensator ($ 0,25)

Dit word gebruik om kapasitansie (energie) by u stroombaan te voeg en op te slaan. Meer inligting hier: Elektrolitiese kondensators.

Doos en spieël:

Dit is die materiale en afmetings waarmee ek my boks gemaak het. U kan ook kies om eerder 'n raam of voorafgemaakte boks te koop wat groot genoeg is om 'n eenrigtingweerspieëlende spieël, normale spieël, LED's en elektronika daarin te pas. Ek beveel slegs aan om dit self te bou as u die regte gereedskap en materiaal het.

12) Glas 25 x 25 cm (3 mm dik) ($ 5)

Die glas word gebruik as 'n eenrigting-reflektiewe spieël, waarvoor u die eenrigting-spieëlvensterfilm nodig het (sien 13). U kan ook kies om 'n eenrigting spieël/semi-deursigtige spieël te koop, wat groot genoeg is om in u boks te pas. U kan self glas sny met 'n glasskêr (sien 22), maar ek raai u aan om spesialiste te raadpleeg om dit vir u te doen, of selfs beter om glas met die regte afmetings te koop.

13) Gekleurde eenrigting spieël venster film 30 x 30 cm ($ 5)

Om 'n eenrigtingspieël te herhaal, benodig u glas en 'n rol getinte eenrigting-spieëlvensterfilm wat met water en seep op die glas aangebring word (sien 29). Die rede waarom dit effens groter is as die glas, is omdat dit mettertyd krimp. As u kies om eerder 'n eenrigtingspieël te koop, soos hierbo genoem, sal u dit nie nodig hê nie.

14) Spieël 25 x 25 cm (3 mm dik) ($ 5)

Net 'n gewone spieël, soos die in die badkamer. Dit sal saam met die eenrigtingspieël gebruik word om die 'oneindige' effek te skep.

15) 2x dik houtlat 25 x 10 x 2 cm ($ 2)

Twee houtlatte aan die bokant en onderkant van die boks.

16) 2x dik houtlat 27 x 10 x 2 cm ($ 2)

Twee houtlatte aan die regter- en linkerkant van die boks.

17) 2x dun houtlat 25 x 2,5 x 0,5 cm ($ 1)

Twee houtlatte aan die bokant en onderkant van die binnekant van die boks (waarop die spieëls sal rus en waarop die LED's geplak word).

18) 2x dun houtlat 24 x 2,5 x 0,5 cm ($ 1)

Twee houtlatte aan die regter- en linkerkant van die binnekant van die boks (waarop die spieëls sal rus en waarop die LED's geplak word).

19) Swart verfblikkie/spuit

Ek het dit gebruik om my boks swart te verf sodat dit meer inpas by die donker tema.

Gereedskap:

Dit is die gereedskap wat u benodig om die boks sowel as die spieël te skep:

20) Meetband ($ 3)

Word natuurlik gebruik om u boks te meet. Meer inligting hier: Hoe om 'n maatband te lees.

21) Meet vierkant ($ 5)

Word ook gebruik om u boks/materiaal te meet. Nie regtig nodig nie, maar dit kan baie handig wees.

22) Draadsnyer/stripper ($ 5)

Word gebruik om u drade af te sny en te sny. As alternatief kan u ook 'n kombuismes of 'n stanley -mes gebruik. Meer inligting hier: How to Strip Wire.

23) Glas snyer ($ 5)

Word gebruik om glas en spieëls te sny. As alternatief kan u 'n diamant gebruik, maar ek beveel dit nie aan nie. Meer inligting hier: Hoe om gebrandskilderde glas te sny.

24) Skroewedraaier/boor ($ 2)

Word gebruik om skroewe aan te dryf en gate te boor. Meer inligting hier: Hoe om 'n houtskroef te bestuur.

25) Hamer ($ 5)

Word gebruik om naels te ry. Meer inligting hier: Hoe om 'n hamer veilig te gebruik.

26) Houtgom ($ 5)

As skroewe of spykers nie goed genoeg is nie, kan u ook houtgom aanwend om dele bymekaar te hou. Meer inligting hier: Hoe om hout aanmekaar te plak.

27) Saag ($ 5)

Word gebruik om hout te saag. Meer inligting hier: Hoe om hout met 'n handsaag te sien.

28) Spykers ($ 3)

Word gebruik om dele bymekaar te hou, in ons geval permanent.

29) Skroewe ($ 3)

Word ook gebruik om dele bymekaar te hou, maar deur skroewe in plaas van spykers te gebruik, kan u die dele maklik ontkoppel indien nodig.

30) Water en seep

Word gebruik om die getinte eenrigting-spieëlvensterfilm op die glas aan te bring. En word ook gebruik vir die skoonmaak van die oneindige spieël. As u wil weet hoe u die vensterfilm moet installeer, kan u hierdie tutoriaal volg: Hoe om vensterfilm te installeer.

31) Skuurpapier ($ 1)

Word gebruik om die skerp rande van die glas en hout te verfyn.

Soldeergereedskap (opsioneel):

32) Soldeerbout ($ 15)

Opsioneel as u kies om alles saam te soldeer in plaas daarvan om dit op die broodbord te laat. As u wil weet hoe om te soldeer, kan u hierdie tutoriaal volg: Hoe om elektronika te soldeer.

33) Soldeerblik 0.6mm - 100g ($ 5.50)

Word gebruik om die drade saam te soldeer.

34) Losdraad - 1 mm 1,5 m ($ 1,50)

Word gebruik vir die soldeer van die drade, as u per ongeluk 'n fout gemaak het.

35) Krimpende buise ($ 2)

Word gebruik om gesoldeerde drade veilig bymekaar te hou.

36) 1x 3 -pins hoofkop vroulike ($ 0,10)

Dit is nie regtig nodig nie, maar dit kan handig wees as u nie die klanksensor aan die drade wil soldeer nie.

37) 1x 4 -pins koptekst vrou ($ 0,10)

Nie regtig nodig nie, maar dit kan handig wees as u nie die Bluetooth -module direk aan die drade wil soldeer nie.

Stap 2: Breadboard -verbindings

Image
Image
Breadboard -verbindings
Breadboard -verbindings
Breadboard -verbindings
Breadboard -verbindings

As u eers die materiaal saamgestel het, is dit tyd om u eerste prototipe te maak deur 'n broodbord te gebruik. Die broodbord het altesaam vier kolomme. Die eerste twee en laaste twee blou en rooi kolomme deel 'n verbinding vertikaal, wat die +5V (rooi) en grond/GND (blou) verbindings verteenwoordig. Die twee kolomme in die middel is waar u hoofkomponente geplaas sal word. U kan hier meer leer oor broodborde.

Dus, wat u wil doen, is om u Arduino aan die broodbord te koppel deur 'n paar prototipe drade te gebruik. Soos ek vroeër genoem het, maak kleure nie saak nie, maar dit is 'n nuttige verwysing vir jouself. Ek het byvoorbeeld die rooi drade gebruik om die +5V voor te stel en die wit drade om die GND voor te stel. Dit maak ook nie saak waar jy jou penne plaas nie, solank hulle in dieselfde kring bly.

Vervolgens wil u u LED -strook aan die broodbord koppel. U sal sien dat dit 3-6 drade het, afhangende van watter tipe u het. Wit verteenwoordig GND/min-invoer, rooi verteenwoordig +5V-invoer, groen verteenwoordig die data-invoer-PIN en blou verteenwoordig die rugsteundata-invoer-PIN (moenie koppel tensy die LED gekoppel is nie). Koppel die eksterne 5V -krag aan en koppel dit aan die LED -strook. Moenie vergeet om ook die weerstand en die kondensator aan te sluit soos op die foto hierbo getoon nie, anders kan u u LED's verbrand!

Uiteindelik wil u u bluetooth -module en klankdeteksiesensor aan die broodbord koppel. Wys die klankopsporingsensor aan pin A0 (analoog). Wat die bluetooth -module betref, sal u agterkom dat dit een RXD en een TXD -pen het. Dit is vir die stuur en ontvang van seine. OPMERKING: verbind die TXD -pen van die module met die RXD -pen van die Arduino en die RXD -pen van die module met die TXD -pen van die Arduino. Nie aan dieselfde penne nie!

Stap 3: Kodeer die Arduino

Kodeer die Arduino
Kodeer die Arduino

Die volgende stap is dus om die Arduino te kodeer. Hiervoor benodig u die Arduino IDE -sagteware, wat u hier kan aflaai. Nadat u die IDE afgelaai het, maak 'n nuwe dokument oop en kopieer en plak die volgende kode in die projekvenster:

#insluit

// Spelde wat met die Arduino verbind is

const int PIN = 6; // Die invoerpen van die LED -strook int NUMPIXELS = 144; // Die aantal pixels wat sal aansteek const int SOUNDSENSOR = A0; // Die invoerpen van die klanksensor

int ButtonState = 0; // Gee 'n opmerking wat aan 'n knoppie in die Bluetooth -app toegewys is

int volume = 0; // Gee aan dat daar nagegaan word of daar 'n sein in die mikrofoon is of nie

// Kleur veranderlikes

booleaanse PrimBlue = vals; booleaanse PrimGreen = vals; booleaanse PrimRed = vals; booleaanse PrimWhite = vals; booleaanse PrimGeel = vals; boolean PrimOrange = false; booleaanse PrimPink = vals; boolean PrimPurple = false;

// Lig en klank veranderlikes

booleaanse SoundDetect = vals; boolean FullLight = false;

Adafruit_NeoPixel strip = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

ongeldige opstelling () {

pinMode (SOUNDSENSOR, INVOER); // Invoer van die klanksensor pinMode (PIN, UITGANG); // Invoer van die LED -strook

Serial.begin (9600);

strip.setPixelColor (0, 0, 0, 0); strip.setBrightness (0); strip.begin (); // Dit initialiseer die NeoPixel biblioteek strip.show ();

}

leemte -lus () {

// Definieer die hoeveelheid helderheid volgens die byte -helderheid van die skuifbalk = analogRead (A0)/4; Serial.println (helderheid); as (Serial.available ()> 0) {ButtonState = Serial.read (); }

// Aktiveer of deaktiveer LED- en klankopsporing

as (FullLight == 1 && SoundDetect == 0) {strip.setBrightness (ButtonState); strip.show (); } anders as (FullLight == 0 && SoundDetect == 0) {strip.setBrightness (0); strip.show (); } anders as (FullLight == 0 && SoundDetect == 1) {strip.setBrightness (helderheid); strip.show (); } anders as (FullLight == 1 && SoundDetect == 1) {strip.setBrightness (0); strip.show (); }

////////////////////////////// LED switch //////////////////////// ////

as (ButtonState == 'a') {primaryColors (); FullLight = 1; SoundDetect = 0; }

as (ButtonState == 'b') {

FullLight = 0; SoundDetect = 0; }

////////////////////////////// Klankopsporing skakelaar //////////////// /////

as (ButtonState == 'c') {primaryColors (); SoundDetect = 1; FullLight = 0; }

as (ButtonState == 'd') {

SoundDetect = 0; FullLight = 0; }

////////////////////////////// Primêre kleure ////////////////////// ////

as (ButtonState == '1') {primaryColors (); PrimBlue = 0; PrimGreen = 0; PrimRed = 1; PrimWhite = 0; PrimGeel = 0; PrimOrange = 0; PrimPink = 0; PrimPurple = 0; }

as (ButtonState == '2') {

primêre kleure (); PrimGreen = 1; PrimBlue = 0; PrimRed = 0; PrimWhite = 0; PrimGeel = 0; PrimOrange = 0; PrimPink = 0; PrimPurple = 0; }

as (ButtonState == '3') {

primêre kleure (); PrimRed = 0; PrimBlue = 1; PrimGreen = 0; PrimWhite = 0; PrimGeel = 0; PrimOrange = 0; PrimPink = 0; PrimPurple = 0; } if (ButtonState == '4') {primaryColors (); PrimRed = 0; PrimBlue = 0; PrimGreen = 0; PrimWhite = 1; PrimGeel = 0; PrimOrange = 0; PrimPink = 0; PrimPurple = 0; } if (ButtonState == '5') {primaryColors (); PrimRed = 0; PrimBlue = 0; PrimGreen = 0; PrimWhite = 0; PrimGeel = 1; PrimOrange = 0; PrimPink = 0; PrimPurple = 0; } if (ButtonState == '6') {primaryColors (); PrimRed = 0; PrimBlue = 0; PrimGreen = 0; PrimWhite = 0; PrimGeel = 0; PrimOrange = 1; PrimPink = 0; PrimPurple = 0; } if (ButtonState == '7') {primaryColors (); PrimRed = 0; PrimBlue = 0; PrimGreen = 0; PrimWhite = 0; PrimGeel = 0; PrimOrange = 0; PrimPink = 1; PrimPurple = 0; } if (ButtonState == '8') {primaryColors (); PrimRed = 0; PrimBlue = 0; PrimGreen = 0; PrimWhite = 0; PrimGeel = 0; PrimOrange = 0; PrimPink = 0; PrimPurple = 1; }}

nietig primêre kleure () {

vir (int i = 0; i <NUMPIXELS; i ++) {if (PrimBlue == 1) {strip.setPixelColor (i, 0, 0, 255); } anders as (PrimGreen == 1) {strip.setPixelColor (i, 0, 255, 0); } anders as (PrimRed == 1) {strip.setPixelColor (i, 255, 0, 0); } anders as (PrimWhite == 1) {strip.setPixelColor (i, 255, 255, 255); } anders as (PrimYellow == 1) {strip.setPixelColor (i, 255, 255, 0); } anders as (PrimOrange == 1) {strip.setPixelColor (i, 255, 102, 0); } anders as (PrimPink == 1) {strip.setPixelColor (i, 255, 0, 255); } anders as (PrimPurple == 1) {strip.setPixelColor (i, 102, 0, 204); } anders {strip.setPixelColor (i, 255, 255, 255); }} strip.show (); }

As dit u vra om die Adafruit NeoPixel -biblioteek te installeer, doen dit deur na Skets> Invoerbiblioteek> Adafruit NeoPixel te gaan.

Stap 4: Bou die Bluetooth -app

Image
Image
Bou die boks
Bou die boks

Kom ons gaan nou na die interessante deel om u app te bou! Ek het besluit om 'n derdeparty-sagteware, MIT App Inventor 2, te gebruik om dit te doen. As u die projeklêers (.aia) wil aflaai en die app wil verander, kan u dit hieronder aflaai. Maar u kan die app self (.apk) ook dadelik aflaai sonder om iets te kodeer. U hoef dit slegs op u toestel te installeer.

Stap 5: Bou die boks

Bou die boks
Bou die boks
Bou die boks
Bou die boks
Bou die boks
Bou die boks

In hierdie stap bou ons die boks/raam vir die oneindige spieël.

Die buitenste raam

Sny eers die dik lat vir die buitenste raam (sien foto's hierbo). U benodig twee stukke 27 cm lank (bo en onder) en twee stukke lengte 25 cm (links en regs). Spy dit nou vas deur spykers aan die hoeke van die boks te ry (4 aan elke kant), maar maak seker dat die rande perfek pas. U kan ook kies om dit aan mekaar te plak, maar dit is aan u.

Die innerlike raam

Sny dan die dun lat vir die binneste raam (sien weer foto's hierbo). U benodig twee stukke lengte 25 cm (bo en onder) en twee stukke lengte 24 cm (links en regs). Nou wil u dit ongeveer 0,5 cm onder die bokant van die buitenste raam spyker deur 2 spykers aan elke kant te gebruik. Ek het ook houtgom hier aangebring om dit stewiger te maak. LET WEL: maak seker dat die eenrigtingspieël perfek in die raam pas!

Boor die mikrofoongat

Aangesien die mikrofoon 'n sensitiewe voorwerp is, moet dit nie bedek wees nie. Daarom het ek 'n gat in die bokant van die raam geboor waaruit die mikrofoonkop uitsteek. Moenie die gat te groot maak nie, want u wil nie hê dat u mikrofoon heeltemal uit die raam moet val nie.

Verf jou raam

Ek het besluit om my raam amper mat swart te verf om 'n donker, geheimsinnige effek te gee. As u ook besluit om dit te verf, moet u seker maak dat daar geen dik kolle verf op die raam bly nie. Om dit te voorkom, moet u die raam saggies met 'n klein tot medium kwas verf. Boonop kan u dit vir die tweede keer verf as dit nie genoeg bedek is nie. Laat dit vir 'n dag of so droog word.

Stap 6: Soldeer die elektronika aan 'n PCB

Image
Image
Soldeer die elektronika aan 'n PCB
Soldeer die elektronika aan 'n PCB
Soldeer die elektronika aan 'n PCB
Soldeer die elektronika aan 'n PCB

In hierdie stap sal ons die elektronika soldeer aan 'n PCB wat ons later op die agterkant van ons spieël sal installeer. Soldeer is nie verpligtend nie, maar ek beveel dit sterk aan om die elektronika veilig te hou. Ek het alles stap vir stap per 'komponent' aan die rooster gesoldeer om foute te voorkom. Dus het ek eers die klankmodule aan die bord gesoldeer, daarna die bluetooth -module en laastens die LED -stroke. Ek beveel aan dat daar 'n leë spasie is tussen die komponente wat nie direk aan mekaar kan raak nie, soos die +5V -ingangskabel en die GND -ingangskabel (sien foto's hierbo).

Sodra u komponente aan die bord gesoldeer is, begin brugverbindings deur 'n blik tussen die komponente onder die bord aan te bring. U kan ook 'n paar drade strook en dit aan die komponente soldeer om 'n brugverbinding te maak.

Nou wil u die stroombaan toets deur eenvoudig die drade aan die Arduino te koppel. Maak seker dat u ook die kragtoevoer gekoppel het! As die LED's suksesvol aanskakel, is dit goed gedoen! As hulle egter nie aanskakel nie, moet u die kring nogmaals kontroleer en soek na foutiewe verbindings.

Stap 7: Installeer die elektronika op die agterkant

Installeer die elektronika op die agterkant
Installeer die elektronika op die agterkant

Die volgende stap is om die elektronika op 'n stuk hout te installeer, wat ons ook aan die agterkant van die spieël sal gebruik. Ek het die elektronika met 'n paar skroewe aan die bord vasgemaak en twee blokke aan die regter- en linkerkant van die agterkant vasgeplak wat gebruik word om die agterkant van die boks aan die boks self te skroef.

Stap 8: Monteer die spieëls met die boks

Monteer die spieëls met die boks
Monteer die spieëls met die boks
Monteer die spieëls met die boks
Monteer die spieëls met die boks
Monteer die spieëls met die boks
Monteer die spieëls met die boks

Dit is nou tyd om die spieëls te monteer, die LED's aan die raam te plak en die sensor vir klankopsporing te plaas.

Eenrigting spieël

Die eenrigtingspieël word op die raam self geplaas, met die getinte kant na onder na die spieël en LED's. Om hierdie spieël self te maak, benodig u die glasplaat en die getinte vensterfilm. Sny eers die vensterfilm in die regte grootte, maar laat ongeveer 2-5 cm ekstra ruimte aan elke kant. Vervolgens wil u die venster heeltemal skoonmaak en alle stofreste verwyder. Bedek dan die venster met 'n bietjie water en seep en verwyder die plastiek versigtig uit die vensterfilm (u kan tape aan elke kant plaas om dit maklik te verwyder). Nou wil u ook die klewerige kant van die vensterfilm bedek met water en seep om te verhoed dat dit by homself vassit. Al wat u nou hoef te doen, is om dit bo -op die glas te plaas en dit styf te vee (sien foto's hierbo). Laat dit ongeveer 'n dag droog word en verwyder die oorblywende vensterfilm.

Plak die LED's aan die boks

Die volgende stap is om die LED's aan die boks te plak, wat gedoen kan word deur die klewerige papier te verwyder. Ek beveel ook aan om 'n bietjie vinnige gom aan die agterkant van die strook aan te bring om te verhoed dat dit loskom.

Plaas die spieëls en maak dit klaar

Die laaste stap is om beide die eenrigting spieël en die normale spieël op hul plek te plaas. Die normale spieël gaan agter die LED-strook en die eenrigtingspieël gaan voor. Plak dit vas met 'n paar vinnige gom en skroef die agterplaat met die elektronika aan die agterkant van die boks vas. Plaas die klankopsporingsensor, verbind al die drade en voila, u is klaar!

Stap 9: Toets u oneindige spieël

Al wat u nou hoef te doen is om te toets of alles werk. En dit is dit! Nou het u u eie Bluetooth -beheerbare en klankreaktiewe oneindige spieël gebou!: D

Moenie twyfel om in die kommentaar afdeling te vra as u enige vrae het nie.

Dankie en geniet dit!

Aanbeveel: