Pokaži nam svoj projekt


#1

Evo za početak, bilo bi zgodno da nam pod ovom kategorijom #projekti ispričate na čemu trenutno radite ili želite raditi. Neki open source projekt? Možda neka računalna igra?


Dobrodošli na Balkan Tech Forum
#2

Da pokrenem ovu temu, napisat ću ja nešto o svom zadnjem većem projektu – CloudFleetu (dio vas je već puno čuo o projektu preko socijalnih medija gdje sam širio puno vijesti o napretku pa nemojte zamjeriti malo ponavljanja ;)). Ukratko, ideja je plug-and-play uređaj za privatni email.

Projekt je open source i ideja je da pojedinci mogu instalirati uređaj na svom vlastitom hardwareu, npr. Raspberry Pi-ju. Osim open source aspekta, mi dodatno želimo napraviti i paket koji se može kupiti, tako da jednog dana možda uspijemo napraviti i neki posao za održivo razvijanje projekta. Imali smo u siječnju jednu kotrljavu crowdfunding kampanju za pretprodaju takvih komercijalnih paketa koja na žalost nije uspijela (možda uđem u malo više detalja poslovne strane i lekcija naučenih na toj kampanji u posebnom postu u kategoriji #posao ). Ovako izgleda korištenje CloudFleet Blimpa (tako smo nazvali prvu verziju uređaja) u svakodnevnoj situaciji slanja PGP-enkriptiranog emaila:

CloudFleet Blimp ima više komponenti (ne ću previše ulaziti u opise – linkovi vode do detaljnije dokumentacije koju sam napisao na ReadTheDocsu):

  • CloudFleet Blimp hardware – na kojem se stvar vrti. Stoji kod korisnika doma. Trenutna platforma nam je Raspberry Pi zbog dobre podrške za Linux.
  • CloudFleet Blimp software – Docker daemon i niz web aplikacija koje se vrte u svojim Docker kontejnerima (npr. mail aplikacija Mailpile, aplikacija za kalendar, aplikacija za kontakte, …).
  • CloudFleet usluge – centralizirane komponente na našim serverima koje olakšavaju rad – vrlo nam je bitno da korisnik sam ne mora ništa tehnički podešavati ako ne želi.
    • Pagekite frontend – za svaki CloudFleet Blimp, postavljamo račun na Pagekite.net-u kako bi korisnici mogli pristupati uređaju bez ikakvog port forwarding podešavanja na svom routeru
  • nadogradnje softwarea – postavili smo svoj privatni Docker registry s kojeg svaki CloudFleet Blimp redovito skida najnovije verzije Docker imagea za svoje kontejnere (ovo je ideja automatiziranog sysadministriranja za koju mislimo da će biti sve nužnija u IoT svijetu)
  • vlastita domena – za svakog korisnika iznajmljujemo i produžujemo domenu preko API-ja jednog domenskog registra.
  • TLS certifikat za HTTPS vezu – ranije smo radili TLS certifikat za svakog korisnika koristeći naš vlastiti intermediate CA na StartSSL-u. Sad kad je došao Let’s Encrypt će se ovo najvjerojatnije odvijati na samom Blimpu bez našeg posredstva.
  • enkriptirani backupovi – CloudFleet Blimp enkriptira podatke lokalno koristeći privatni ključ dostupan samo korisniku i tako enkriptirani bakcup se prebacuje na naše servere. Ovaj dio je još u izradi, ali planiramo kao krajnju lokaciju koristiti Backblazeov B2 API

Što se koda tiče, imamo puno repozitorija… Uglavnom koristimo Python (CloudFleet usluge su jedna Django REST web aplikacija), JavaScript i AngularJS single-page aplikacije na frontendu (npr. Cockpit – početni dashboard svakog Blimpa), tu i tamo i Node.js na backendu kad je zgodnije i dosta Bash skripti za bootstrapanje svega pri prvom pokretanju (posebno je bolno bilo napraviti automatsko particioniranje i LUKS enkriptiranje diskova :cold_sweat:).

Ako imate pitanja, slobodno ih postavite. Ja bih rado čuo koji su vaši davni ili nedavni projekti kojima se ponosite pa nam želite ponešto ispričati o njima. :smiley:


Molim predstavite se 🙂
Tvorci Weba o tome kako koristimo web danas
#3

**

RF’n’Roll

**

Bok Balkan.io!

Evo kratki osvrt na moj zadnji projektic… Radi se o RFID baziranom music playeru.

Ideja:

  • Imas kolekciju gramofonskih ploca koja lijepo izgleda na polici
  • Neces gramofon jer je to naporno i skupo za odrzavanje, a mozda ne volis ni zvuk, ali…
  • … volis osjecaj kad prebires po polici s muzikom i biras sta ces stavit, ili…
  • …samo zelis stavit nesto brzo da se svira jer si tek dosao doma s napornog posla i neda ti se palit kompjuter i otvarat spotify.

E pa onda, uzmes samo svoju plocu koja te zanima te ju prislonis na moj elegantni RFID Music Player i trenutno uzivas u glazbi mp3 kvalitete!!


Kako to radi?

Raspberry Pi sa RFID citacem (Mfair RC522). Ideja je da svaka od ploca ima RFID naljepnicu skrivenu negdje unutar covera.

Python program na R Pi-u odradi posao: procita kod kartice preko SPI sucelja na GPIOu, prepozna o kojoj je ploci rijec i pusta muziku (modul pygame). Ako maknes plocu, pjesma se pauzira, a nastavlja svirati tek kad ponovo prislonis istu plocu. Kad prislonis drugu plocu, ucitava se novi album itd.


Sto imam za sad?

Osnovni player sa osnovnim funkcijama: detektiraj karticu, kreiraj playlistu, play, pauza, pokreni novu pjesmu. Trenutno za test verziju koristim samo jedan album, ali funkcionira i svira kako treba.
Kod je dakako dostupan na Githubu.

Kao nevjestom programeru, svaki savjet i kritika na kod je izrazito dobrodosla!


Hackaday Prize 2016
#4

Zakon! Bilo bi super kad bi mogao dati malo više detalja o sastavljanju (ovdje ili na Gici staviti neki README.md) jer bi i ja htio dodati tu funkcionalnost svom kućnom multimedijalnom sustavu. Vidio sam inače još likova po netu koji imaju takve primjere:

Znači od komponenti samo trebam:

  • osnovni RPi (s napajanjem i SD karticom, naravno)
  • ovaj MF RC522 kit
  • kako mogu staviti naljepnice na CD-e/ploče? Jesu li svi RFid tagovi kompatibilni pa uzmem neki set naljepnica kao npr. ovaj ili moram neki točno određeni?
  • trebam li još neke žice da bi spojio kit na RPi ili sve potrebno dođe u kutiji?

Ako napraviš upute za sastaviti hardverske elemente, pomognem ti modularizirati kod malo i dodati funkcionalnost za npr. puštanje muzike i preko Spotifyja ili Youtubea na Chromecast audio koji omogućava slanje na vanjsku liniju (kao što sam već napravio za ovaj projektić), znači imao bi puno bolji zvuk za pravi ugođaj na tulumima :sunglasses:


#5
  • To je dovoljno za pocetak
  • Takav imam i ja!
  • Oprez! Nisu svi RFID tagovi kompatibilni - moras dobro pazit na frekvenciju rada i protokol. Npr. ove koi si linkao rade na 13.56MHz u protokolu ISO14443A. Frekvencija je dobra za RC522 ali protokol moram provjeriti.
  • trebas zice i to one koje na jednom kraju imaju rupicu (zenske), a na drugom mali ogoljeli pin (muske) (da, seksizam u inzinjerstvu :slight_smile: ), poput ovih.

Dijagram spajanja je dan na par mjesta na netu, ukljucivsi i Python library za Mifare reader. Tako da se nisam zamarao stavljati to u Readme.md. Spajanje na spotifiy mi je zelja za kasnije i zato sam i krenuo s R Pijem…inace za pustat mp3ice sa diska dovoljan bi bio i obicni arduino…


#6

Ja se zanimam sa bbPress u poslednje vrijeme, dopao mi se jako Flarum kako je uradjen pa sam krenuo da na isti princip odradim bbPress posto bas malo postoji tema i to sto ima lose je.

Moze se preuzeti ovdje www.github.com/sceko/white


#7

Da, dobro izgleda taj Flarum (nisam ga vidio ranije). Moderan dizajn, a opet onako zaigrano djeluje.