vineri, 2 ianuarie 2015
joi, 1 ianuarie 2015
ce-am facut azi - Dropbox sync
/H copiaza fisierele de sistem
/D:m-d-y Copies files changed on or after the specified date. If no date is given, copies only those files whose source time is newer than the destination time. (His suggestion contains no date so all files in that directory - and sub directories (even if empty 'cause of /E) are copied over if newer than the versions in the place they're being copied to.)
/E Copies directories and subdirectories, including empty ones. Same as /S /E. May be used to modify /T.
/C Continues copying even if errors occur.
/R Overwrites read-only files.
/I If destination does not exist and copying more than one file, assumes that destination must be a directory.
/K Copies attributes. Normal Xcopy will reset read-only attributes.
/Y Suppresses prompting to confirm you want to overwrite.
luni, 29 decembrie 2014
un link mișto de germana
sâmbătă, 27 decembrie 2014
ce-am facut azi, Pebble, Tasker si altele
au facut cei de la italki o aplicatie pentru android
podcast addict -- pentru podcasturi in germana, daca oi reusi sa gasesc ceva interesant
electrodroid - care ar trebui sa aiba referinte pentru electronica
guitar riff pro - pentru memorie
Radio FM - un inlocuitor pentru Tune Radio Pro
Lockito - pentru simularea vitezei pe GPS, vezi mai jos
PVSTAR+ PRO -- play muzica de pe youtube si poti sa dai switch la alta aplicatie sau cu ecranul stins, ca sa adorm
Media Utilities - plugin pentru Tasker pentru Next, Prev, Play/Pause pentru o anumita aplicatie
canvas for pebble -- l-am testat, e un program ok, dar nu stie sa declanseze taskuri in Tasker prin butoanele ceasului. Ce am realizat important cu el a fost cum sa folosesc de fapt TASKWATCH. Modalitatea de lucru e urmatoarea: in Canvas setezi variabila din Tasker, dar o sa-ti apara in clar &Var_cutare. Ca sa apara valoarea concreta, trebuie sa declansezi in Tasker o actiune care cheama pluginul corespunzator -- Canvas in cazul asta. In actiunea aia impingi tu variabila ta.
Parametrii pentru pluginul de Canvas din Tasker:
Name -- blabla_cutare
Value -- aici impingi variabila ta in care ai stocat anterior informatie in Tasker. %VariabilaMea
Setari in aplicatia Canvas for Pebble:
setezi un screen dinamic parca, la 'name' alegi numele corespunzator, adica blabla_cutare in cazul de mai sus, iar la variabila afisata nu bagi %VariabilaMea, ci bagi doar %V sau $V, ce are el acolo -- adica o comanda interna CanvasForPebble, nu pasezi direct variabila din Tasker ca nu stie ce sa faca cu ea.
Partea foarte foarte buna a fost ca am reusit sa testez cu Canvas ce imi doream de mult -- sa imping la fiecare secunda valoarea vitezei GPS din Tasker in Pebble, si sa fie afisata cum trebuie.
Am invatat sa fac o bucla For in Tasker
TASK: FOR
Variable: -- contorul tau, I-ul, for i=1 to 15
Items: -- de la cat la cat sa mearga contorul. De la 1 la 15 se traduce prin 1:15 in Tasker
Restul actiunilor ulterioare vor fi subordonate buclei for pina o incheiem printr-un TASK: ENDFOR
Bucla mea de apelare a vitezei din GPS:
A1) For
&Contorqeu, 1:3600
A2) Wait 1 sec
A3) Variable set
%Noueu, %LOCSPD*3.6
// aici Noueu e variabila in care o sa stochez viteza, si pe care o voi pasa pluginului de Canvas. LOCSPD e variabila interna Tasker, de-aia e doar cu majuscule, si contine viteza returnata de receptorul GPS. Pentru ca mi-o returneaza in metri pe secunda, inmultesc cu 3.6 ca sa obtin km/h.
A4) Perform Task
cheama pluginul de Canvas updatat cu Noueu
A5) End For
CE AM FACUT PINA ACUM
TASKWATCH:
- In aplicatia Pebble TW am impartit ecranul in layere. Initial nu se vedeau cum ar fi trebuit, din cauza ca se incalecau. Le-am pus pe toate pe inactiv si le-am activat unul cate unul cu backgroundul layerului alb pe fundalul general negru, ca sa vad clar ce suprafata acopera un layer si daca textul se vede ok.
Pebble TW/ Text Layers -- si definesti suprafata fiecarui layer, precum si parametrii de culoare si font.
Expresiile locale: %R, $BAT -- interogheaza direct ceasul.
-- daca vrei sa afiseze o variabila din Tasker, nu conteaza ce text introduci in Pebble TW/Text Layers. Nu aici bagi variabila din Tasker, aia o impingi tu explicit in Tasker prin pluginul de PTW.
--Pebble TW/Select Tasks:
butonul de sus:
clic simplu : imi creste volumul media cu o unitate -- pentru bicla, cind vreau sa modific simplu volumul
clic dublu: melodia urmatoare din PlayerPro -- pentru bicla, cind vreau sa trec de la o melodie sau lectie la urmatoarea.
CUM FAC:
- Volumul crescut:
A1: Media Volume: %VOLM+1
Aici o mica notita -- Media Volume iti arata doar un slider by default, si ca sa introduci tu o valoare anume trebuie sa dai clic pe iconul ala care seamana cu un recycle.
Aici bagi de mana %VOLM care e variabila interna pentru volumul media in Tasker, si o incrementez cu o unitate.
- Melodia urmatoare: am incercat cu Tasker/Script/Shell/Input key 87 care e next media track, dar era destul de variabil comportamentul, trebuia sa aduc explicit aplicatia in foreground, si daca nu era in ecranul care trebuie sau daca melodia era deja pe pauza, nu functiona cum trebuie. Asa ca am instalat o aplicatie care se cheama Media Utilities care vine cu un plugin de Tasker care permite controlul unei aplicatii media la alegere, si care o sa aiba avantajul ca voi putea targeta aplicatii de muzica diferite in caz ca o sa am nevoie, fata de INPUT KEY 87, care era o chestie globala.
A1: Media Utilities Action: Next
butonul din mijloc:
clic dublu: pause/play PlayerPro
butonul de jos:
clic simplu: scade volumul media cu o unitate
clic dublu: previous track
clic lung: find my phone -- pentru situatiile frecvente cind nu stiu unde mi-am pus telefonul, apas butonul de pe ceas si fac telefonul sa cante o melodie cu volum maxim.
Declanseaza o actiune in Tasker care face urmatoarele:
A1: Media Volume = 15
A2: Music Play -- melodia mea de alarma
LAYERELE
Layer 3: Viteza GPS
A1: For %Contor2, 1:3600
A2: Wait 1 sec
A3: Variabile Set %Viteza, %LOCSPD*3.6
Aici am avut niste probleme, ramanea 0 viteza. Nu stiu clar de ce. Am luat un program de simulat deplasarea pe GPS, Lockito, ca sa verific pe ceas daca se updateaza corect. Cu asta aparent se updateaza ok, dar ramane de vazut.
A4: Pebble TaskWatch
Update text layers
Update text layers 4, active, text: %Viteza
A5: End For
Layer 2: Ora din pebble (%R)
Layer 5: Bateria din Pebble ($BAT)
Layer 1: Temperatura exterioara
Pentru temperatura, fac o interogare de pe http://openweathermap.org. Iti faci un cont, iei o cheie unica de identificare, si trimiti un http get din Tasker cu cheia ta unica de identificare in coada.
Open Weather o sa-ti trimita un carnat de date. In Tasker CAUT segmentul care contine "temp", si il extrag intr-o variabila impreuna cu urmatoarele 7 caractere. O sa obtin ceva de forma "temp":275.44
Cautarea se face cu Variable Search and Replace. Functia asta imi ia ca input variabila in care sa caute,si ca output o variabila pe care o introduc eu. Variabila asta va fi automat transformata intr-un sir, iar rezultatele cautarii vor fi plasate in sloturile sirului.
Adica am ca input %VariabilaTextDeCautat
si ca output
%VariabilaMea
iar rezultatele vor fi automat plasate in
%VariabilaMea1, %VariabilaMea2, etc.
Variabila asta o sparg in doua de la separatorul doua puncte. Prima parte o sa fie "temp", si a doua "275.44.
Tasker executa spargerea definind automat si pe sestache o matrice. Astfel, daca ii dau sa sparga variabila %Variabila1 (care la randul ei e un termen dintr-o matrice), o va sparge aici in doua parti
%Variabila11 si %Variabila 12.
In cazul de mai sus ma intereseaza Variabila12.
Concret, taskul meu va arata astfel:
A1: HTTP Get
Server:Port -- api.openweathermap.org
Path: /data/2.5/weather?q=Bucharest,ro&APPID=a400b6cheiameaunica
Timeout: 1
Output File: Folderul Tasker Sandbox, fisierul tempdelaopenwth.txt
A2: Read File
File: fisierul de mai sus
To Var: %Wthtextul
// incarc intr-o variabila fisierul smuls de pe open weather
A3: Variable Search Replace
Variable %Wthtextul
Search "temp":......
//Aici, fiecare punct inseamna un caracter. 6 caractere, sau 5, in functie de cate zecimale vrei.
Nu mi-era clar cum functioneaza regex, si am gasit un site interesant: http://regexone.com/
Store Matches In
%Tempforsplit
//Asta face automat variabila %Tempforsplit1 care contine ce ma intereseaza pe mine - prima casuta din sir
A4: Variable Split
Name: %Tempforsplit1
Splitter: doua puncte :
//Asta o sa creeze automat variabila %Tempforsplit12
A5:Variable Set
Name: %Wthtemperatura
To: %Tempforsplit12-273.1
// aici fac conversia din Kelvin in Celsius, si o fac cu o singura zecimala.
Do Maths: bifat
A6: Pebble TaskWatch
Update text layers: Layer 1, active, Text: %Wthtemperatura
vineri, 26 decembrie 2014
marți, 23 decembrie 2014
Doctorul iese din sala de nasteri cu un copil.
Il tinea atarnat de un picior. Tatal incremenit.
Doctorul loveste copilul de primul perete, il ia de maini si il da cu capul
in usa.
Tatal este terifiat.
Sange peste tot, doctorul rade sinistru, tatal la un prag de infarct.
Doctorul devine brusc serios si compatimitor:
- Haideti d-le, nu mai stiti de gluma?! A murit la nastere.
=====================
Si alt banc, sa vedeti diferenta dintre o revista foto straina si una romaneasca:
=====================
In sala de operatie (chirurgul catre asistent):
- Anestezie.
- De-a noastra sau de import?
- De import.
- De import s-a terminat.
- Atunci de-a noastra.
- Nani, nani...
sâmbătă, 20 decembrie 2014
cfa
The popularity of his writing, and indeed, his (generally German) protagonists, are seen as having filled a lack in the German psyche which had few popular heroes until the 19th Century.[16] His readers longed to escape from an industrialised capitalist society, an escape which May offered.[17] He was noted as having "helped shape the collective German dream of feats far beyond middle-class bounds"[16] and contributed to the popular image of Native Americans in German-speaking countries.
The image of Native Americans in Germany is greatly influenced by May. The name Winnetou even has an entry in the main German dictionary Duden. The wider influence on the populace also surprised post-WWII occupation troops from the US, who realised that thanks to Karl May, "Cowboys and Indians" were familiar concepts to local children (though fantastic and removed from reality).
Ce-am facut azi - protocolul MTP
Are doua chestii foarte interesante:
Ce-am facut azi - curea silicon
Cureaua de silicon e misto, poti sa faci baie cu ceasul la mana si din cauza asta e importanta, pentru ca nu trebuie sa-l mai dai jos de la mana, si poti vedea cat e ceasul si in baie.
Ce-ar fi sa pui pe o tastatura veche un afisaj mic si un emitator BT, ca notebook instant, si agati tastatura pe un perete in baie sau mai stiu eu unde.
Pun cardul de 32G in Note 2.
Am gasit un soft misto care muta datele babane pe cardul SD.
sâmbătă, 13 decembrie 2014
Ce-am facut azi - Android Studio
Am testat OneNote 2013 ala free care de fapt te obliga sa salvezi EXCLUSIV in cloud. Deci canci backup personal, esti la mana Microsoft, plus toate ideile tale la ei pe server.
Am facut un backup masiv la Papyrus si l-am instalat p-ala premium. Deci am astupat o vulnerabilitate ca am stat tot timpul cu grija ca nu functioneaza backupul ala facut de Titanium. Care de fapt nici n-a prea functionat, s-a completat pina la urma backupul, dar nu stiu cum, arata ca si cum si-ar fi salvat singur papyrusul backupul in cloud cumva si l-ar fi restabilit de-acolo. Sau poate chiar a fost informatia din Titanium.
Am securizat si samba ftp.
Total Commander a capatat butonul foarte util de share de-abia intr-un beta. In varianta de pe Play Store nu exista butonul. Iar in ultima varianta beta are si suport pentru multiwindow pe Note. Si Papyrus Premium cunoaste acum multitasking.
marți, 9 decembrie 2014
tasker input tap
Am făcut tasker sa genereze apăsări de buton la coordonate date. Astfel, pot porni gps essentials care by default nu pornește cu ecranul de dashboard, și simulez ca apa eu pe ecran.
Tasker are nevoie de root. O problema era ca nu cerea root. Am rezolvat făcând un task care șterge un fișier oarecare și care cere drepturi de root (bifezi căsuța).
Comanda corecta e run shell input tap 155 315, fără virgula. Sintaxa am verificat-o în Terminal. Comanda din Tasker trebuie și ea sa aibă bifata căsuța de root.
Ca sa vezi coordonatele necesare, în setările de Android enablezi Show pointer location in developer options.
sâmbătă, 6 decembrie 2014
mecanismul motan - usa inchisa si lasata doar o crapatura
E vorba aici de optiunile si deciziile fiecaruia, si felul in care le poti modifica tu ponderea prin amenintarea cu inchiderea ferestrei de timp. E vorba de modificarea voita a acestor ponderi, la fel cum pictezi o fotografie cu modificarea dimensiunii elementelor care vrei sa fie importante sau neimportante in poza.
E vorba de cunoscut adversarul si de evaluat contextul, ca sa iti dai seama daca ai sau nu o parghie prin intentia lui de a trece dincolo de usa.
miercuri, 3 decembrie 2014
despre pebble 1
chestii bune
conexiunea bluetooth e rezistenta la distante mari - 10m cu pereți și se reface automat-ceasul te bâzâie la deconectare
chestii proaste
aplicația se blochează și are o interfață care te obliga aiurea sa updatezi sau sa verifice automat daca ai toate aplicatiile la zi cand poate tu nu ai chef de update automat
marți, 2 decembrie 2014
quotes - CUM și DE CE
“The man who knows how will always have a job. The man who knows why will always be his boss.”
Ralph Waldo Emerson
luni, 1 decembrie 2014
Ce-am facut azi -- pebble watchface
Dupa aia imi dadea o eroare cretina de CRC error cind incercam sa instalez ceva. Am dat un factory reset la ceas, care e destul de dubios -- ramane agatat destul de mult pina se reseteaza, vreo 5 minute, dupa care intra automat intr-o procedura de update unde scrie 'updating'. Am iesit cu cancel pina la urma din update ca ramasese agatzat si in asta.
Am facut o fatza custom la http://www.watchface-generator.de/
http://www.wf-g.de/wf/20141201/bigfonteu2/
luni, 24 noiembrie 2014
ce-am făcut azi -recapitulare
-Am făcut reminder cu magnetometru, butoane de cancel și rezolvat și armat dimineața
- am făcut citate random funcționale în Tasker și am editat scenele cu colțuri rotunjite
-am folosit reminderul pentru lista de adverbe pentru Duolingo! Dacă nu aveam reminder, nu îmi aduceam aminte!
-am luat calendar Snooze care îmi face nag pentru Google Calendar
-am luat The Brain care e Personal Brain pentru Android
- am repetat un pic din Duolingo în metrou
- am reușit să găsesc citate în daneză - am căutat „Thomas Edison 99 site: dk"
-am dat muzică prin Bluetooth de pe laptop pe Sony MW 600. Partea proastă e că sunetul e mono, și slab calitativ
- am luat o aplicație pentru pairing BT automat în Tasker
- am alergat 25 min
- am văzut pebble glance, care e posibil sa meargă cu tasker pentru flash card
sâmbătă, 22 noiembrie 2014
Ce am facut azi - Chrome sessions si AnyFlash GoogleDrive
Am refacut workflowul pentru AnyFlash + GoogleDrive. Intru in fiecare seara, Chrome pleaca singur, se deschide automat sesiunea care ma intereseaza, care are dictionarul de germana intr-o parte si spreadsheetul pentru flashcards in partea cealalta. Adaug 10 prepozitii si le am disponibile instantaneu, pentru metroul de a doua zi sau chiar din aceeasi zi daca le bag dimineata.
Am setat parola la samba din router. Daca bagi parola corect si iti cere in continuare parola, inseamna ca userul tau nu are drepturi de read setate pe router.
Ce-am facut azi - Chaos Control, Trello, MLO
Am luat Chaos Control Premium.
Ce am facut azi - Tasker
Ideea cu magnetul îmi aparține, nu m-am inspirat de nicăieri. Aveam nevoie de un trigger cu rază mai mare de acțiune.
- probleme rezolvate: Tasker e destul de bugos. De exemplu, profilele puse pe ON nu se activează decît dacă ieși din Tasker cu butonul de home. În notificări vor fi prezente ca inactive, dar funcționează
- cea mai simplă cale să testezi activarea e să faci un profil cu actiunea de STATE - sensors - proximity sensor
-
Problema ulterioară e să afișez două butoane, unul cu Amână și altul cu Rezolvat.Cel cu Rezolvat trebuie să închidă profilul respectiv al aplicației pînă a doua zi. Cel cu Amână trebuie doar să închidă popup-ul fără să facă nimic.
Probleme rezolvate:
- am creat butoanele astfel: am băgat ca acțiune pentru profilul de magnet un ALERT - POPUP TASK BUTTON.
POPUP TASK BUTTON: are ca parametri:
TEXT (care nu știu ce face, trebuie să aflu -- probabil poate fi folosit doar ca să afișeze numele unei variabile, nu și custom text, ceea ce mi se pare o timpenie pentru ca variabilele oricum sint separate cu %, deci nu s-ar confunda
TASK -- aici dai clic pe butonul de search si alegi un task. Trebuie sa ai niste taskuri construite in prealabil ca sa aleaga din cele existente. Se pare ca nu pot sa pun un label pe taskuri, adica ce pun acolo ca text nu o sa fie textul afisat pe buton, asa cum ar fi normal, ci chiar numele taskului. Probabil ca si daca l-as scrie de mana in loc sa dau pe search, ar fi aceeasi chestie.
Butonul de Amana: am construit pentru el un task care cheama doar un ALERT de tip flash cu textul ”Ok, aman”.
Butonul de Rezolvat: am construit pentru el un task care cheama o actiune de tip TASKER: Profile Status toggle, deci pune pe off tot profilul de detectie magnetica. Am introdus chiar numele profilului ca parametru si a functionat bine. Daca nu exista nici un profil cu numele pe care il bagi, iti arata un triunghi rosu langa actiune.
Am rezolvat și cu fereastra de dialog. Probleme de rezolvat:
- exportul procedurilor mele ca să le am și pe viitor sau pe alt telefon
- cum anume funcționează scenele ?
- cum fac să afișez textul meu pe butoane ?
- Trebuie sa fac o actiune care sa trezeasca periodic profilul de magnetometru, deci sa il readuca pe ON dupa ce il trec eu pe OFF din butonul de Rezolvat.
Probleme rezolvate:
- exportul global se face din butonul de meniu - DATA - BACKUP, și o varsă direct în folderul Tasker în fișierul userbackup.xml. Va trebui să-l agăț pentru backup.
- taskurile se pot exporta si individual in diverse formate, daca dai clic pe ele si export.
DE FACUT:
- Un ceas gen Omat ar fi foarte bun pentru detectarea cind esti la calculator sau in bucatarie sau etc, daca ar avea magnetometru
- trebuie sa vad cum functioneaza tagurile alea cu baterie pentru iphone
- trebuie sa vad daca se poate face un booster pentru taguri NFC pasive sau daca exista taguri NFC active
- trebuie sa fac in Tasker un buton pentru bicla : porneste GPS, porneste bluetooth, face pairing cu MW600, porneste Strava Recording, porneste GPS Stats, porneste GPS Essentials
miercuri, 12 noiembrie 2014
ce-am făcut azi
Am găsit traduceri pe duolingo
am realizat ca e un progres real la flotari - am încercat penultima ședința și a mers mult mai lejer
am luat jocuri .sorcery. si king of the hill
Am luat doua aplicații interesante - my life organised si tasklife
si una de sunet pentru recunoașterea notelor muzicale - melodic
duminică, 9 noiembrie 2014
ce-am facut azi
am luat diverse apps de e mobilism
adblocker
player pro cu lyrics functionale
un dicționar de daneza
am luat alarm clock, care cred ca e bun sa iți agate o alarma de notificările din calendar
si calendar snooze, care îți baga snooze persistent cred pentru notificările din calendar
pe astea doua le amân deocamdată
Cum ar trebui să funcționeze un organizer pentru add-ul meu
Trebuie să pot să adaug un eveniment ori de cîte ori îmi aduc aminte de ceva.
Cam toate programele pentru „de făcut” suferă de interfață cretinoidă. Cînd adaug un eveniment, îmi bagă o pagină unde tre să dau cinșpe clicuri ca sa termin, ceea ce e o idioțenie. Nu trebuie folosite funcțiile android default. Trebuie să introduc o oră anume nu prin tastatură, ci prin slide pe rotiță virtuală sau pe un ecran de ceas, ca să nu mă oblige să dau 3 clicuri ca să bag ora și încă unul de confirmare. În afară de asta rahatul ăla de tastatură îmi rupe focusul . Trebuie o opțiune separată pentru „peste x minute”, unde x să fie 10 minute, 34 de minute, 70 de minute, adică valori caracteristice mie adăugate într-o listă scurtă.
Batch windows ADD
==================
@echo off
REM - introduc o pauza ca sa aiba timp OS-ul sa isi porneasca programele de baza. Altfel pornesc toate programele din batch simultan si ingheata calculatorul.
timeout /t 100
REM - pornesc pdf-urile prima data pentru ca sint mai rapide si ca sa am ceva de facut intre timp
start "C:\Program Files (x86)\Adobe\Reader 9.0\Reader\AcroRd32.exe" "F:\FLORIN\ARDUINO\Carti bune\Arduino Cookbook, 2nd Edition.pdf"
start "C:\Program Files (x86)\Adobe\Reader 9.0\Reader\AcroRd32.exe" "F:\FLORIN\ARDUINO\Carti bune\Beginning C for Arduino.pdf"
REM - introduc o pauza ca sa aiba timp pdf-urile sa porneasca pina lansez toate celelalte programe simultan
timeout /t 10
start "" "C:\program files (x86)\google\chrome\application\chrome.exe"
start "" "C:\program files (x86)\mozilla firefox\firefox.exe"
REM start "" "C:\Program Files (x86)\Opera\25.0.1614.50\opera.exe"
REM start "" "C:\Program Files (x86)\Handbrake\Handbrake.exe"
start "" "C:\Program Files (x86)\Microsoft Office\Office12\ONENOTE.EXE"
REM - pornesc Windows Layout Manager ca sa extrag mai usor din el calea programelor pornite. Pe de alta parte, calea pot s-o iau si din Task Manager, dar cred ca e mai bine sa vad programul separat, imi aduce aminte ce trebuie sa fac.
start "" "C:\!akkudownload\winlayoutmanager\WinLayoutManager.exe"
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
==================
vineri, 7 noiembrie 2014
joi, 6 noiembrie 2014
miercuri, 5 noiembrie 2014
ADHD startup
Iarasi o idee buna cred ca e sa pui ceva care sa te motiveze pe tine personal. Daca pornesti batchul de slabire, sa pui ca poza de startup una cu tine umflat.
luni, 3 noiembrie 2014
duminică, 2 noiembrie 2014
Arduino - conectare senzor de temperatura
Firul negru vine la GND pe Arduino, cel roșu la masă. Firul galben e cel care oferă informația I2C.
Firul galben se leagă la un pin digital, nu analogic, deci bănuiesc că protocolul de comunicare I2C se bazează pe scuiparea unor valori digitale on/off foarte repede, care vor conține temperatura finală, în float.
Între firele galben și roșu trebuie pus un rezistor de 4.7 KOhm.Eu am pus 5 rezistori de 1Ohm înseriați (maro-negru-roșu-auriu).
Adresa senzorului meu de temperatură este:
0x28, 0xB0, 0x4C, 0xC0, 0x04, 0x00, 0x00, 0x76
Codul pentru citirea valorilor din firul galben:
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 3
// mai sus definește variabila OWB cu valoarea pinului pe care am legat firul galben. Aici am legat firul galben //la pinul 3.
// Setup a oneWire instance to communicate with any OneWire devices
OneWire oneWire(ONE_WIRE_BUS);
// aici se folosește de library ca să comunice pe pinul 3, dar nu mi-e clar dacă vorbim de o definire de //variabilă sau de un apel de subrutină. Îmi pare apel de procedură, la modul „cheamă procedura oneWire, //injectează-i parametrul OWB, și varsă rezultatul în variabila OneWire.
//De fapt dacă stau să mă uit bine, îmi pare chiar un apel de librărie, adică ”accesează librăria OneWire, //cheamă din ea procedura oneWire, și pasează-i valoarea 3.Ce se întîmplă mai departe în background mă //depășește.
// Pass our oneWire reference to Dallas Temperature.
DallasTemperature sensors(&oneWire);
// problema e că nu știu niciodată care sînt comenzi fixe și care e inputul programatorului.Aici îmi pare ca //apelează library DallasTemp, cheamă ”sensors” și pasează valoarea din libraria cealaltă.
// Assign the addresses of your 1-Wire temp sensors.
// See the tutorial on how to obtain these addresses:
// http://www.hacktronics.com/Tutorials/arduino-1-wire-address-finder.html
DeviceAddress insideThermometer = { 0x28, 0xB0, 0x4C, 0xC0, 0x04, 0x00, 0x00, 0x76 };
//nu știu ce e DeviceAddress și din ce librărie face parte.
//Am găsit asta în DallasTemp.h:
//typedef uint8_t DeviceAddress[8];
//Și asta în DallasTemp.cpp:
//void DallasTemperature::begin(void)
//{
// DeviceAddress deviceAddress;
void setup(void)
{
// start serial port
Serial.begin(9600);
// Start up the library
sensors.begin();
// set the resolution to 10 bit (good enough?)
sensors.setResolution(insideThermometer, 10);
}
void printTemperature(DeviceAddress deviceAddress)
{
float tempC = sensors.getTempC(deviceAddress);
if (tempC == -127.00) {
Serial.print("Error getting temperature");
} else {
Serial.print("C: ");
Serial.print(tempC);
Serial.print(" F: ");
Serial.print(DallasTemperature::toFahrenheit(tempC));
}
}
void loop(void)
{
delay(2000);
Serial.print("Getting temperatures...\n\r");
sensors.requestTemperatures();
Serial.print("Inside temperature is: ");
printTemperature(insideThermometer);
Serial.print("\n\r");
Serial.print("\n\r\n\r");
}
Arduino - comanda #define
http://arduino.cc/en/Reference/Define
#define is a useful C component that allows the programmer to give a name to a constant value before the program is compiled. Defined constants in arduino don't take up any program memory space on the chip. The compiler will replace references to these constants with the defined value at compile time. This can have some unwanted side effects though, if for example, a constant name that had been #defined is included in some other constant or variable name. In that case the text would be replaced by the #defined number (or text).
In general, the const keyword is preferred for defining constants and should be used instead of #define.
Arduino defines have the same syntax as C defines:
Syntax
#define constantName valueNote that the # is necessary.
Example
#define ledPin 3
// The compiler will replace any mention of ledPin with the value 3 at compile time.
Tip
There is no semicolon after the #define statement. If you include one, the compiler will throw cryptic errors further down the page.#define ledPin 3; // this is an errorSimilarly, including an equal sign after the #define statement will also generate a cryptic compiler error further down the page.
#define ledPin = 3 // this is also an error
Arduino - conectarea unui SD card
Pinii card readerului sînt dublați, dar e suficient să legi un singur rînd.
Corespondența între SD card-reader și Arduino:
gnd - gnd arduino
3.3 not used
5v - 5v arduino
cs - 53
mosi - 51
sck - 52
miso - 50
gnd - not used
Deci GND la GND, 5V la 5V, și restul sînt pini de transmisie de date.
Codul pentru testarea prezenței cardului:
Modificările făcute față de pinii inițiali (necesare pentru Arduino Mega):
const int chipSelect = 53;
pinMode(53, OUTPUT); // change this to 53 on a mega
========================
/*
SD card test
This example shows how use the utility libraries on which the'
SD library is based in order to get info about your SD card.
Very useful for testing a card when you're not sure whether its working or not.
The circuit:
* SD card attached to SPI bus as follows:
** MOSI - pin 11 on Arduino Uno/Duemilanove/Diecimila
** MISO - pin 12 on Arduino Uno/Duemilanove/Diecimila
** CLK - pin 13 on Arduino Uno/Duemilanove/Diecimila
** CS - depends on your SD card shield or module.
Pin 4 used here for consistency with other Arduino examples
created 28 Mar 2011
by Limor Fried
modified 9 Apr 2012
by Tom Igoe
*/
// include the SD library:
#include <SD.h>
// set up variables using the SD utility library functions:
Sd2Card card;
SdVolume volume;
SdFile root;
// change this to match your SD shield or module;
// Arduino Ethernet shield: pin 4
// Adafruit SD shields and modules: pin 10
// Sparkfun SD shield: pin 8
const int chipSelect = 53;
void setup()
{
// Open serial communications and wait for port to open:
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}
Serial.print("\nInitializing SD card...");
// On the Ethernet Shield, CS is pin 4. It's set as an output by default.
// Note that even if it's not used as the CS pin, the hardware SS pin
// (10 on most Arduino boards, 53 on the Mega) must be left as an output
// or the SD library functions will not work.
pinMode(53, OUTPUT); // change this to 53 on a mega
// we'll use the initialization code from the utility libraries
// since we're just testing if the card is working!
if (!card.init(SPI_HALF_SPEED, chipSelect)) {
Serial.println("initialization failed. Things to check:");
Serial.println("* is a card is inserted?");
Serial.println("* Is your wiring correct?");
Serial.println("* did you change the chipSelect pin to match your shield or module?");
return;
} else {
Serial.println("Wiring is correct and a card is present.");
}
// print the type of card
Serial.print("\nCard type: ");
switch(card.type()) {
case SD_CARD_TYPE_SD1:
Serial.println("SD1");
break;
case SD_CARD_TYPE_SD2:
Serial.println("SD2");
break;
case SD_CARD_TYPE_SDHC:
Serial.println("SDHC");
break;
default:
Serial.println("Unknown");
}
// Now we will try to open the 'volume'/'partition' - it should be FAT16 or FAT32
if (!volume.init(card)) {
Serial.println("Could not find FAT16/FAT32 partition.\nMake sure you've formatted the card");
return;
}
// print the type and size of the first FAT-type volume
uint32_t volumesize;
Serial.print("\nVolume type is FAT");
Serial.println(volume.fatType(), DEC);
Serial.println();
volumesize = volume.blocksPerCluster(); // clusters are collections of blocks
volumesize *= volume.clusterCount(); // we'll have a lot of clusters
volumesize *= 512; // SD card blocks are always 512 bytes
Serial.print("Volume size (bytes): ");
Serial.println(volumesize);
Serial.print("Volume size (Kbytes): ");
volumesize /= 1024;
Serial.println(volumesize);
Serial.print("Volume size (Mbytes): ");
volumesize /= 1024;
Serial.println(volumesize);
Serial.println("\nFiles found on the card (name, date and size in bytes): ");
root.openRoot(volume);
// list all files in the card with date and size
root.ls(LS_R | LS_DATE | LS_SIZE);
}
void loop(void) {
}
Arduino - cum depistezi adresa unui senzor 1-wire
Codul pentru depistarea adresei unui device 1-wire este:
// This sketch looks for 1-wire devices and
// prints their addresses (serial number) to
// the UART, in a format that is useful in Arduino sketches
// Tutorial:
// http://www.hacktronics.com/Tutorials/arduino-1-wire-address-finder.html
#include <OneWire.h>
OneWire ds(3); // Connect your 1-wire device to pin 3
void setup(void) {
Serial.begin(9600);
discoverOneWireDevices();
}
void discoverOneWireDevices(void) {
byte i;
byte present = 0;
byte data[12];
byte addr[8];
Serial.print("Looking for 1-Wire devices...\n\r");
while(ds.search(addr)) {
Serial.print("\n\rFound \'1-Wire\' device with address:\n\r");
for( i = 0; i < 8; i++) {
Serial.print("0x");
if (addr[i] < 16) {
Serial.print('0');
}
Serial.print(addr[i], HEX);
if (i < 7) {
Serial.print(", ");
}
}
if ( OneWire::crc8( addr, 7) != addr[7]) {
Serial.print("CRC is not valid!\n");
return;
}
}
Serial.print("\n\r\n\rThat's it.\r\n");
ds.reset_search();
return;
}
void loop(void) {
// nothing to see here
}
Placa de rețea fără drivere
IS_AP_STA_RT2870_D-5.1.1.0_VA-5.1.1.0_W7-5.1.1.0_W8-5.1.1.0_RU-5.0.6.0_AU-5.0.1.0_040713_1.5.26.0WP_Free.exe
DPA_MT7601U_LinuxAP_ANDROID_20121211.tar.bz2
Arduino - Comenzi uzuale
Printarea în Serial Monitor
Serial.println(value);
Setarea modului unui pin pe citire sau pe scriere
pinMode(<nr_pin>, {INPUT | OUTPUT});
Citirea valorii dintr-un pin
- pinul trebuie setat ca INPUT în prealabil
digitalRead(<nr_pin>);
Valoarea citita va fi HIGH sau LOW
Scrierea unei valori pe un pin
sâmbătă, 1 noiembrie 2014
Arduino - Precauții de luat la montaj
- un pin setat sa dea 5V legat la masă, din cauză că se va depăși limita de 40mA curent maxim per pin. Un pin are o rezistență de 25 ohm,
- un pin setat sa dea 5V legat la un pin setat pe 0V
- fiecare pin are o limita maximă de tensiune de 5.5V
- alimentarea direct din pinii de Vin, dar de polaritate inversă
- alimentarea prin Vin cu mai mult de 6V (pinul de Vin varsă curent direct în microprocesor și nu are nici o protecție suplimentară)
Regulatorul existent pe Arduino își face treaba doar dacă alimentăm prin USB sau prin mufa rotundă.
- alimentarea prin pinul de 3.3V cu mai mult de 3.6V. Dacă se aplică mai mult de 9V, curentul poate intra în PC prin mufa USB.
- dacă Arduino e alimentat prin mufa DC, scurtcircuitarea Vin la GND e fatală
- dacă alimentăm invers, prin pinul de 5V, și ai consumatori pe pinul Vin, curentul o sa meargă invers și o să se pîrlească diverse
- dacă aplicăm mai mult de 13V pe pinul de reset
- dacă se depășește limita totală de curent per Arduino, care e de 200mA. Deci dacă tragi mai mult de 20mA prin 10 pini, sînt șanse să pîrlești ceva.
Direcția spre un singur buton
Problema e că văd asta din ce în ce mai frecvent, interfața oricărui program tinde să devină un instrument pentru oligofreni. Am senzația că e o informație importantă, dar deocamdată nu știu să o analizez.
joi, 30 octombrie 2014
Pregatire flashcards pentru anymemo in excel
Introduc delimitatorul pe care mi l-am facut in prealabil in word (gen $$) si obtin coloanele de intrebare/raspuns.
Dau 'save as unicode text' ca sa pastrez diacriticele.
Deschid fisierul unicode generat, unde aparent totul ar fi ok, adica tab delimited. Problema e ca anymemo nu se descurca cu formatul unicode. Asa ca in notepadul pe care l-am deschis cu unicode dau 'save as UTF', si pe asta il mesteca bine anymemo.
In anymemo - MISC, import, tab-delimited, gata.
marți, 28 octombrie 2014
luni, 27 octombrie 2014
Lingua.ly
Trebuie să verific aplicația de android și dacă pot exporta flashcards.
Ce-am facut azi - adaptor wireless si bluetooth MW 600
Îmi apărea un troian pe cd-ul de instalare cu care a venit adaptorul, așa ca l-am căutat pe net, dar și ala avea troianul. Am luat o versiune mai veche și a fost ok.
duminică, 26 octombrie 2014
Azi am facut: [fost Azi n-am facut]: sesiuni desktop automate
N-am reușit să găsesc o soluție de save session în Windows. Adică să-mi salveze lista de programe deschise și layoutul lor, și să mi le deschidă automat.
Am găsit Windows Layout Manager, care s-ar putea să le restaureze pozițiile, dar nu e capabil să le și deschidă.
Dacă altfel nu se poate, o sa fac un batch de start, dar e mai albastru că tre să pierd timp să fac liste de aplicații, și la o reinstalare de Windows s-ar putea să se schimbe calea către aplicații.
Ideal era să găsesc o soluție de snapshot, cu cît mai puțini pași. Apăs butonul, programul îmi salvează lista de programe deschise și compune automat un batch file.
De facut
- tasker care sa-mi faca profile si shortcuturi de exemplu cind plec cu bicla sa-mi deschida automat playerul cu lectiile de germana sau ce mai fac eu, dashboard, etc. Ma pierd altfel si scap aplicatii, nu le mai deschid, uit de ele.
- daca reusesc sa configurez taskerul, poate pot sa il fac la pasul urmator sa deschida anumite aplicatii pe pc - scriptul de germana, etc, eventual poate pot sa pornesc si calculatorul automat de pe telefon astfel incat sa ma astepte cu toate aplicatiile pregatite
- daca reusesc si asta, poate fac un blog cu solutii de add
- add coach
Ce am facut azi - lecții de germană de la Radiolingua
Ce am facut azi - restore desktop sessions
În mod normal ai nevoie de cîteva programe deschise simultan pentru orice proces de lucru.
Din cauza atenției deficitare, pînă le deschid pe toate mă iau cu altele.
Am testat SmartClose și CacheMyWork. SmartClose îmi închide obligatoriu toate aplicațiile ca să le poată înregistra, deci nu e bine. CacheMyWork face snapshot dar nu are nici un fel de opțiuni, doar ți le pornește automat la start.
Soluția mea de moment e cea clasica - batch file + WindowsLayoutManager.
@echo off
timeout /t 180
start "" "C:\program files (x86)\google\chrome\application\chrome.exe"
start "" "C:\program files (x86)\mozilla firefox\firefox.exe"
start "" "C:\Program Files (x86)\Opera\25.0.1614.50\opera.exe"
REM start "" "C:\Program Files (x86)\Handbrake\Handbrake.exe"
start "" "C:\Program Files (x86)\Microsoft Office\Office12\ONENOTE.EXE"
start "" "C:\!akkudownload\winlayoutmanager\WinLayoutManager.exe"
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
REM start "" ""
sâmbătă, 25 octombrie 2014
Ce-am făcut azi - conversie video cu HandBrake
Cu HandBrake am convertit cu succes un film de vacanță făcut cu Drift.
Ce-am facut azi - 24-70 Black Friday
Face pereche bună cu D800.
Obiectivele pro sînt ca uneltele specializate pentru instalatori, le iei cu tine atunci cînd ai o "lucrare". Cumperi un 85 1.4 doar ca să faci portrete într-un cadru bine stabilit, cu un scenariu clar în cap. Nu îl iei ca să îl fluturi la întîmplare în vacanță.
marți, 21 octombrie 2014
luni, 20 octombrie 2014
sâmbătă, 18 octombrie 2014
Ce-am făcut azi
Ce-am făcut azi
Foobar e un player foarte mișto, pentru că:
- are o interfață foarte simplă în care încape multă informație, și poți să-ți pui playlisturile pe taburi ca să le asculți după dispoziție.
- poți să folosești orice combinație de taste pentru comenzi specifice. Eu folosesc CTRL-F8,F9-F12 pentru pauză/play, prev/next, volume down/up. Merg folosite și cînd foobar e în background, adică editezi ceva în word sau în photoshop, apeși CTRL-F10 și trece la următoarea melodie. Sau pui pauză.
- pe vremuri parcă putea să sară peste procesarea pe care o făcea windowsul, pentru un sunet mai curat. Acum am oricum o placă de sunet de rahat, așa că nu mai contează.
Ce-am făcut azi
Ce-am făcut azi
Ce-am făcut azi
Tehnologia din spate e fascinantă. Mouseul și tastatura comunică prin radio cu un singur dongle USB cît unghia, înfipt in calculator. Comunicarea e instantanee, la o distanță de lucru care trece lejer de 6m, și mă gîndesc că e ceva flux de date din inputul de 800dpi al mouseului spre dongle. Nu are nevoie de nici un fel de driver, nu interferează cu cealaltă tastatură, bateriile țin o grămadă. E mișto, și e incredibil de ieftină.
duminică, 27 iulie 2014
Navigare Android
- la modul general, e o aplicație foarte bună pentru inspectat o zonă, sau căutat o anumită adresă. Are foarte multe points of interest (POI), și faci o treabă bună cu el pe teren necunoscut. În Bulgaria de exemplu am găsit plajele foarte bine marcate pe hartă, și am putut să salvez vacanța (nu aveam internet).
- harta se mișcă suficient de rapid
- permite zoom inteligent. Să detaliez. Pe harta României, să spunem, avem enșpe mii de localități. Nu toate sînt egale. Unele sînt orașe binecunoscute, altele sînt sătuce de care au auzit doar ăia de la 2km distanță. Problema apare la nivelurile de zoom intermediar, cînd mărești o anumită zonă ca să o inspectezi sau cînd vrei să îți dai seama pe unde ești (vezi cursorul GPS-ului, dar localitățile din jur nu îți spun nimic, și atunci micșorezi puțin harta ca să găsești un oraș cunoscut). E la mintea cocoșului că vrei ca localitățile importante să apară la toate nivelurile de zoom. Unele aplicații în schimb tratează toate localitățile cu fix aceeași pondere. Pentru ele Brașovul e tot aia cu Ciorilești. Așa că atunci cînd te duci la un zoom mediu, ai surpriza să vezi în loc de Brașov, Craiova, Pitești, care ți-ar permite să îți dai seama instant unde ești, numai Ciorilești, Sințești și Potigrafu (că sînt echidistante la nivelul tău de zoom; pentru economie de resurse aplicația arată doar x localități simultan la un nivel de zoom), la care te uiți ca boul, și trebuie să faci zoom out pînă vezi doar București și Sofia pe hartă. Oricît de idiot ar părea, majoritatea aplicațiilor de navigare tratează harta în stilul Ciorilești, chiar dacă în structura hărții OSM există taguri dedicate pentru localități, care le diferențiază după populație, importanță, etc.
- știe să îți înregistreze traseul în format .gpx
- face cam de toate, mai puțin rute, dacă ai suficientă răbdare cu interfața.
- interfața poate multe, dar e structurată execrabil pentru cît e de stufoasă. Ergonomia e un cuvînt urît pentru programatori.
- calculează rute foarte prost. Încerci degeaba să faci un traseu chiar și pe distanțe mici, chiar și cu puncte de control, rezultatul o să fie prost în cel mai bun caz, sau imposibil. Timpul necesar e foarte mare. În nici un caz nu poți calcula un traseu cînd te rătăcești în cutare oraș mare. S-ar putea să fie o limitare a hărților OSM prin felul în care sînt construite. În plus, interfața pentru calculat un traseu e absolut idioata -- de exemplu, trebuie să bagi de fiecare dată întâi destinația și după aia punctul de start, nu invers cum ar fi normal
- foarte rapid în afișarea hărților
- rutarea de calitate -- alege cam ce aș alege și eu, și îți calculează un traseu peste n țări fără nici o problemă
- permite modificarea traseului pe unde vrei -- pui degetul pe ruta aleasă și o tragi prin orașul pe unde vrei să treacă
- harta foarte foarte bine desenată, îți arată exact ce trebuie, strictul necesar - vezi autostrăzile de departe (ca zoom), apoi drumurile naționale, și tot așa.
- interfața minimalistă și nu foarte intuitivă în defavoarea funcționalității
- dacă ratezi traseul, am impresia că nu recalculează singur, sau te pune să te întorci pe ruta lui bătută în cuie. Pentru mine nu e așa important, pentru că folosesc aplicațiile de navigare ca pe o hartă pe hîrtie la care aș ști permanent unde mă aflu -- îmi iau anumite repere și nu merg niciodată pe mîna aplicației, să mă ghideze pe unde crede ea.
marți, 13 mai 2014
Drift review
- mai aerodinamică decît alternativele.
- nu arată penibil.
- senzorul rotativ elimină nevoia de braț suplimentar.
- are LCD și telecomandă.
- are intrare pentru microfon extern
- funcția de tagging
- ușița gîndită prost. Cînd strîngi capacul, de fapt strîmbi limba de metal care vine peste baterie. Ușița trebuia să se strîngă direct pe corpul camerei, nu pe o piesă mobilă.
- sistemele de strîngere ale capacelor și ale adaptorului cu clic gîndite prost. Trebuia un inel ca la plăcuța rapidă de la Manfrotto, nu un rahat rotund pe care chiar dacă îți zdrelești degetele tot greu îl desfaci.
- softul prost. Se blochează frecvent și trebuie să scoți bateria ca să o repornești.
- softul prost. Cînd filmezi cu tagging, nu poți păstra și restul filmării (ce filmează permanent). Asta face inutilă funcția de martor a camerei, pentru că pe motor cel mai practic interval de tagging e de 30 de secunde. Dacă se întîmplă un incident și nu apuci să apeși in 30 de secunde, adio martor.
- materiale proaste
- intră apă în ea cu capacul etanș
- linia de asamblare proastă - riști să nu găsești în pachet capacul perforat pentru USB și microfon
- materiale proaste - s-a julit vopseaua de lîngă lentila frontală, doar de la vînt
- materiale proaste - s-a rupt ușița de cauciuc care acopera mufa USB, fără să tragă nimeni de ea.
- preț enorm pentru ce oferă
sâmbătă, 10 mai 2014
duminică, 4 mai 2014
Circuitul informatiei utile
Pasul al doilea e sa bag un hub USB. Asta mi-ar permite sa bag mai multe stickuri USB care stau degeaba prin casa. Scopul final e sa am vreo 60GB in care sa bag colectia de carti pentru acces permanent de pe tablet sau telefon, eventual sa-mi separ colectia de carti ordonate.
Vad ca un hard de 2TB e sweet spotul acum, pe la 360 de lei sau 400 unul wd purple dedicat pentru camere de supraveghere, care sa functioneze 24/7
Cind nu ma apuc de nimic, am doua motive (cel putin):
- poate nu stiu cum anume sa ma apuc, cum sa incep, care e workflowul de optim
- poate stiu, de exemplu chestii minore - backupuri, rahaturi pe calculator, dar nu-mi vine sa ma apuc pentru ca nu mi se par suficient de importante, ca si cum as avea alte lucruri mai bune de facut, dar de care oricum n-am chef si pina la urma nu mai fac nimic.
- de rezolvat cu echipamentul de ploaie pentru bicla
- tre sa fac o rubrica 'despre' chestiile importante pentru mine
- despre workflowul backup date personale - to do lists, one note,
- imi trebuie un coach app care sa includa mai multe lucruri: - podcasturi care sa ma tina de vorba, un coach de fitness generic pentru orice trebuie invatat, cu achievements/care sa ma laude
duminică, 27 aprilie 2014
sâmbătă, 19 aprilie 2014
Caut o cameră video pentru motor
vineri, 11 aprilie 2014
lnternetul
...această minune la propriu, care îti extinde organele la distanțe enorme, când mărești harta lumii de pe serverele Google trăgând niște ațe invizibile, switchuri și routere...
marți, 8 aprilie 2014
Backup și editare dicționar Samsung
Să văd care e fișierul care conține dicționarul custom, și dacă se poate edita.
duminică, 6 aprilie 2014
Aplicaţii flashcards
Flux cards exportă într-un soi de csv scîrbos, şi importă la fel. Şi interfaţa e cam dubioasă.
Flashcards deluxe e interesant, dar nu mi-e foarte clar cum tratează termenii învăţaţi/uitaţi. Merge importul decent, tsv chior redenumit .txt. Procedura de import e un pic neintuitivă,tre să dai new folder parcă. Teoretic ştie să citească din google drive, practic aplicaţia ciordită se prinde şi nu te lasă.
Overview flashcards
Pachetul de flashcards ar trebui să conţină aşa:
- baza de cuvinte, care tre să fie simplă, gen csv sau tsv chior, fără alte brizbrizuri.
- un centralizator pentru updatat baza ta de cuvinte, gen google drive. Ăsta e mişto că poţi să-l updatezi de oriunde, servici, acasă, vacanţă. Faci un spreadsheet, şi converteşti cîrnatul de link în ceva gen tinyurl.com/iosupremu
- un dicţionar bun în care să cauţi ce te interesează
- un site centralizator pentru bazele altora
- nişte liste cu cele mai frecvente cuvinte în engleză - prepoziţii, adjective, etc. Engleza merge după aia ca pivot, e greu să găsesc perechi daneză-romana, dar simplu să găsesc daneză-engleză.
- aplicaţia propriu-zisă care citeşte baza ta de cuvinte. E vital să permită import-export cît mai simplu, ideal ar fi să citească din google drive. Tre să aibă o interfaţă de care să nu ţi se facă scîrbă, şi dacă merge cu spaced-repetition e foarte bine.
Overview navigare
- o hartă offline care să permită un traseu între oricare două puncte, fără prezenţa GPS-ului. IGO a luat-o la vale. Vreau să pot studia care e traseul între Ploieşti şi Braşov fără să fiu neapărat în Ploieşti / coordonatele curente.
OsmAnd se încadrează aici. Harta e OSM, foarte detaliată şi la zi. Din păcate, partea de traseu e destul de şubredă şi enervantă. Traseul ţi-l calculează întotdeauna de la destinaţie spre poziţia iniţială, rutarea o face destul de dubios, şi nici nu merge pe distanţe mari. Trebuie workaround-uri masive.
Probabil trebuie calculate trasee între anumite puncte cheie, cum recomandă şi ei. Oricum, ideea e că mai trebuie o aplicaţie pentru completare - probabil tot IGO o să fie asta.
- ceva de găsit cazări, gen aplicaţia Booking.com. Asta pare să funcţioneze ok, dar trebuie alimentată cu informaţie de pe net, dacă mai au ăia locuri libere şi la ce preţ. Ultima dată ne-am trezit că se desfiinţase campingul.
Mă gîndesc că ar trebui preferate cazările de la drumul mare, ca să nu pierd două ore prin oraşe mari cu enşpe sensuri unice pînă găsesc o străduţă obscură.
- ceva de găsit hotspoturi wireless. Văd că am luat nişte drăcii, Hotspot Finder şi Wi-Fi Finder, dar n-aş avea prea mare bază în ele. Mai degrabă aş căuta nişte MacDonalds sau benzinării/cafenele.
- ceva hartă gen meteoromania ca să văd cum sînt norii.
Printare de pe android
Jobs
- a ars turma. Ăia fără imaginaţie sînt teribil de obositori.
- mecanismul de ars turma are ca efect secundar o basculantă de bani
- e foarte interesant să studiezi cum funcţionează mecanismul, metode de convingere, psihologie, ambalaj. E de învăţat zdravăn.
- interesul turmei a transformat o nişă într-o mişcare de masă, şi au scăzut foarte mult preţurile pentru nişte unelte foarte utile. Înainte de asta, preţurile uneltelor erau tot de nişă/lux.
În rest, nimic interesant. Cînd au apărut telefonul şi tableta de la Apple, foloseam de ani buni chestii mai deştepte.
Grooveshark
Mai dă nişte rateuri cu melodiile de pe serverele lente, dar cu mai multe încercări le ia şi p-alea.
Gantt chart
Mai e şi ProjectSchedule, dar ăla nu ştiu dacă e ce-mi trebuie.
De ce root
- Poţi schimba butoanele. De exemplu, cînd scriu cu penul ating frecvent cu degetul butonul de back, fără să vreau. Am inversat butonul de back cu cel de meniu şi se pare că merge. Probabil puteam să-l mut şi undeva pe un buton de volum.
Altă soluţie pentru problema de mai sus ar fi să rotesc imaginea cu 180 de grade în modul portret. Merge şi asta, dar centrul de masă pică aiurea în palmă (bateria e plasată astfel încît greutatea sa cadă în palmă cu orientarea din fabrică).
(În /system/usr/keylayout/Generic.kl, am inversat key 158 cu key 139. Nu trebuie puse în ordine.)
- Merge oprit ecranul păstrând aplicația din fundal pornită. De exemplu, aplicațiile de tip pedometru nu mai funcționează pe Samsung Galaxy dacă închizi ecranul (accelerometrul nu funcționează cu telefonul în standby). Cu ecranul pornit, bateria se duce urgent. Alte utilizări: browserul ascultat cu ecranul închis (pentru Youtube sau Grooveshark, de exemplu).
- Se poate curăţa sistemul de aplicaţiile inutile (Titanium Backup, cu toate avantajele proprii)
- Ar trebui să poată mirosi tagurile NFC cu ecranul oprit
- Se poate modifica sistemul de operare cu Xposed Framework
- Mai multe opţiuni pentru ciordex - Lucky Patcher, Aptoide. GoldenDict nu merge fără Lucky Patcher, posibil Poweramp să nu meargă fără root.
- USB Mass Storage in loc de MTP/PTP
sâmbătă, 1 martie 2014
Tehnichestii
Nu mai ţin minte cum am făcut să nu-mi arate nimic by default, ci doar atunci cînd dau clic pe o categorie. Mă bate gîndul că am ales maximum zero postări. Poate ar trebui să bag un gadget cu cele mai recente postări, dacă există aşa ceva, astfel încît să fie afişate doar la cerere ca să ţin situl ordonat.






