My Synology DS214play setup

Synology DS214 PlayA NAS is a wonderful beast: you can use it to create your private cloud to store, backup and share your files, as a DLNA media server for smart TVs, as a download station for a variety of different contents and much, much more. True, you can configure your RasPI to do the same job, but appliance solutions are just… Ready to use! In the hard task to pick-up one for my house, my choice, eventually, has gone to Synology DS214play.

Why? Because Synology is a very well known manufacturer of corporate NAS solutions and the software used in the high end products is the same of consumer segment of their offer. Because they have a huge number of clients available for practically all OSes, desktop and mobile, to sync files, watch videos, listen to music, download files, acts as a web, mail, file, git server, IP cams monitoring and much, much more. Because they are easily customizable and there is a vibrant community (even in Italian) of professional and domestic users behind these products. And because the DS214play has an Intel Atom CPU, can transcode 1080p video on-the-flight, has 2 bays for HDs and has an affordable price.

 

Cloud store, and file sharing

First of all, the NAS can be used as Cloud Station to create a private cloud storage, while the dedicated app  keep in sync your data across different machines (no matter of the OS). Once the router and a dynamic DNS service are configured, data is kept in sync also outside the LAN, so bye bye to Dropbox, Google Drive and any other public cloud services.
In alternative, it is possible to setup a classic rsync flow between a Linux/Mac and the NAS. I used the latter, and now I backup my entire desktop HD to the NAS, and the NAS can then backup its entire content (or part of it) on a cloud backup storage, like S3, Azure and others. Steps to setup rsync, ssh keys and all the whole process are explained here. If ssh connects to the NAS but rsync doesn’t work, Network Backup has to be enabled  via Menu -> Backup & Replication -> Network backup destination -> Enable Network Backup.

 

Extending the software

SynoCommunityAdditional software could be added using a well-know packages-repositories mechanism. The official repository has some app, but the real magic starts when the SynoCommunity repo is added to the system. Git Server, Horde, ownCloud, CouchPotato, Python, Memcached, Mercurial, Headphones, SABnzbd and many more are all at a click distance now. And they run directly on the NAS, with a lower power consumption compared to a dedicated pc.
It is also possible to create new packages with the help of spksrc, a cross compilation framework intended to compile and package softwares for Synology NAS

 

Manage movies, TV series and video in general

First solution is to use DS Video, the dedicated client to manage the personal collections of movies, TV series and videos. It’s available via web interface, for mobile OSes and included in some Samsung TVs. ChromeCast is supported, so is possible to browse the movie catalog from web / smartphone /tablet and watch it directly to the TV, without connecting a single cable. Obviously the video format have to be compatible with Chromecast, but it’s always possible to re-encode the video in a supported format (download on a pc, convert, copy back to the NAS).

Plex Media ServerIf DS Video is not enough, Plex Media Server can be installed too, with all the goodies Plex offers :). Once the Plex package has been downloaded, a manual install in the Synology Package center is required. Before doing so, Settings -> General -> Trust Level -> Allow any publisher, otherwise the installation will fail with a “This package does not contain a digital signature” error. Plex server new versions has to be checked from time to time, because it isn’t automatically updated by the Synology Package center. Finally, Plex does not support the hardware transcoding features of the DS214play or DS415play, so up to 720p videos are transcoded, with stuttering and pausing during playback and 100% of CPU usage. But Plex interface is way better than DS Video to me, catalog recognizes a bigger number of videos, so I still prefer to use Plex for browsing and organizing my movies and anime collection.

 

Music and Photos

I’m not a big user of music (I’ve a Sonos system at home, all the rest is history now), but music works pretty much like movies, with a dedicated app plus some more available from the community. Photos too.

 

Download station

One of the area where Synology excels is the entire pipeline of scouting, grabbing, downloading, organizing and making available contents. For example, it’s possible to simply add a movie to the IMDb Watchlist and have it automatically downloaded at home, ready to be streamed to the TV via Chromecast. Or as soon as a followed TV series has a new episode aired, it is automagically downloaded on the NAS, with subtitles, ready to be viewed on XMBC, without any intervention. Amazing! :) Let’s see a potential setup for this. Please note that the following steps bring to illegal actions in different countries, so I highly discourage everyone in doing that.

One way for automagically having latest TV series episode without a single interaction, uses a RSS feed technique. On the search results page of Kickass and other services, it’s easy to find an RSS icon that points to an RSS feed with the results of the search. Every time the feed url is loaded, new results can be found inside it, if any.  A specialized service, like showRSS, can create more fine-tuned feeds, with a particular file quality only etc.
The default Download Station app is used to download BT/HTTP/FTP/NZB/Rss feed/eMule files, so the RSS feed url can be added to the app, checking “Automatically download all items” option. Voila’, it works :) A drawback of this approach is that non-useful downloaded files must be manually deleted and subtitles are not downloaded.
If Kickass-like services are banned in a particular country, generally changing the NAS or router DNS and use OpenDNS (208.67.220.220) or Google Public DNS (8.8.4.4), can workaround the limitation.

 

A more advance setup for the download station

Sick BeardSick Beard watches for new episodes of favorite TV shows and when they are posted, it downloads, sorts, renames, generates metadata and download subtitles, plus more. It is available as package in the SynoCommunity repo and, once installed (along with Python package), can be configured to use Download Station for downloading snatched files. SABnzbd can work too for nzb files (available in the SynoCommunity repo).
If Sick Beard is unable to communicate with Download Station directly, a Watched folder can be configured in Download Stations under Settings -> BT/HTTP/FTP/NZB -> Location, and SickBeard need to save torrent and nbz files in that folder, under Settings ->Search Settings -> NBZ or Torrent search -> Method: Black hole and selecting the same folder used before. Now Download Station will look for files in that folder, grab them as soon as they’re added by Sick Beard and start the download.
In the Settings, subtitles download can be enabled, while post-processing options are useful to rename and organize files and download metadata (for XMBC, for example) once Download Station has downloaded them.

couchpotatoSimilar approach for movies, this time using CouchPotato. Once installed from the SynoCommunity repo (Python package required too), Settings -> Downloaders -> Black hole directory to communicate directly with the Download Station. Then CouchPotato can be configured to follow IMDb or Movies.IO watchlist, Goodfilms user queue, Rottentomatoes, IMDb, Kinepolis charts and much more.
The potential issues with the standard version of CouchPotato is that it searches only on some newsgroup services, with a limited support for torrents. To solve that, is possible to install the CouchPotato Custom package instead (and Git and Python packages) from the SynoCommunity repo and, during the first launch, specify a github repo with a customized version of CouchPotato. For example, https://github.com/RuudBurger/CouchPotatoServer.git is also able to search on ThePirateBay and KickAssTorrent services. Change DNS as specified above if required.

SickRageIf ThePirateBay and KickAssTorrent are a need also for TV series, the same, “Custom” technique could be used with a fork of Sick Beard, called SickRage. Installation is pretty straightforward: first the Sick Beard Custom package (with Git and Python packages) from the SynoCommunity repo need to be installed and, during its first launch, https://github.com/echel0n/SickRage.git must be used as Fork URL and master as branch. That’s all, with more detailed instructions in the official forum. Configuration of SickRage follows the same settings of Sick Bears, but now there are a bunch of additional Search Providers to use ;)

 

The NAS is really a great piece of hardware, and software flexibility allows to use in a variety of different way (what about hosting your WordPress blog there?). Future exploration will bring, for sure, to additional setups (I’ve in mind something for IP cams, for example), so stay tuned!

 

Ambient sound generators for your concentration

Need some background, natural sound for your coding – browsing – reading sessions? Or a simple, relaxing, white noise generator? There are plenty of sites that offer this service, here some of them:

Rainymood: just open the page and a rainy sounds will start to play. Sometimes, in foggy cities, rain sound is better that a white fog all over you! Similar to Jazz’nd Rain.

Noisli: Set different elements power (water, wind, fire and others) and compose your melody. Available for mobile devices also.

Coffitivity: able to focus only when on a public cafe? Reproduce the same background noise and make things happen! For mobile too.

There are also other sites listed here, ad what about YouTube playlists? Happy listening :)

Fastboot mode for Android Wear devices (G Watch, Gear Live, SmartWatch 3)

Putting Android devices in Recovery mode / Fastboot, when you don’t have access to adb, is an art. And Android Wear, where you have only one button (the power button), adds even more entropy to the whole process.

So let’s gather the different procedures for the different watches.

LG G Watch

  • Find the reset button: it is on the back of the device, near the pins to charge it.
  • Press the button using a paperclip, a SIM ejector or your fantasy
  • Wait for LG logo to appears on screen
  • While the logo is showing, swipe from the top left-hand corner to the the bottom right-hand corner in one, diagonal swipe.
  • From the Fastboot menu, you can launch the Recovery Mode
  • Video

 

LG G Watch R

  • Turn off the watch and then turn it on normally
  • Wait for LG logo to appears on screen
  • While the logo is showing, swipe from the top left-hand corner to the the bottom right-hand corner in one, diagonal swipe, pressing and holding the power button
  • Alternatively, if the swipe doesn’t work, instead of swiping start tapping the screen with two fingers, one on the top left (10) and one on the bottom right (4), pressing and holding the power button
  • From the Fastboot menu, you can launch the Recovery Mode
  • Video

 

Samsumg Gear Live

  • Turn off the watch and then turn it on normally
  • Wait for Samsung logo to appears on screen
  • While the logo is showing, swipe from the top left-hand corner to the the bottom right-hand corner in one, diagonal swipe, pressing and holding the power button
  • The bootloader appears
  • Select the Fastboot or Recovery mode swiping downward, and swipe to the right to confirm the selection.

 

Sony SmartWatch 3

  • Detach any USB cable connected to the watch
  • Turn it off holding the power button and keep holding the button until the watch vibrates three times and then switches it off
  • Press the power button and keep holding. A blue screen that prompts to insert an USB cable will display
  • Double tap the power button
  • A black menu will display, with on-screen instructions
  • Move to Fastboot or Recovery Mode pressing the power button, once a time
  • Select Fastboot (or Recovery) by double pressing the power button

 

For extreme modding, there is also a third mode available, the Download mode.

New year (not yet), new life (not really), new theme (oh yes)!

A couple of changes happened to this blog: the main language and the theme.

Language: I feel the (fake) need to write to a more international audience, and I need to practice more with English, so the choice is easy ;)

Blog theme: after the first “Rainbowbreeze” theme I’ve created when I moved to WordPress more that 5 year ago, I finally switched to a new theme: DW_Minion by Designwall. Responsive, polish, linear and with still some yellow. Considering my very limited graphic ability, I think this is a good compromise.

Some small changes I applied to the default theme (Appearence -> Customize -> Custom Code -> Header Code):

<style>
#secondary {
 display: none;
}
 
.primary-inner {
 margin-right: 0;
}
 
#post-format {
 display: none;
}
 
@media (min-width: 768px) {
 .site-nav .widget {
 padding-top: 20px;
 margin-top: 20px;
 }
}
 
.lt-ie9 #page {
 padding: 40px 40px 0;
 margin-left: 40px;
}
@media (min-width: 1200px) {
 #page {
 padding: 40px 40px 0;
 }
}
 
.aktt_credit {
 display:none;
}
</style>

Basically, I totally hidden the secondary (right) column of the theme, some small changes to margins and paddings while on a desktop screen and other minor stuff.

Suggestion on improvements? Let me know!

Condividere la connessione dati mobile con Wind

20141018-WindOpenInternetSto usando da un po’ una nuova offerta di connettivita’ dati in mobilita’ che, ancora una volta, porta Wind diverse spanne avanti rispetto ai concorrenti. La nuova Open Internet, infatti, mi ha permesso di risolvere un problema non banale che avevo: tablet e cellulare entrambi connessi alla Rete, senza pagare un doppio canone dati, uno per ogni SIM.

In pratica, sulla SIM dello smartphone ho abilitato l’opzione Open Internet (che si abbina a una delle varie tariffe voce e messaggi, non ne richiede nessuna specifica) e ho poi esteso Open Internet al numero della SIM che ho nel tablet tramite l’opzione di Condivisione Internet. In questo modo, il tablet naviga come se avesse la sua connessione dati sulla sua SIM, ma il traffico viene tutto conteggiato sulla SIM dello smartphone.

Sembra incredibile? E invece non e’ neanche finita: si possono associare fino a 4 SIM a quella dov’e’ abilitata Open Internet, sia dello stesso intestatario, sia di intestatari diversi. Quindi potrei far consumare il mio traffico dati ad un mio amico / parente / partner.

Prezzo esorbitante? Canone mensile per ogni SIM? Niente di tutto questo: Open Internet parte da un prezzo base di 9 euro al mese per 3 GB di traffico, e l’associazione costa 3 euro a SIM una tantum. Stop. In piu’, se 3 GB non sono abbastanza, si puo’ scegliere una soglia maggiore di traffico, 6 o 12 GB.

Nell’offerta, poi, tutti i soliti benefici della connettivita’ dati di Wind: riduzione della velocita’ di navigazione se si supera la soglia di traffico mensile, possibilita’ di teethering, nessun filtraggio del traffico VoIP (ma viene fatto, ad esempio, sul traffico Torrent).

Direi un bell’affare visto che, dopo piu’ di un mese di utilizzo, non sono ancora incappato in costi nascosti o prerequisiti-trabocchetto necessari a far funzionare tutto. Non mi pare altri operatori si avvicinino minimamente a questo rapporto offerta / servizio.

CodeTheFuture @ Frog Milano, NinjaBoo e un altro hackathon nello zaino

NinjaBooSperimentare, stupirsi, scoprire nuovi tool ed esplorare scenari innovativi e divertenti anche se un po’ strampalati. Questo il mio approccio quando partecipo ad un hackathon, e CodeTheFuture, organizzato da Frog Design a Milano, non ha fatto eccezioni.

Su cosa mi sono divertito stavolta? Grazie a Fiorenza che ha portato un MindWave (e che ci ha messo l’idea di base), ci siamo giuggiolati nel creare una specie di nascondino mind-powered. Ambientato in un dojo dove si addestrano i ninja, lo scopo del gioco di tutti i giocatori e’ quello di scovare gli altri e fare un bel “Boo” alle spalle per farli spaventare e fargli perdere una vita (spavento rilevato appunto attraverso il MindWave). Ma attenzione, perche’ se si e’ troppo agitati mentre si va alla ricerca degli altri, il proprio smartphone inizia a suonare ed illuminarsi, rendendo piu’ facile essere trovati. Insomma, occorre essere calmi e letali nel fare “Boo”, controllo che solo i veri ninja sanno avere. Cosi’ e’ nato NinjaBoo.

Tecnologicamente parlando, io e Fiorenza ci siamo occupati di creare l’app Android che gestiva il gioco e leggeva i dati del MindWave, Christian ha realizzato il backend in PHP per raccogliere i giocatori partecipanti e tenere aggiornata la classifica delle morti di ognuno durante il match (rilevate e trasmesse dallo smarthphone) e poi ho creato un’app su Android Wear per avere sotto controllo le proprie morti e il tempo mancante alla fine del match con un semplice gesto del polso. Tutte le lodi del mondo a Laura che, da brava visual designer, ha saputo rendere la nostra idea bella, presentabile e usabile!

Un paio di considerazioni sul MindWave sono d’obbligo: Collegabile via bluetooth, l’aggeggio legge le onde celebrali, fa i suoi calcoli e restituisce tre valori: livello di emotivita’, livello di attenzione (entrambi su una scala discreta da 0 a 100) e occhi chiusi o aperti, una o due volte al secondo circa. Questi due valori hanno andamenti direi “un po’ bizzarri”, pero’ in situazioni abbastanza stabili sono accettabilmente veritieri. Ad esempio, ascoltando una canzone che piace, il livello di emotivita’ e’ quasi sempre a fondoscala e quello di attenzione quasi sempre vicino allo zero, perche’ l’azione e’ qualcosa che facciamo con piacere e quasi distrattamente. Se invece cantiamo la stessa canzone, anche l’attenzione sale di molto, visto che cantare impegna molte risorse (seguire il testo, ricordarsi le parole, modulare la voce, cantare ecc). Anche pensare a certi concetti felici fa salire l’emotivita’ e mantiene bassa l’attenzione, ma pensarci troppo fa salire quest’ultima. Insomma, due valori sono pochini per fare grandi “letture del pensiero”, ma quando si considera il contesto, allora qualche deduzione e’ possibile. Con questo approccio abbiamo “intervistato” dei volontari scelti mettendoli a loro agio, facendo domande facili e tranquille, e poi spaventandole improvvisamente per registrare come variavano i loro livelli (come valori nel tempo), e alla fine abbiamo trovato un modello accettabilmente preciso che rilevasse questo picco di paura. Divertentissimo, per noi sicuramente, per gli intervistati forse un po’ meno ;).

Pur essendo ancora troppo invasivo per passare inosservato, gli scenari che si aprono sul suo utilizzo sono comunque molteplici. Interessante pensare ad un prof o un relatore che riceve feedback immediati sul livello di attenzione (e di occhi chiusi) durante la propria lezione direttamente da MindWave indossati dall’audience, cambiando stile di presentazione oppure rompendo gli schemi quando questo scende troppo. Inoltre una sessione di laser game (o soft air) offre il perfetto scenario dove indossarli, dovendo gia’ portare un casco. Che dire: siamo agli inizi, ma la percezione che ne vedremo delle belle ed interessanti e’ davvero forte.

PartecipantiParlando dell’hackathon in se’, giudizio piu’ che positivo, esperienza da consigliare! Cercando il pelo nell’uovo, c’e’ qualcosina che avrei organizzato diversamente. Piccole migliorie nella cura dell’ambiente soprattutto. Ad esempio con musica durante l’evento: vero che si possono sempre usare le cuffie, ma mettersele automaticamente ti isola. E in un hackathon contaminazione e condivisione sono tutto. Inoltre, nonostante pranzo e cena siano stati davvero di qualità, avrei aggiunto qualche snack, delle barrette, un po’ di frutta e paninetti sparsi per calmare i morsi della fame durante il resto del tempo. E magari anche l’orario: con lo stop al codice alle 21 e proclamazione dei vincitori alle 23.15, chi doveva tornare a casa lontano da Milano non ha avuto vita facile. Infatti dei ragazzi di Roma sono dovuti scappare appena fatta la loro demo (tutto il mio rispetto per essere venuti), io ho preso l’ultimissimo treno utile per Pavia e i ragazzi di Bologna anche avevano almeno un paio d’altre ore davanti per tornare a casa. Comunque puntigli, niente di piu’.

Pensando invece a cosa e’ andato magnificamente, direi su tutto il numero di partecipanti: avere 5 team a presentare gli hack realizzati ha permesso di scendere nel dettaglio delle idee, *giocare con i prototipi realizzati* (e non con 3 slide a team da mostrare in rapida successione nel mezzo di un susseguirsi ininterrotto di altre presentazioni), fare domande, discutere. Sorridere e non sbadigliare. Ed ha anche permesso ai design di Frog di seguire i vari team, fornire supporto e cultura dalla fase di brainstorming a quella di presentazione, a me di scoprire gli hack degli altri team durante la giornata, un po’ dando una mano con qualche problema da risolvere, un po’ curiosando. Tutto ossigeno per la mia mente!

NinjaBoo, the winner team of CodeForFuture Come dicevo all’inizio, adoro gli hackathon perche’ sono il vero (e direi anche unico) momento creativo di un team (dev e designer) libero da ogni vincolo di obiettivo necessariamente significativo. Puoi tentare un’idea, disegnarla e codarla perche’ ti piace, sperimentando nuovi tool (ma dove ero io quando hanno pubblicato Retrofit per Android? Tutte le librerie dovrebbero essere fatte cosi’ bene!!) per il solo gusto di metterci le mani sopra. E’ il momento magico del dev per uscire dalla propria zona di comfort ed esplorare. Rischiando solo un po’ del proprio tempo, ma ricevendo in cambio sensazioni positive, cultura e, soprattutto, un sacco di nuove e utilissime interazioni sociali. E no, non devono essere necessariamente l’occasione per “fare una startup”, ci sono altri eventi per quello.

Vabbe’, puoi quando vinci anche, allora “Everything is awesome“! ;)