Per tentare di recuperare un po' di elettronica ho smontato un telefono da tavolo
Con mia grande sorpresa la scheda si presentava come nella foto sottostanti
In pratica di elettronica discreta sono presenti solo
n.1 A7275AL-A52533
n.2 switch
n.4 diodi
n.10 resistenze
n.1 buzzer
in buona sostanza tutte le funzionalita' (tastiera + telefonia) sono racchiuse in un solo chip con pochissimi altri componenti
a
giovedì 26 settembre 2013
Libsoup crash in Eclipse 64 Bit
Se si utilizza Eclipse 64 bit per Android c'e' un fastidioso bug nella gestione della libreria libsoup
Per correggere il problema si deve correggere il file eclipse.ini aggiungendo la seguente riga
-Dorg.eclipse.swt.browser.DefaultType=mozilla
informazione ripresa da https://bugs.eclipse.org/bugs/show_bug.cgi?id=405786
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007f1c73b60ab1, pid=5477, tid=139761754089216
#
# JRE version: Java(TM) SE Runtime Environment (7.0_40-b43) (build 1.7.0_40-b43)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (24.0-b56 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C [libsoup-2.4.so.1+0x6fab1] soup_session_feature_detach+0x11
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /home/luca/android/eclipse/hs_err_pid5477.log
#
# If you would like to submit a bug report, please visit:
# http://bugreport.sun.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
Per correggere il problema si deve correggere il file eclipse.ini aggiungendo la seguente riga
-Dorg.eclipse.swt.browser.DefaultType=mozilla
informazione ripresa da https://bugs.eclipse.org/bugs/show_bug.cgi?id=405786
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007f1c73b60ab1, pid=5477, tid=139761754089216
#
# JRE version: Java(TM) SE Runtime Environment (7.0_40-b43) (build 1.7.0_40-b43)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (24.0-b56 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C [libsoup-2.4.so.1+0x6fab1] soup_session_feature_detach+0x11
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /home/luca/android/eclipse/hs_err_pid5477.log
#
# If you would like to submit a bug report, please visit:
# http://bugreport.sun.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
mercoledì 25 settembre 2013
Display 7Led con controller MAX72XX in Arduino
In questo post viene mostrato un esempio per utilizzare i display a 7 Led abbinati al controller MAX72XX con Arduino (in questo caso una Yun)
Sono necessari 5 connessioni
VCC
GND
DIN (al pin 7 nello sketch sottostante)
CLK (al pin D6 nello sketch sottostante)
LOAD o CS (al pin D5 nello sketch sottostante)
la libreria di riferimento e' LedControl che deve aggiunta all'ambiente di sviluppo per poter compilare correttamente lo sketch sotto riportato
Lo sketch effettua un conteggio alla rovescia e poi mostra una stringa
Curiosamente utilizzando un diverso display (con i numeri piu' grandi) le posizioni dei caratteri sono invertite usando il medesimo sketch
---------------------------------
#include "LedControl.h"
// Arduino
//D7 to DIN,
//D6 to Clk,
//D5 to LOAD, su alcuni Led il pin e' denominatoCS
//1 = numero del dispositivo, in questo caso e' uno solo
LedControl lc=LedControl(7,6,5,1);
void setup()
{
// Initialize the MAX7219 device
lc.shutdown(0,false); // Enable display
lc.setIntensity(0,10); // Set brightness level (0 is min, 15 is max)
}
void loop()
{
lc.clearDisplay(0); // Clear display register
//setDigit
//il primo numero indica il display
//il secondo la posizione partendo da sinistra con valore 0
//il numero da mostrare
for (int s=5;s>=0;s--)
{
for (int t=9;t>=0;t--)
{
lc.setDigit(0,3,s,false);
lc.setDigit(0,4,t,false);
delay(1000);
}
}
lc.clearDisplay(0); // Clear display register
//usando setChar si puo' invece mostrare alcuni caratteri
lc.setChar(0,2,'L',false);
lc.setRow(0,3,0x1c);
lc.setChar(0,4,'c',false);
lc.setChar(0,5,'a',false);
delay(4000);
}
lunedì 23 settembre 2013
Abilitare la funzionalita' di sviluppatore in Android 4.3
Nel menu' di Android 4.3 sono (a prima vista) scomparse le opzioni per mettere in modalita' sviluppatore il device Android..cio' vuol dire che si cerca il device con adb la lista risulta vuota
In realta' esiste un trucco piuttosto subdolo. Per prima cosa si deve andare in Informazioni sul tablet e cliccare ripetutamente sul Numero Build...compare un contatore (in una toast)
Alla fine appare la scritta "Sei diventato uno sviluppatore"
Adesso si puo' tornare indietro di un menu e compare Opzioni sviluppatore
Ripreso da qui
In realta' esiste un trucco piuttosto subdolo. Per prima cosa si deve andare in Informazioni sul tablet e cliccare ripetutamente sul Numero Build...compare un contatore (in una toast)
Alla fine appare la scritta "Sei diventato uno sviluppatore"
Adesso si puo' tornare indietro di un menu e compare Opzioni sviluppatore
E da qui si puo' abilitare l'opzione di debug
Ripreso da qui
martedì 17 settembre 2013
Configurazione iniziale di Arduino Yun
Una volta accesa la Arduino Yun, questa si configura in modalita' access point e compare nell'elenco delle reti disponibili senza nessuna protezione
Accoppiandosi con la rete Arduino e digitando 192.168.240.1 si arriva al pannello di configurazione Web (la password di default e' Arduino)
Si preme quindi Configure per associare la scheda alla rete wireless
Nel menu a tendina viene presentata la lista delle reti WiFi disponibili
Terminata la configurazione la Arduino si riavvia sulla nuova rete e lo stesso si deve fare con il computer/portatile di lavoro
Per programmare Arduino Yun e' necessario installare l'ambiente di sviluppo della serie 1.5 (al momento 1.5.4). La cosa divertente e' che Yun si puo' programmare direttamente wireless senza la necessita' di un cavo USB. Nel menu Port infatti compare il dispositivo con il suo numero di rete (viene individuato in automatico)
Per caricare gli sketch e' necessario digitare la password di rete
Primi problemi con Arduino Yun
Cercando di accoppiare la Arduino Yun con un Access Portatile Onda PN51T, la Arduino non compariva nelle periferiche di rete
Osservando meglio il file di log della Arduino si legge chiaramente che Yun ha effettuato l'accoppiamento con l'access point ma poi si e' generato un errore
"HT AP is missing WMM params or HT capability/operation in AssocResp"
Soluzione : ho attivato l'hotspot portatile su Android e tutto ha funzionato
Arduino Yun e PN51T |
La schermata di errore |
Osservando meglio il file di log della Arduino si legge chiaramente che Yun ha effettuato l'accoppiamento con l'access point ma poi si e' generato un errore
"HT AP is missing WMM params or HT capability/operation in AssocResp"
Soluzione : ho attivato l'hotspot portatile su Android e tutto ha funzionato
lunedì 16 settembre 2013
Compilare OpenGl con CodeBlocks
Per compilare gli esempi di OpenGL derivanti dal sito Nehe in Windows si puo' prima installare Code::Blocks con MingW
Successivamente si installa la libreria OpenGL scaricando questo file (vedi sito originale)
A questo punto si copia manualmente.
1) il file glut32.dll in C:\Windows\System32
2) il file libglut32.a in C:\Programmi\CodeBlocks\MinGW\lib
3) il file glut.h in C:\Programmi\CodeBlocks\MinGW\include
Fatto cio' si puo' creare un nuovo progetto vuoto e con clic destro si selezionano le Build Options (vedi figura sottostante)
Nel tab Linker Settings si aggiungono opengl32, glu32 e glut32
Si puo' quindi procedere con la compilazione con il primo degli esempi OpenGl di Nehe
Successivamente si installa la libreria OpenGL scaricando questo file (vedi sito originale)
A questo punto si copia manualmente.
1) il file glut32.dll in C:\Windows\System32
2) il file libglut32.a in C:\Programmi\CodeBlocks\MinGW\lib
3) il file glut.h in C:\Programmi\CodeBlocks\MinGW\include
Fatto cio' si puo' creare un nuovo progetto vuoto e con clic destro si selezionano le Build Options (vedi figura sottostante)
Nel tab Linker Settings si aggiungono opengl32, glu32 e glut32
Si puo' quindi procedere con la compilazione con il primo degli esempi OpenGl di Nehe
Iscriviti a:
Post (Atom)
Feature Matching OpenCv
Il problema e' il seguente: trovare le differenze tra le due foto. Le due immagini sono state riprese a distanza di oltre un anno ed il ...
-
In questo post viene indicato come creare uno scatterplot dinamico basato da dati ripresi da un file csv (nel dettaglio il file csv e' c...
-
La scheda ESP32-2432S028R monta un Esp Dev Module con uno schermo TFT a driver ILI9341 di 320x240 pixels 16 bit colore.Il sito di riferiment...
-
Questo post e' a seguito di quanto gia' visto nella precedente prova Lo scopo e' sempre il solito: creare un sistema che permet...