Aikataulu – Prototyypin rakentaminen bus4tn007-4 loppukevät 2013

Opi rakentamaan itse keksimiäsi prototyyppejä: robotteja, varashälyttimiä, kauko-ohjaimia…

Tämä loppukevään toteutus alkaa maaliskuussa 2013. Aiempi toteutus alkaa tammikuussa.

Opit lukemaan tietoa sensoreilta (etäisyys, valo, kallistus…). Mikrokontrolleri voi ohjata tiedon perusteella laitteita (moottoreita, servoja, valoja). Ja tietysti kokonaisuuden voi yhdistää tietokoneeseen ja sitä kautta nettiin.

Tällä kurssilla ei kolvata vilkkuvia joulukuusia rakennussarjoista. Tarkoitus on rakentaa laitteita, jotka olet itse keksinyt.

Esitiedot (kertaa nämä): Ohjelmoinnin alkeet: muuttujan arvon asettaminen, suortusjärjestys, if-then-else, for, funktio. Linux: asennus, komentokehote, apt.

Kurssikirja

Karvinen 2011: Make Arduino Bots and Gadgets Vaihtoehtoisesti soveltaen voi käyttää myös Karvinen 2010: Sulautetut – Opi rakentamaan robotteja ja muita sulautettuja järjestelmiä.

Aikataulu

w13 Hello Arduino World (1, 2)

w14 (Toinen pääsiäispäivä 2012-04-01) Luetaan sensoreita (3)

w15 Sensoreita (3, 4)

w16 Yhteydet suureen maailmaan (5, 7)

w17 Liikettä, liikettä (8)

w18 Projektien käynnistys

w19 Projektin viimeistelyä

w20 Projektien esittely

Suluissa läksynä olevat “Make Arduino Bots” luvut. Aikatauluun tulee muutoksia tarpeen mukaan kurssin edistyessä.

Opetus 2p ajan maanantaisin 10:00 – 13:45 labrassa h5001 Pasilassa. Erityisesti projektien esittelyssä on tärkeää olla seuraamassa kaikkia esityksiä.

Linkkejä

Moodle-sivu (vaatii kirjautumisen)

Opinto-opas: Prototyypin rakentaminen

Vanhoja kurssisivuja ja edellisellä nimellä Sulautetun järjestelmän rakentaminen ict8td006-1 2008w43

Briefly in English

Arduino course, learn to design and build prototypes. Seven easy lessons. Robots and other embedded systems. Getting started right now? Read my book Make Arduino Bots and Gadgets.

Posted in Uncategorized | Tagged , , , , , , , , , , , | 41 Comments

41 Responses to Aikataulu – Prototyypin rakentaminen bus4tn007-4 loppukevät 2013

  1. Joni Junni says:

    Kurssi oli todella mielenkiintoinen ja informatiivinen, aikaisemmin minulle ei tullut mieleenkään että esimerkiksi kommunikointi tietokoneen kanssa sarjaportin yli olisi edes mahdollista Arduinolla! Aion jatkossakin tehdä kaikenlaisia projekteja tämän aiheen parissa ja varmasti blogatakin aiheesta.
    Demotilaisuus oli minusta kiva kun pääsi näkemään mitä muut olivat tehneet, antaa palautetta ja kehitysehdotuksia, ennen kaikkea rennossa ilmapiirissä. Pääsin myös tutustumaan muihin samoista asioista kiinnostuneita ropelihattuja kurssin aikana. Arvosana kurssille täysi vitonen :)

  2. Sami Nisonen says:

    Hyödyllinen kurssi. Kurssilla aloitettu projekti jäi kesken, joten jatkan tanssihansikkaan parissa työskentelyä kesällä.

  3. Opin kurssin aikana paljon uutta ja hyödyllistä asiaa. Innostuin niinkin paljon, että laitoin heti dx.com:sta tilaukseen Arduino sensor packin ja muutamia servoja sekä muuta kivaa :) Suunnittelin, että tekisin kauko-ohjattavan pikkuauton, heti kun saan tilaamani osat. Ideoita tuli myös moniin muihinkin projekteihin.
    Olisi ollut mukava, että kurssi olisi pidempi esim. puoli vuotta, jotta ehtisi tutustua Arduinoon kunnolla ja saisi tehtyä isomman projektin. Kurssin aihe oli erittäin kiinnostava ja oli hauska huomata, ettei sulautettujen kasaaminen ollut vaikeaa. Suosittelen kurssia kaikille!

  4. Ottaen huomioon, että omat lähtötietoni Arduinosta olivat suhteellisen nollassa, kurssin aikana uutta tietoa ja oppimista on tullut valtavasti. Tämä on tietenkin ollut positiivinen asia ja siksi olenkin äärimmäisen iloinen osallistumisestani kurssille.

    En koe, että kurssin asiasisältö olisi ollut ylitsepääsemättömän hankalaa tai vaikeasti opittavaa, mutta oppimisvastuu oli kyllä suuresti opiskelijalla. Toisaalta ihan jees – parhaitenhan sitä oppii, kun itse kokeilee -, mutta toisinaan tunneilla heräsivät “häh?”-fiilikset. Opiskelijoiden osaamistaso oli toki erilainen, joten sinänsä ymmärrettävää. Onneksi internetistä löytyi paljon tietoa ja hyviä ja selkeitä ohjeita.

    Opin kurssin aikana valtavasti. Ensimmäinen prjektisuunnitelma pakotti opettelemaan python-koodia, mikä oli minulle erityisen hyödyllistä, sillä tietoni siltä saralta olivat minimaaliset. Lopullinen projekti sen sijaan oli oikeaa oppimisen ja kurssin aikana opitun riemulaulua, sillä käytännössä kaikki siihen sisältynyt olisi ollut minulle mysteeri vielä pari kuukautta sitten. Tuntui, että uusia asioita oli paljon, mutta olen erityisen iloinen, että niitä päästiin hyödyntämään ja huomaamaan, että “Hei, minäkin osaan!” Tämä on muutenkin mielestäni kurssin hienoin piirre: projektin onnistumisen tuottama ilo on äärimmäisen arvokasta opiskelijoille. Vaikka stressiä aikataulusta ja toiminnasta saattaa olla paljon, tyytyväisyys lopussa korvaa kyllä kaiken.

    Hyvää opetuksessa oli selkeä kokemuksen hyödyntäminen. Alusta asti kerrottiin vinkkejä perustuen aiempien kurssien kokemuksiin (mm. ajankäyttö- ja aikataulutointivinkki olisi kannattanut kyllä hyödyntää!) Opetus oli myös innostavaa ja kurssin ilmapiiri positiivinen, siitä pisteitä.
    Miinuksena voisin todeta, että mielestäni kurssi olisi parempi järjestää esimerkiksi puolen vuoden kurssina, sillä tällä aikataululla tosiaan tuli kiire. Uutta asiaa oli paljon ja ne tulivat tiiviissä tahdissa, joten laajemmalle aikajaksolle toteutettuna asioiden omaksumista ja omaa testailua olisi saattanut ehtiä harrastaa enemmän. Ja kuten jo sanoin, toisinaan asiat oli vaikea ymmärtää pelkän tunnilla kerrotun perusteella: opiskelijan oma vastuu oppimisesta jäi siis isoksi.

    Suosittelisin kurssia ehdottomasti muille opiskelijoille: sain itse siitä hirmuisesti irti. Projektin tekemisen ja onnistumisen riemu oli kyllä ehdottomasti kaiken arvoista! :)

  5. Niko says:

    #include

    const int Arvosana = 5+;
    /*
    Kurssi oli erittäin hyvä ja mielenkiintoinen. En tiennyt arduinosta mitään, mutta nyt tiedän ja en varmasti lopeta arduinon kanssa puuhamista tähän.*/
    void loop()
    {
    Serial.println(“Tero on paras”);
    delay(15);
    }

    }

  6. The course is a wonderful way to get lost in the world of C/C++ programming, with a concrete and tangible results, with suprisingly little effort. You just hack away with Arduino, until some day you realize you’re writing C without actually having had to study it.

    For future courses, I think it’d be worthwhile if some way to include Raspberry Pi were found.

  7. Onnistunut kurssi kaikin puolin, perusteista pääsi projektin kautta heti haastavampien ongelmien kimppuun, varsinkin näin Java-ohjelmoijataustaisena C/C++ perusteet avautui todella nopeasti. Voin helposti suositella kurssia eteenpäin ihan jo arduinokokemuksen puolesta.

  8. Kurssi oli tunnetusti työntäyteinen, mutta erittäin mielenkiintoinen. Kurssin projektin kanssa tuli hieman kiire kun laittoin arduinon tilaukseen vasta viikko kurssin alkamisesta, joten suosittelen tilaamaan arduinon ja muut komponentit heti.

    • Ja kurssin lähtötaso on kyllä kaikille sopiva, ainakin jos ohjelmointi-kurssi on meneillään tai jo suoritettuna. Opin kurssilla paljon lisää ohjelmoinnista ja prototyyppien rakentamisesta.

  9. Iiro Nurmi says:

    Opin paljon kurssilta, sillä aloitin aivan nollatasolta arduinon kanssa.
    Tästä hyödyin esimerkiksi uuden ohjelmistokielen oppimisella (perusteita).
    Aion luultavasti väsätä arduinon kanssa jatkossakin, joten taidot hyödyksi.
    Kurssi oli osaltani, ehkä ajoittain liian haastava. Haasteellisuus syntyi, kun peruskäsitteet jäivät itseopiskelun varaan. Olisin toivonut enemmän perustietoihin pureutumista, niin aihe olisi avautunut paremmin ja olisin mahdollisesti pystynyt tekemään monimutkaisempia asioita. Osittain kurssilla minulle tuli olo, että kyllä osaisin, jos asia olisi vain selitetty minulle helpommin. Kurssissa tietenkin tuli vastaan kurssin nopea tempo ja kun osia ei kuulunut jäi tekeminen viimeisille viikoille.
    Demopäivä oli kaiken huipentuma ja tietenkin oli mielenkiintoista nähdä mitä muut olivat saaneet aikaan.
    Suosittelen kurssia kaikille, mutta kannattaa olla perustaitoja arduinon kanssa.
    Pidän aina käytännöläheisestä tavastasi opettaa, et opeta taitoja, mitä et todellisuudessa tule koskaan tarvitsemaan. Osaat vinkata opiskelijalle tarpeelliset tiedot ja mitä todella tulee tarvitsemaan.
    Kurssi oli hauska ja se toi vaihtelua peruskoulunkäyntiin. Käytännön taidot kunniaan!

  10. Osaamiseni ja tietoni kurssille sulautetuista järjestelmistä oli täysin 0.
    Kurssin aikana opin hyvin paljon uutta asiaa sekä kiinnostuin suuresti Arduinosta ja siihen liittyvistä mahdollisuuksista. Uskon että tulen hyötymään tulevaisuudessa paljon kurssilla oppimista taidoista.

    Kurssi ei kuitenkaan ollut täydellinen. Kolmen opintopisteen kurssiksi työtä oli hieman liikaa. Monista tärkeistäkin asioista, kuten pythonin käytöstä, käytiin vain pintaraapaisu ja ainakin minulle moni asia jäi epäselväksi. Vaikka samaa tietoa saa internetistä, se on tavalliselle tallaajalle, kuten minulle, välillä liian vaikeaa ymmärtää tai hahmottaa täydellisesti. Esimerkiksi kytkennöistä, resistoreista, transistoreista ja muista kytkentöjen välikappaleista olisi voinut kertoa enemmän tai paremmin.
    Myös vastaukset oppilaiden kysymyksiin olisi ajoittain voinut olla parempia. On paljon mukavampi saada kattavampi opettajan selittämä vastaus kuin “katso datasheetistä”. Ei kaikkien komponenttien toimintaa voikaan osata ulkoa, mutta pintapuolinen tutustuminen ja eteenpäin ohjauskin helpottaisi huomattavasti.

    Aion hyödyntää kurssilla oppimiani taitoja tulevaisuudessa rakentamalla kivoja härveleitä mitä aikasemmin ostaisin paljon kalliimmalla kaupasta. Jos keksin niille kaupallista käyttöä, aion tehdä sen.

    Demopäivä oli erittäin mielenkiintoinen ja oli mukava nähdä muiden opiskelijoiden kekseliäitä projekteja.

    Ehdottomasti suosittelen ystävilleni!

    Arvosana 3.5/5

  11. Antti Ursin says:

    Erittäin hyvä kurssi. En tiennyt Arduinosta mitään ennen kurssia ja yllätyin kuinka helppoa sulautettujen laitteiden teko on. Opetustahti oli sopiva ja kotitehtävät tarpeeksi haastavia. Suosittelesin kurssia muillekin. 5+.

  12. Mats Wiik says:

    Kiinnostava kurssi joka antaa hyvät alkeet Arduino projektien tekemiseen. Kurssista tuli selkeä kuva mitä kaikkea Arduinolla voi tehdä. Uskallan jopa suositella kurssia niille joilla on ei ole mitään koodaus osaamista. Arduinolle koodaaminen on loogista ja helppoa.

    Loistava perehdytys Arduinon maailmaan.

  13. Petri says:

    Kurssilla opin ymmärtämään että ulkoa monimutkaisen näköiset laitteet voivat olla varsin yksinkertaisia sisältä. On helppoa jatkossa tarkastella eri tuotteita, jotka sisältävät erilaisia sensoreita kun on niitä myös itse käyttänyt.

    Miinusta lähinnä sähköpuoleen liittyvästä opiskelusta, sillä se kuitenkin liittyi arduinoon mielestäni läheisesti ja välillä tuntui, että oletuksena tulisi jo valmiiksi ymmärtää melko paljon ja tämä tuotti itselleni hieman vaikeuksia kurssin aikana

    Kurssille arvosana: 4

  14. Tom Himanen says:

    Ainiin, iso plussa siitä, ettei kurssilla koodattu javaa vaan jotain ihan oikeasti käyttökelpoista kieltä.

  15. Tom Himanen says:

    Kurssi oli todella mielenkiintoinen. Ostin Arduinon ja kasan komponentteja. Niille tulee tulevaisuudessakin käyttöä. Arduino-kurssin myötä minulle syntyi idea paristakin kaupallisesti potentiaalisesta tuotteesta, joita en kuitenkaan kyennyt kurssin aikana toteuttamaan aikataulusyistä johtuen.

    Aikataulu olikin kurssin ehdottomasti suurin ongelma. Vika ei varsinaisesti ollut liian nopeassa etenemisessä vaan enemmänkin siinä, että kurssin opintopistemäärä ja suoritusaika (kuukausina) tulisi olla pidempi. Kiinnostavaan aiheeseen ei ehtinyt paneutua, minkä lisäksi kirjat ja osat saapuivat suurin piirtein viikko ennen kurssin loppua, vaikka ne pisti tilaukseen kurssin alun yhteydessä.

    Tähän on olemassa monia purkkaratkaisuja, kuten laittaa kirja tilaukseen vuosi ennen kurssin alkua. Kaikki on mahdollista, muttei aina kätevää tai kaikkien osapuolten kannalta fiksua. Ad hoc -ratkaisujen sijaan ehdottaisin kurssin pidentämistä lukukauden mittaiseksi. Ei haittaisi, vaikka samalla tuntimäärä ja opintopisteet tuplautuisivat.

  16. Kurssi on ok. Oppi Arduinon käytön ja oli mukava saada projekti etenemään lähes toimivaan versioon. Välillä koki ettei saanut kysymyksiin vastauksia ja moni asia jäi hämärän peittoon. Hyödyllinen kurssi tulevaisuudessa rakennettavien prototyyppien kannalta.

  17. Ilkka Jylhä says:

    Kurssi oli erittäin mielenkiintoinen, mutta aikaa oli liian vähän. Projektin tekeminen olisi ollut mielekkäämpää, sekä lopputulos ja oppimiskokemus olisi ollut parempia, jos kurssi olisi ollut esim. 6 opintopisteen mittainen. Aikaa itse projektin tekemiselle jäi loppujen lopuksi aika vähän. Tilanteeseen tietenkin vaikutti samaan aikaan olleet muut kurssit ja niiden projektit.

    Kurssi muuten oli ehdottoman timanttista tero-laatua. Suosittelen.

  18. Aicha Haidara says:

    Opin paljon Arduinosta ja sen toiminnoista. Minulle heräsi paljon inspiraatiota uusille projekteille. Kurssilla voitaisiin käsitellä enemmän yhdessä Arduinon käyttöä ja C++:n käyttöä. Meni aika paljon aikaa tiedon etsimiseen ja ymmärtämiseen. Mieluisin kohta oli rakentaa prototyyppi ja sen esittely muille. Suosittelisin kurssia kaikille, jotka ovat luovia ja aiheista kiinnostuneita.

  19. Linux/Unix järjestelmistä kerätään tietota jotka tulostetaan st7920_datadisplay näytölle. Lähdekoodi löytyy osoitteesta https://github.com/lahemi/assigncodement/tree/master/Arduino/st7920_datadisplay

  20. Iiro Nurmi says:

    WakeWake herätyskello by Iiro Nurmi & Aicha Haidara:
    WakeWake Herätyskello (Iiro Nurmi)

    WakeWake Herätyskello (Aicha Haidara)

    Projektimme oli herätyskello, joka tunnistaa onko herätettvä henkilö noussut sängystä. Jos herätettävä ei nouse tai menee takaisin sänkyyn herätyskellon ollessa vielä aktiivinen, hälyttää kello edelleen.

  21. Krister Holmström says:

    Tanssihansikas by Krister Holmström & Sami Nisonen:
    http://kristerholmstrom.wordpress.com/2013/05/06/tanssiharjoitushansikas/

  22. Samuel Rautiainen says:

    Projekti idea. Tehä sensorilla toimiva liiketunnistin, jolla voi ohjata tietokoneen ohjelmia (tos. näk valokuvien esitystä). Helpottaa kun kone on kiinni toisessa näytössä

  23. Läksy: Sarjaportista maailmaan. a) Lue tietokoneella Arduinon lähettämää tietoa. b) kirjoita Arduinolle tietokoneelta c) Tee tietokoneelle ohjelma, joka laittaa ledin Arduinolta päälle ja pois d) (vaikeampi) Lue sensorin tietoja tietokoneelle Arduinolta.

    Läksy: Projektin aihe-ehdotus. Käsiteltävät asiat: *nimi *yhden virkkeen kuvaus *projektiryhmä *kuvaus toiminnasta *tarvittavat osat ja tekniikat *samantapaiset olemassaolevat projektit *julkaiseminen *alustava aikataulu.

    Lukuläksy: 5. Interaktiivinen taulu. Kertaa “Make Arduino Bots” luvut 3, 4.

  24. Joni Junni says:

    Projekti-idea: Varashälytin kotiin jossa yhdistellään erilaisia sensoreita (liiketunnistimet, ovi- ja ikkunakytkimet). Tarkoitus toimia myös kulunvalvontana kun hälytin voidaan kytkeä RFID-tunnistinnapilla ja kulku kirjataan muistiin.

  25. Projektin aiheena on alustavasti tehdä Arduino Leonardoa käyttäen apuväline tietokoneen käyttöä varten. Ohjain tulee olemaan joystick, joka mahdollistaa käyttämisen ns. tökkimällä eikä vaadi puristusotetta käyttäjältä. Ja jos kaikki sujuu hyvin ja kurssin aikataulu riittää niin tämä vielä sulautetaan jo olemassa olevaan ohjaimeen, jolloin käyttäjän ei tarvi uusia koko järjestelmää.

    Mahdollisia lisätoiminnallisuuksia suunnitellaan ja tehdään aikataulun puitteissa.

  26. Samu says:

    aikataulunäyttö kotiin. näyttää kyseisen ajan ja seuraavan lähtevän julkisen yhteyden lähimmältä pysäkiltä. voidaan aktivoida jollain sensorilla.

  27. Anturoitu Arduino – läksy 3. Laita jokin sensori toimimaan Arduinolla. Tee miniprojekti, jossa on sensori. Varaa projekti-ideasi kommenttina aikataulun perään.

  28. Läksy 2:

    Ohjaa servoa eri tavoilla: servo.h, suoraan digitalWrite(HIGH) ja LOW.

    Kirjoita sarjaportin monitorille (serial monitor) viestejä.

    Vaikeampaa: Jos osaat, etsi lainaamasi servon täsmälliset pulssin pituudet ääriasennoille (+90 deg, -90 deg) ja keskikohdalle (0 deg).

    Etsi omaperäinen Arduino-projekti ja kuvaile se lyhyesti. (Myös muu alusta kelpaa, kunhan se vuorovaikuttaa fyysisen ympäristön kanssa). Tästä viimeisestä kohdasta pelkkä raportointi riittää, eli ei tarvitse rakentaa kyseistä projektia. Vastaukseen: mitä se tekee (yksi lause, josta mummokin ymmärtää), miten se on toteutettu, miten voisi vielä parantaa.

    Muista viitata lähteisiin ja laittaa omakin nimesi näkyviin.

  29. Koulun viidennen kerroksen käytävällä olevan vanhan tietokoneen ledinäyttöön jotakin hauskaa. Esimerkiksi binääreillä näytettäviä lukuja tms.

    Esimerkki kuinka 5:llä led valolla pystyy laskemaan binäärien avulla luvut 1-31: http://santerifriman.wordpress.com/2013/03/28/binary-counter-from-1-to-35-with-5-led-lights/

  30. Projekti-idea:

    Suunnitelmanamme on tehdä papukaija-figuuri, joka toistaa sille sanotun lauseen. Ideana on tehdä mekaaninen hahmo, jonka sisällä on mikrofoni ja kaiutin. Äänite tellentuu muistilaitteelle, jonka jälkeen papukaija toistaa sanottua lausetta muistista aina, kun buttonia painetaan. Kun uusi lause äänitetään, vanha “unohtuu” ja papukaija toistaa uutta lausetta.
    Olisi vielä hienoa, jos papukaija heiluttaisi siipiään puhuessaan.

  31. Antti Ursin says:

    Kauko-ohjattava pyörillä liikkuva robotti, joka mittaa etäisyyksiä esteisiin ja välittää niistä langattomasti tiedot tietokoneelle. Tietokoneohjelma piirtää esineistä 2D kartan, jonka perusteella robottia voi ohjata sokkona näkemättä laitetta.

    • Antti Ursin says:

      Uusi idea: Lämpötila- ja kosteusmittari mökille,joka tallentaa tietoja SD-kortille. Tiedot voi lukea kännykällä Bluetoothin välityksellä.

  32. Ilkka Jylhä says:

    (Interaktiivinen) Informaatio Pingviini

    Pehmolelu pingviini joka tarjoaa erinäisiä tietoja siihen liitetyistä (linux)järjestelmistä.
    Informaatio välitetään käyttäjälle äänellä, näytöillä ja mahdollisesti muilla visuaalisilla keinoilla

    Järjestelmä koostuu kahdesta komponentista itse pingiinistä ja tietokoneella ajettavasta sovelluksesta.
    Tietokoneella ajettava sovellus lukisi lähinnä /proc sekä /var/log alla olevia tiedostoja.
    Näistä kerättyjen tietojen perusteella pingviini reagoi esim. puhumalla.

    Toiminnallisuuksia lisätään sitä mukaan kun projekti etenee.

  33. Tom Himanen says:

    Projekti-ideani:

    Ilmakuvausquadkopteri. Minimitavoitteena on rakentaa Arduinolla toimiva, videokameran kannatteluun kykenevä quadkopteri. Resurssien salliessa quadkopterille luodaan edellytykset laskeutua täysin automatisoidusti. Quadkopteria voidaan käyttää esimerkiksi musiikkivideoiden ilmakuvausvälineenä helikopterin sijaan, ja sen etuna on alhainen melutaso, pieni koko sekä tietysti pienemmät käyttö- ja hankintakustannukset. Projektiin pääsee toistaiseksi mukaan, mutta se on teknisesti melko haastava.

    Quadkopterilla kuvattua materiaalia referenssiksi: http://www.youtube.com/watch?v=TRYwC0ZIzqI

  34. Sami Nisonen says:

    Projektin aihe:

    Laite, joka kiinnitetään kämmenselkään. Käden ollessa väärin tietyssä kohdassa tanssia (esim. kämmenet ylöspäin kun pitäisi olla alaspäin), laite antaa sähköiskun, tärisee tai jotain vastaavaa.

  35. $ setxkbmap fi

    $ sudo apt-get update
    $ sudo apt-get install arduino

    $ sudo adduser xubuntu dialout
    $ newgrp dialout
    $ arduino

Leave a Reply

Your email address will not be published. Required fields are marked *

*

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

  • Picks

  • Boxing Clock for AndroidOcton8 Diving T-ShirtsShaking Tower Panda Android GameLearn Chinese with Android
  • Student projects