Sommario:
- Passaggio 1: domande frequenti
- Passaggio 2: preparazione
- Passaggio 3: parti
- Passaggio 4: saldalo! Parte 1
- Passaggio 5: saldalo! Parte 2
- Passaggio 6: saldalo! Parte 3
- Passaggio 7: saldalo! Parte 4
- Passaggio 8: saldalo! Parte 5
- Passaggio 9: saldalo! Parte 6
- Passaggio 10: provalo
- Passaggio 11: usalo
- Passaggio 12: download
Video: Kit TV-B-Gone: 12 passaggi (con immagini)
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:06
Stanco di tutti quei televisori LCD ovunque?Vuoi una pausa dalla pubblicità mentre stai cercando di mangiare?Vuoi fare zapping sugli schermi dall'altra parte della strada?Il kit TV-B-Gone è ciò di cui hai bisogno! Questa versione ad altissima potenza del popolare TV-B-Gone è divertente da realizzare e ancora più divertente da usare. Costruita in collaborazione con Mitch Altman (l'inventore del TV-B-Gone - https://www.tvbgone.com) questo kit è un ottimo modo per costruire qualcosa di veramente utile! Guardalo in uso!
Passaggio 1: domande frequenti
Cos'è un kit TV-B-Gone?TV-B-Gone https://www.tvbgone.com/ è un telecomando "universale", è fondamentalmente come un telecomando ma con solo il pulsante "Power". Questa è una versione in kit di quel prodotto. In che modo sono correlati il kit e il prodotto TV-B-Gone originale? Mitch Altman https://www.pbs.org/mediashift/2006/04/digging_deepertvbgone_device_s.html (inventore del TV- B-Gone) e la sua azienda Cornfield Electronics https://www.cornfieldelectronics.com/ hanno collaborato con me (Adafruit Industries) per sviluppare una versione in kit del TV-B-Gone. Mitch pensa che i kit open source siano fantastici! Perché dovrei comprare un kit se posso solo comprare un TV-B-Gone ready made? Questo kit serve per imparare a saldare e forse anche un po' su come sono progettati i telecomandi. La versione del kit ha anche 2 batterie AA e 4 LED IR ad alta potenza per consentire distanze molto più lunghe rispetto al prodotto portachiavi, più di 100 piedi! È anche più facile hackerare e adattare per altri progetti. Tuttavia, il kit ha meno codici (quindi può capitare di trovare una TV di tanto in tanto che non risponde), è più grande e più pesante e richiede di assemblarlo. Ti suggerisco di prenderne uno di ciascuno! Questo kit funziona su tutti i televisori? Abbiamo scelto i 46 codici più comuni per i televisori nordamericani/asiatici da programmare nel kit. Tuttavia, non è stato possibile includere tutti i codici. I test sul campo hanno dimostrato che quasi tutti i televisori che abbiamo incontrato si spegnevano, anche i più recenti televisori a schermo piatto LCD e al plasma! Nota che questo kit non funzionerà con segnali LED, monitor di computer (che non sono anche televisori) e display segni che non Non ho una porta per il controllo remoto. Cosa intendi per Nord America/Asia? Questo kit funziona con i televisori europei? Un gran numero di nuovi televisori europei funzionerà con il kit TV-B-Gone, ma non è così probabile. Ad esempio, invece del 90% di successo, è più simile al 50% Quanto devo essere vicino affinché il kit TV-B-Gone funzioni?Più vicino è meglio è, ma abbiamo scoperto che se hai una mira abbastanza buona, puoi essere a 100' (30 m) o più lontano. Non riesco a spegnere la TV da più di 30 piedi di distanza, cosa c'è che non va? Innanzitutto, esegui il test per assicurarti che tutti e 4 i LED IR si accendano. In secondo luogo, assicurati hai nuove batterie alcaline installate. Terzo, cerca di mirare nel miglior modo possibile al ricevitore IR, di solito una piccola piastra di plastica scura sulla parte anteriore del televisore. Infine, prova molti televisori diversi. Alcuni televisori semplicemente non rispondono bene da lontano come altri. Voglio più portata! Come posso rendere il kit più potente? Assicurati di avere batterie alcaline nuove. Funzionano meglio delle ricaricabili Puoi sostituire il portabatterie da 2 AA con un portabatterie da 3 AA. Questo darà prestazioni ancora migliori! L'utilizzo di batterie a celle C o D garantisce un'autonomia maggiore ma non aumenta la potenza. Non utilizzare batterie da 9 V o più di 3 batterie alcaline da 1,5 V, è possibile danneggiare in modo permanente il kit!
Passaggio 2: preparazione
TutorialScopri come saldare con tonnellate di tutorial!https://www.ladyada.net/learn/soldering/index.htmlNon dimenticare di imparare a usare anche il tuo multimetro!https://www.ladyada.net/learn/ multimeter/index.htmlStrumentiSono necessari alcuni strumenti per il montaggio. Nessuno di questi strumenti è incluso. Se non li hai, ora sarebbe un buon momento per prenderli in prestito o acquistarli. Sono molto molto utili quando si montano/fissano/modificano dispositivi elettronici! Fornisco i link per acquistarli, ma ovviamente dovresti ottenerli dove è più conveniente/economico. Molte di queste parti sono disponibili in un posto come Radio Shack o altri negozi di elettronica fai-da-te (di qualità superiore). Consiglio un set di strumenti elettronici "di base" per questo kit, che descrivo qui. https://www.ladyada.net/ library/equipt/kits.html#basicSaldatore. Uno con controllo della temperatura e un supporto è il migliore. Una punta conica o piccola "cacciavite" è buona, quasi tutti i ferri sono dotati di uno di questi. Un ferro di bassa qualità (ehm, modello da $ 10 da radioshack) può causare più problemi del suo valore! Non utilizzare un saldatore "ColdHeat", non sono adatti per lavori elettronici delicati e possono danneggiare il kit (vedi qui) https://www.epemag.wimborne.co.uk/cold-soldering2.htmSolder. Nucleo di colofonia, 60/40. Una buona saldatura è una buona cosa. Una cattiva saldatura porta a ponti e giunti di saldatura freddi che possono essere difficili da trovare. Non comprare una piccola quantità, finirai quando meno te lo aspetti. Una bobina da mezzo chilo è un minimo. Multimetro/oscilloscopio. Un tester è utile per controllare le tensioni e la continuità. Frese a filo/diagonali. Indispensabile per tagliare i cavi vicino al PCB. Strumento dissaldante. Se sei incline a saldare parti in modo errato. "Mani a portata di mano" con lente d'ingrandimento. Non è assolutamente necessario, ma renderà le cose molto più veloci. Dai un'occhiata ai miei consigli e dove acquistare. https://www.ladyada.net/library/equipt/kits.html#basicBuona luce. Più importante di quanto pensi.
Passaggio 3: parti
Assicurati che il tuo kit sia dotato delle seguenti parti. A volte commettiamo errori, quindi ricontrolla tutto e invia un'e-mail a [email protected] se hai bisogno di sostituzioni! Nome: IC1 Descrizione: Microcontrollore (preprogrammato se acquistato in un kit) Parte n.: ATTINY85V- 10-PU https://www.atmel.com/dyn/resources/prod_documents/doc2586.pdfDistributore: Mouser, Digikey (non programmato, ovviamente)Qtà: 1https://www.mouser.com/search/ProductDetail.aspx? R=ATTINY85V-10PUvirtualkey55650000virtualkey556-ATTINY85V10PUhttps://search.digikey.com/scripts/DkSearch/dksus.dll?Detail?name=ATTINY85V-10PU-NDName: IC1'Descrizione: presa a 8 pinParte: Distributore: Mouser, DigikeyQty 1https://www.mouser.com/search/ProductDetail.aspx?R=1-390261-2virtualkey57100000virtualkey571-1-390261-2https://search.digikey.com/scripts/DkSearch/dksus.dll?Detail?name= 3M5473-NDNome: XTL1Descrizione: Oscillatore ceramico da 8,00 MHz. Potrebbe anche essere blu. Parte #: ZTT-8.00MT o equivalente https://www.ecsxtal.com/store/pdf/ZTT.pdfDistributore: Digikey, MouserQty: 1https://search.digikey.com/scripts/DkSearch /dksus.dll?Detail?name=X905-NDhttps://www.mouser.com/search/ProductDetail.aspx?R=ZTT-8.00MTvirtualkey59070000virtualkey520-ZTT800MTNome: C2Descrizione: condensatore 100uF/10VParte: GenericDistributor: Digikey, MouserQty: 1https://www.digikey.com/scripts/DkSearch/dksus.dll?Detail?name=P963-NDhttps://www.mouser.com/search/ProductDetail.aspx?R=140-XRL10V100-RCvirtualkey21980000virtualkey140-XRL10V100- RCName: C1Descrizione: Condensatore ceramico 0.1uF (104)Parte #: GenericDistributor: Digikey, MouserQty: 1https://www.digikey.com/scripts/DkSearch/dksus.dll?Detail?name=BC1160CT-NDhttps://www. mouser.com/search/ProductDetail.aspx?R=C410C104K5R5TA7200virtualkey64600000virtualkey80-C410C104K5R-TRNome: R1-R4Descrizione: Resistenza al 5% da 47 ohm 1/4W (giallo viola nero oro)Parte #: Distributore generico:Qtà: 4Nome: R5Descrizione: Resistenza al 5% da 1,0Kohm 1/4W (marrone nero rosso oro)Parte #:Distributore generico:Qtà: 1Nome: LED2, LED3Descrizione: LED IR a fascio stretto. Hanno una tinta bluastra..mouser.com/search/ProductDetail.aspx?R=EL-IR333-Avirtualkey63810000virtualkey638-IR333-ANome: LED1, LED4Descrizione: LED IR a fascio largo N. parte: Everlight IR333C/H0/L10 https://www.everlight.com/pdf /IR333C-H0-L10.pdfDistributore: MouserQty: 2https://www.mouser.com/search/ProductDetail.aspx?R=IR333C%2fH0%2fL10virtualkey63810000virtualkey638-IR333C%2fH0%2fL10Name: LED5Descrizioneparte n.: 3mm, MouserQty: 1https://www.digikey.com/scripts/DkSearch/dksus.dll?Detail?name=160-1710-NDhttps://www.mouser.com/search/ProductDetail.aspx?R=LTL-1CHGvirtualkey57820000virtualkey859 -LTL-1CHGNome: SW1Descrizione: Pulsante interruttore tattile da 6 mmParte #: Omron B3F-1000 (o equivalente) https://oeiwcsnts1.omron.com/ocb_pdfcatal.nsf/PDFLookupByUniqueID/E295D1F4221B13C186256FC70058AC0A/B3FFile05 df?OpenElementDistributor: Digikey, MouserQty: 1https://www.digikey.com/scripts/DkSearch/dksus.dll?Detail?name=SW400-NDhttps://www.mouser.com/search/ProductDetail.aspx?R= B3F-1000virtualkey65300000virtualkey653-B3F-1000Nome: Q1 Q2 Q3 Q4Descrizione: Transistor NPN (TO-92) compatibile con pin con 2N3904Parte #: PN2222 https://www.fairchildsemi.com/ds/PN%2FPN2222.pdfDistributore: Mouser, DigikeyQty: 4https://www.mouser.com/Search/ProductDetail.aspx?qs=UMEuL5FsraBJOIjLOc%2ftCA%3d%3dhttps://search.digikey.com/scripts/DkSearch/dksus.dll?Detail?name=PN2222AFS-NDName: JP2Descrizione: header box a 10 pinParte #:Distributore: Mouser, DigikeyQty: 1https://www.mouser.com/search/ProductDetail.aspx?R=30310-6002HBvirtualkey51750000virtualkey517-30310-6002https://www.digikey.com/scripts /DkSearch/dksus.dll?Detail?name=HRP10H-NDName: BATTDescrizione: 2 x portabatterie AACodice: GenericDistributor: Digikey, MouserQty: 1https://www.digikey.com/scripts/DkSearch/dksus.dll?Detail? nome=2463K-NDhttps://w ww.mouser.com/search/ProductDetail.aspx?R=12BH321A-GRvirtualkey56100000virtualkey12BH321A-GRNome: PCBDescrizione: CircuitoParte n.:Distributore: Adafruit IndustriesQtà: 1https://www.adafruit.com/v1.1 schema Se si dispone di uno schema nero PCB con v1.1 su di essohttps://www.ladyada.net/images/tvbgone/tvbgone11.pngSi noti che il microcontrollore deve essere programmato con il firmware v1.1. Qualsiasi transistor NPN compatibile con i pin con il 3904 dovrebbe essere OK. Utilizzare LED IR da 940 nm. Schema v1.0Se hai un PCB verde con v1.0 su di essohttps://www.ladyada.net/images/tvbgone/schematic.jpgNota che il microcontrollore deve essere programmato con il firmware. Qualsiasi transistor NPN con pin compatibile con il 3904 dovrebbe essere OK. Usa LED IR da 940 nm.
Passaggio 4: saldalo! Parte 1
Preparati… Il primo passo è saldare il kit insieme. Se non hai mai saldato prima, controlla la pagina Preparazione per tutorial e altro. Vai!Controlla il kit con l'elenco delle parti per verificare di avere tutte le parti necessarie Metti il circuito stampato in una morsa o un supporto per scheda, riscalda il tuo saldatore e assicurati di essere pronto per partire! La prima parte che andremo ad assemblare è il pulsante. Il bottone è una parte simmetrica quindi può andare in due modi. Allineare le gambe di metallo con i fori nel circuito e agganciarlo. Il pulsante dovrebbe essere piatto contro il circuito. Usando il saldatore, riscaldare una gamba del pulsante e la saldatura per fare una bella saldatura giunto. Ripetere per tutte e quattro le gambe. I punti di saldatura devono essere puliti e lucidi. Vedi i tutorial per l'aiuto alla saldatura se non riesci a farlo bene. https://www.ladyada.net/learn/soldering/index.html Il prossimo è il resistore da 1,0 kilo ohm R5. Questa è la parte a strisce marrone-nero-rosso. Questo resistore imposta la luminosità del piccolo LED indicatore. I resistori sono simmetrici, quindi può andare in entrambi i modi. Piegare le gambe in modo che assomigli a una graffetta e inserirla nella posizione R5 come mostrato. Quindi piegare leggermente le gambe in modo che quando si capovolge il PCB la parte non cada.
Passaggio 5: saldalo! Parte 2
saldare ciascuna gamba del resistore Utilizzare i tronchesi diagonali per ritagliare i piedini del resistore in modo che rimangano solo i punti di saldatura. Ora è il momento di posizionare il piccolo indicatore LED LED5. I LED non sono simmetrici e devono essere posizionati correttamente per funzionare. Noterai che una gamba del LED è più lunga dell'altra. Questa è la gamba positiva. La gamba positiva entra nel buco con un + accanto. Nella foto mostrata, è il foro sinistro. Inserire il LED nella posizione corretta e piegare i cavi verso l'esterno per evitare che cadano quando si capovolge il PCB. Capovolgere il PCB e saldare entrambi i cavi del LED. Tagliare entrambi i cavi dal LED.
Passaggio 6: saldalo! Parte 3
La parte successiva è il condensatore ceramico C1. I condensatori ceramici sono simmetrici in modo che possa andare in entrambi i modi. Saldare e agganciare la parte del condensatore ceramico Quindi, posizionare 2 componenti. L'oscillatore in ceramica e la presa a 8 pin. L'oscillatore ha 3 pin ed è simmetrico. L'oscillatore è il cronometro del microcontrollore, assicurandosi che svolga le sue funzioni alla velocità corretta. La presa serve per proteggere il chip e facilitarne l'inserimento e la rimozione. La presa ha una piccola tacca a un'estremità. Quella tacca dovrebbe corrispondere a quella nella foto serigrafata sul circuito. Questo ti aiuterà a posizionare correttamente il microcontrollore in un secondo momento. Potrebbe essere necessario saldare un pin della presa tenendolo fermo con un dito (o del nastro adesivo) poiché le gambe non sono abbastanza lunghe da essere piegate mentre sono in posizione. Saldare il resto dei punti, quindi accorciare le gambe del oscillatore. Quindi afferrare il supporto della batteria e tagliare i cavi corti, fino a circa 1,5 (4 cm) di lunghezza Spelare le estremità del cavo in modo che ci sia una breve sezione senza isolamento
Passaggio 7: saldalo! Parte 4
Usa il tuo saldatore per "stagnare" il filo, fondendoci dentro la saldatura per evitare che si sfilacci. Inserisci i fili nel PCB in modo che il filo rosso vada nel foro + e il filo nero nel foro -. Salda i fili, quindi tagliali se sono troppo lunghi. Inserire con cautela il microcontrollore nella presa. Assicurati che il puntino (e il triangolo) siano alla fine con la tacca nella presa. In questa foto, il punto è a sinistra. Il microcontrollore è il dispositivo che memorizza tutti i codici e accende e spegne i LED secondo un programma. Prova subito il kit inserendo due buone batterie AA nel supporto e premendo il pulsante. La spia verde dovrebbe lampeggiare per indicare che il microcontrollore funziona correttamente. Se non ottieni una luce lampeggiante, controlla le batterie, assicurati che l'indicatore LED sia correttamente acceso e che il chip sia nel modo giusto. https://blip.tv/file/get/Ladyada-tvBGoneKitTest1692.flvUna volta verificato che funziona, rimuovere le batterie. Quindi posizionare le 4 resistenze da 47 ohm, R1 R2 R3 R4. Queste sono le parti che determinano la luminosità dei LED IR. Saldare e agganciare tutti e 4 i resistori.
Passaggio 8: saldalo! Parte 5
Il prossimo è il condensatore elettrolitico da 100uF. È polarizzato quindi assicurati che vada nel modo giusto. Il cavo lungo è positivo, e va nel foro segnato con un +, a destra nella foto Piega il condensatore in modo che si trovi sopra le resistenze, questo lo farà sporgere di meno. Poi ci sono i quattro transistor Q1 Q2 Q3 e Q4. Questi sono i dispositivi che accendono e spengono i LED IR ad alta potenza. Il microcontrollore non ha la capacità di fornire molta potenza direttamente ai LED, quindi questi transistor lo aiutano. I transistor hanno tre pin. piegare leggermente indietro il perno centrale e inserirlo in modo che i lati arrotondati e appiattiti corrispondano all'immagine serigrafata sul circuito, come mostrato. Il transistor non sarà in grado di stare piatto contro il circuito, quindi fallo sporgere di qualche millimetro. Inserisci tutti e 4 i transistor. Capovolgi il PCB e salda tutti i transistor. Quindi agganciare i fili.
Passaggio 9: saldalo! Parte 6
Il prossimo è il LED IR. Inizia con LED1, un led IR chiaro. Come il piccolo indicatore LED, ha polarità. Assicurati che il cavo positivo più lungo sia sulla destra, come mostrato. Piegare il LED di oltre 90 gradi in modo che sporga dal bordo del circuito Ora saldarlo alla parte superiore del circuito Capovolgere il PCB e saldarlo sul fondo (se necessario) Quindi agganciare i cavi Posiziona i LED rimanenti. Quelli colorati di blu dovrebbero andare al centro. Assicurati che siano nell'orientamento corretto! Saldare i LED e agganciare i cavi lunghi. Hai finito di saldare! Ora potresti voler eseguire alcuni test per assicurarti che funzioni. Visita la pagina dei test per maggiori informazioni. Posizionare la schiuma adesiva a doppia faccia sul circuito. Rimuovi l'altro lato e premi il portabatteria su Congratulazioni, il gioco è fatto!
Passaggio 10: provalo
Test 1Con le batterie inserite, assicurati che il LED verde lampeggi dopo aver premuto il pulsante di accensione https://blip.tv/file/get/Ladyada-tvBGoneKitTest1692. MP4Test 2Le fotocamere digitali possono rilevare la luce a infrarossi ma i nostri occhi no. Usa una fotocamera digitale, una webcam o una videocamera e guarda attraverso il mirino digitale i LED IR, dopo aver premuto il pulsante, i LED dovrebbero lampeggiare.
Passaggio 11: usalo
Molto facile! 1. Punta semplicemente il dispositivo nel miglior modo possibile in modo che i LED a infrarossi siano puntati verso il televisore che desideri spegnere.2. Premi il pulsante una volta. Non tenere premuto il pulsante! Continuerà a resettarsi da solo. I codici iniziano a trasmettere una volta rilasciato il pulsante.3. L'indicatore LED lampeggerà per ogni codice inviato. Tieni il TV-B-Gone puntato sul bersaglio finché non si spegne. I 4 LED a infrarossi non lampeggiano visibilmente perché gli occhi umani non possono vedere la luce a infrarossi.4. Quando TV-B-Gone ha finito, la spia luminosa lampeggerà velocemente alcune volte e poi si fermerà. Se si preme e si rilascia il pulsante durante l'invio dei codici, si ripristinerà e ricomincerà dall'inizio I codici più popolari sono a all'inizio, i codici meno comuni sono alla fine dell'elenco. Video di utilizzo consigliatohttps://blip.tv/file/get/Adafruit-TVBGoneKitFromAdafruitIndustries302.flv
Passaggio 12: download
File per v1.1Ecco i file hardware e firmware per v1.1, distribuiti sotto Creative Commons 2.5 Attribution, Share-Alike
Schemi e file di layout in formato Eagle
www.ladyada.net/media/tvbgone/tvbgone11.schhttps://www.ladyada.net/media/tvbgone/tvbgone11.brd
Firmware per AVR-GCC
www.ladyada.net/media/tvbgone/tvbgone11.zip
Firmware più recente con correzione del bug "sempre attivo" (?)
www.ladyada.net/media/tvbgone/tvbgone11b.zipFiles for v1.0Ecco i file hardware e firmware per v1.0, distribuiti sotto Creative Commons 2.5 Attribution, Share-Alike
Schemi e file di layout in formato Eagle
www.ladyada.net/media/tvbgone/tvbgone.schhttps://www.ladyada.net/media/tvbgone/tvbgone.brd
Firmware per AVR-GCC
www.ladyada.net/media/tvbgone/tvbgone.zipAcquista il kit qui:https://www.adafruit.com/index.php?main_page=index&cPath=20
Consigliato:
Utilizzo del kit dell'inventore Kitronik con Adafruit INDIZIO: 4 passaggi (con immagini)
Utilizzo del kit dell'inventore di Kitronik con Adafruit INDIZIO: il kit dell'inventore di Kitronik per BBC micro:bit è un'ottima introduzione ai microcontrollori con elettronica che utilizza una breadboard. Questa versione del kit è progettata per l'uso con l'economico micro:bit BBC. Il libro tutorial dettagliato che arriva
Come installare Raspberry PI 4 Headless (VNC) con Rpi-imager e immagini: 7 passaggi (con immagini)
Howto: installazione di Raspberry PI 4 Headless (VNC) con Rpi-imager e immagini: ho intenzione di utilizzare questo Rapsberry PI in una serie di progetti divertenti nel mio blog. Sentiti libero di dare un'occhiata. Volevo tornare a usare il mio Raspberry PI ma non avevo una tastiera o un mouse nella mia nuova posizione. Era un po' che non installavo un Raspberry
Kit luci per bauletto moto Givi V56 fai da te con segnali integrati: 4 passaggi (con immagini)
Kit luci per bauletto moto Givi V56 fai-da-te con segnali integrati: come motociclista, ho familiarità con l'essere trattato come se fossi invisibile sulla strada. Una cosa che aggiungo sempre alle mie bici è un bauletto che di solito ha una luce integrata. Recentemente sono passato a una nuova bici e ho comprato la Givi V56 Monokey
Telecomando wireless con modulo NRF24L01 da 2,4 Ghz con Arduino - Nrf24l01 Ricevitore trasmettitore 4 canali / 6 canali per quadricottero - Elicottero Rc - Aereo RC con Arduino: 5 passaggi (con immagini)
Telecomando wireless con modulo NRF24L01 da 2,4 Ghz con Arduino | Nrf24l01 Ricevitore trasmettitore 4 canali / 6 canali per quadricottero | Elicottero Rc | Aereo radiocomandato con Arduino: per far funzionare un'auto radiocomandata | Quadricottero | Drone | Aereo RC | Barca RC, abbiamo sempre bisogno di un ricevitore e trasmettitore, supponiamo che per RC QUADCOPTER abbiamo bisogno di un trasmettitore e ricevitore a 6 canali e quel tipo di TX e RX è troppo costoso, quindi ne faremo uno sul nostro
Come smontare un computer con semplici passaggi e immagini: 13 passaggi (con immagini)
Come smontare un computer con semplici passaggi e immagini: questa è un'istruzione su come smontare un PC. La maggior parte dei componenti di base sono modulari e facilmente smontabili. Tuttavia è importante che tu sia organizzato al riguardo. Questo ti aiuterà a non perdere parti e anche a rendere più facile il rimontaggio