Pages: 1 [2] 3   Go Down
Author Topic: Problemi Baudrate 115200 su Windows7  (Read 1553 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Edison Member
*
Karma: 28
Posts: 2031
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
no. i bug eclatanti sono quelli che fanno esplodere i missili in volo...

sì, che però rende inutilizzabile un baud-rate diverso da 9600 (è passato un pò da quando ho proposto la soluzione, ma mi pare che l'errore fosse anche nell'inglese, visto che anche l'inglese è una intenazionalizzazione, in pratica traduci da inglese ad inglese. In effetti di solito si usano dei numeri)

Far esplodere un razzo in volo è eclatante se hai esperienza nei razzi. Far crashare un server è eclatante se hai esperienza nei server. Un bug che ti blocca ad usare una sola velocità baudrate è eclatante per un software che ha esperienza (siamo alla 25° versione se non erro). IMHO era da rilasciare immediatamente una 1.0.2 col bug risolto e far sparire la 1.0.1 (Madwriter è questo che intendi per blocking urgent?)

d'altronde è un sistema per principianti no? e un principiante on ci arriva che cambiare il baudrate non funziona perchè è l'IDE sbagliato e non il suo codice. Mai provato a studiare su un libro di testo sbagliato?
Esattamente questo è uno di quei bug che in produzione va risolto immediatamente e il rilascio deve avvennire nelle 24 ore successive dalla scoperta del bug.
Logged

"Due cose sono infinite: l'universo e la stupidità umana, ma riguardo l'universo ho ancora dei dubbi..." Albert Einstein

Forum Administrator
Offline Offline
God Member
*****
Karma: 52
Posts: 639
I find plain exciting
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Come ho detto, non si può sempre rilasciare nuove versioni perchè abbiamo notato che più frequenti sono e meno la gente aggiorna.

In ogni caso il problema principale è la difficoltà di fare update incrementali automatici con l'ide corrente.

se qualcuno sa come implementarlo in un'applicazione java multi piattaforma (tipo come fa sparkle su mac os x)
me lo faccia sapere

m
Logged

Offline Offline
Edison Member
*
Karma: 28
Posts: 2031
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Come ho detto, non si può sempre rilasciare nuove versioni perchè abbiamo notato che più frequenti sono e meno la gente aggiorna.

In ogni caso il problema principale è la difficoltà di fare update incrementali automatici con l'ide corrente.

se qualcuno sa come implementarlo in un'applicazione java multi piattaforma (tipo come fa sparkle su mac os x)
me lo faccia sapere

m

sarebbe effettivamente un ottima idea implementare un autoupdate.
« Last Edit: August 30, 2012, 09:50:00 am by Madwriter » Logged

"Due cose sono infinite: l'universo e la stupidità umana, ma riguardo l'universo ho ancora dei dubbi..." Albert Einstein

0
Offline Offline
Shannon Member
****
Karma: 129
Posts: 10444
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

il sistema più di base è un programma esterno che viene lanciato, se rileva una nuova veriosne sul server CANCELLARE completamente il contenuto della cartella arduino (tranne se stesso che non può) e sostituirlo con la versione successiva. Le modifiche utente dovrebbero rimanere immutate in quanto in un'altra cartella (il preferencies.txt e lo sketcbook, per intenderci).
nel caso il preferencies.txt fosse aggiornato, è compito dell'ide al primo avvio riconoscerne la versione e riscriverlo nella versione aggiornata
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Offline Offline
Edison Member
*
Karma: 28
Posts: 2031
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

il sistema più di base è un programma esterno che viene lanciato, se rileva una nuova veriosne sul server CANCELLARE completamente il contenuto della cartella arduino (tranne se stesso che non può) e sostituirlo con la versione successiva. Le modifiche utente dovrebbero rimanere immutate in quanto in un'altra cartella (il preferencies.txt e lo sketcbook, per intenderci).
nel caso il preferencies.txt fosse aggiornato, è compito dell'ide al primo avvio riconoscerne la versione e riscriverlo nella versione aggiornata
ma questo è facile si fa un check su db o su file si vede se la versione del software è inferiore a quella su server, se si ,si apre una popup con una proposta di aggiornamento,se clicchi su yes un software indipendente viene lanciato e cancella tutto quello che c'è nella cartella di arduino scarica il nuovo zip e lo estrae.
Logged

"Due cose sono infinite: l'universo e la stupidità umana, ma riguardo l'universo ho ancora dei dubbi..." Albert Einstein

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 325
Posts: 22498
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quoto questo modus operandi. A suo tempo lo feci anch'io per unmio gestionale in VB6.
Lanciavo un programma esterno che controllava un semplice file txt presente su un server remoto. Se la versione scritta in quel file era maggiore di quella del programma in locale, cancellava quest'ultimo e scaricava il nuovo.
Logged


0
Offline Offline
Shannon Member
****
Karma: 129
Posts: 10444
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

esatto. fondamentalmente è una boiata.
il programma indipendente invece viene aggiornato dall'IDE stesso prima di lanciarlo (quindi in maniera trasparente all'utente e solo se preme sì). In questo modo non dovrebbero mai aversi problemi anche in caso di aggiornamenti particolari
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Offline Offline
Edison Member
*
Karma: 28
Posts: 2031
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

diciamo che in 20 minuti si implementa il tutto per i vari OS.
Anche se io farei anche una lista con tutti i file da cancellare,cosi se un arduiniano ci nasconde i porno nella cartella di arduino non rischia di perderli per sempre  smiley-yell
Logged

"Due cose sono infinite: l'universo e la stupidità umana, ma riguardo l'universo ho ancora dei dubbi..." Albert Einstein

0
Offline Offline
Shannon Member
****
Karma: 129
Posts: 10444
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

tra l'altro non serve nemmeno una scrittura di codice differente per i vari OS, se si fa tutto in java.
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 110
Posts: 6974
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Workaround --> Imposta la lingua Inglese e riavvia l'IDE 1.0.1  smiley-mr-green smiley-mr-green smiley-mr-green

Questa è una cavolata dovuta all'internazionalizzazione.
In effetti mettendo l'interfaccia in Inglese, il bug non c'è.
« Last Edit: August 30, 2012, 11:08:48 am by PaoloP » Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 325
Posts: 22498
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Sì, aggiri il problema ma non lo risolvi. Il bug c'è.
Logged


Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 110
Posts: 6974
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Sì, aggiri il problema ma non lo risolvi. Il bug c'è.
Certo, ma se ti serve giusto testare un programma su Windows 7, almeno ci metti una pezza aspettando la 1.0.2 a fine settembre.
Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

Riva del Garda, TN / Forlì
Offline Offline
Edison Member
*
Karma: 8
Posts: 2246
Il piu' modesto al mondo
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

comunque il sistema migliore per l'update è quello (dopo il check di versione) di scaricare un archivio zippato o come su vuole nella cartella ed al riavvio dell'ide lo si estrae (un qualcosa di simile lo fa mozilla adesso se non erro)
Logged

Il nuovo forum italiano sull'elettronica: http://www.electroit.tk/ <--- Nuovamente online!

Offline Offline
Full Member
***
Karma: 4
Posts: 219
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Nel codice uso Serial.print per visualizzare avanzamento dei cicli ma aprendo la finestra ho dei caratteri "speciali".
Ho provato a usare 9600 e funziona...ma purtroppo devo usare 115200 per comunicare con lo shield...

il problema dovrebbe essere legato a questo:
con un clock di 16Mhz esatti e settando un baudrate di 115200 si ha un errore in percentuale di 7.84% sul baudrate.
NB. per avere un errore dello 0% il quarzo dovrebbe essere di 14745600Hz o atri valori speciali ma non 16Mhz.

Alcuni PC, con usart particolari, non hanno una accettanza così ampia e quindi il terminale settato su 115200 interpreta in modo errato i caratteri in ingresso dalla seriale, cosa che non accade in senso inverso cioè dal PC verso l'arduino. Già a 57600 l'errore si riduce ad appena 2.08% per passare a 0.16% se il baudrate viene settato a 38400.

......Non dipende dall' OS Win7 ma bensì dal quarzo installato su arduino.... prova a cambiarlo con uno da 14745600, ricompila con il nuovo baudrate e vedrai che si aggiusta tutto.
Il firmware girerà appena più lento ma risolverai i prb sulla seriale a 115200.


Ciao
« Last Edit: August 30, 2012, 04:10:49 pm by cyclone » Logged

Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 110
Posts: 6974
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Nel codice uso Serial.print per visualizzare avanzamento dei cicli ma aprendo la finestra ho dei caratteri "speciali".
Ho provato a usare 9600 e funziona...ma purtroppo devo usare 115200 per comunicare con lo shield...

il problema dovrebbe essere legato a questo:
con un clock di 16Mhz esatti e settando un baudrate di 115200 si ha un errore in percentuale di 7.84% sul baudrate.
NB. per avere un errore dello 0% il quarzo dovrebbe essere di 14745600Hz o atri valori speciali ma non 16Mhz.

Alcuni PC, con usart particolari, non hanno una accettanza così ampia e quindi il terminale settato su 115200 interpreta in modo errato i caratteri in ingresso dalla seriale, cosa che non accade in senso inverso cioè dal PC verso l'arduino. Già a 57600 l'errore si riduce ad appena 2.08% per passare a 0.16% se il baudrate viene settato a 38400.

......Non dipende dall' OS Win7 ma bensì dal quarzo installato su arduino.... prova a cambiarlo con uno da 14745600, ricompila con il nuovo baudrate e vedrai che si aggiusta tutto.
Il firmware girerà appena più lento ma risolverai i prb sulla seriale a 115200.


Ciao

Sbagliato.
Il bug di cui stiamo parlando è legato ad un " " che si sono dimenticati nella versione internazionale.
Quello di cui parli tu è un'altra cosa.
Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

Pages: 1 [2] 3   Go Up
Jump to: