AppNote : AVR911 - AVR Open-source Programmer

Tra le AN di Atmel ho trovato il documento e il software per un programma simile ad avrdude ma scritto in C++,
essi stessi scrivono:
The AVR Open Source Programmer (AVROSP) is an AVR programmer application
equivalent to the AVRProg tool included in AVR Studio. It is a command-line tool,
using the same syntax as the other command-line tools in AVR Studio.
The open source code and its modular design make it easy to port the application
to other platforms and to add support for other programmer types and
communication channels. Currently, AVROSP supports the programmers
described in AVR109 and AVR910 through the standard PC serial port. The
application note describes how to add more support.

ma non ho esperienza con le altre licenze open sources, ma solo con la GPL e non trovo alcuna licenza nel sorgente:
Tuttavia nella documentazione pdf si fa riferimento alla libertà di modificarlo e inserirlo in altri progetti ed è perfino possibile
usare i file xml di AVR Studio anche su linux, in quanto il programma li consulta tutti e ne trae alcuni dati per scriverli in altri file di configurazione.

Il codice è di una semplicità e chiarezza sconcertante (scritto benissimo) io ne vorrei trarre una libreria C++ da usare come core lib per l'applicazione gui (avrdudequi per la seconda versione) che sto sviluppando così da non dovere usare avrdude come back-end.

Mi sono reso conto che i micro possono essere modellati facilmente, molto meno i programmatori che richiedono la comunicazione di stato e avanzamento errore che sono molto differenti da programmatore a programmatore, come anche i controlli gui. Quindi sono candidati per essere implementati come plugin.

Comunque il primo passo sarebbe far funzionare il codice su GNU/Linux in quanto nel commento è specificati che è per windows, se c'è qualcuno che vuole collaborare a interesse potremmo aprire un repo scrivendo tutti i sviluppatori nel repo, cioè il progetto non sarebbe mio o tuo ma nostro.

Grazie per l'attenzione.

Ciao.

scusa ma non vedo la differenza dall'usare avr-dude. forse supporta più micro o ha qualche funzionalità in più?
se è così mi rendo disponibile, posta il link :slight_smile:

Va vista infatti la licenza. Deve però essere riportata da qualche parte. Nei sorgenti? Nel readme? Non c'è nulla?

Ciao, lesto avevo dato per scontato fosse facile trovarlo nel sito Atmel, ed invece ho perso tempo per trovarlo.
Io ho ricevuto il programmatore AVRISP mkii e nel cd allegato ho trovato questa doc ed il zip.

Sorgente .zip :http://www.atmel.com/dyn/resources/prod_documents/AVR911.zip
doc .pdf :http://www.atmel.com/dyn/resources/prod_documents/doc2568.pdf

C'è molta differenza tra avros e avrdude.
avrdude pro:
avrdude e pronto e funziona già anche con xmega
è mantenuto e sviluppato.
è conosciuto dagli utenti.

avrdude contro:
Non è scritto in C++
Il codice anche se comprensibile è un pò incasinato
Non è facile tirare fuori una libreria, bisgognere wrappare le funzione includendole in classi e metodi.
Non è modulare, vabbè che qui si può obbiettare.

avros pro:
è scritto in C++, con classi.
è scritto pulito (mio parere, mi interessa il tuo)
è modulare.
è più semplice trasformarlo in una lib o più lib dinamiche; ora non so con precisione cosa fare, mi rendo conto che cè necessità di una lib di base con tutto il necessario di basso livello. Più una struttura a plugin o forse basterebbero due lib, una di base e l'altra.... non so, l'idea è di potere sviluppare codice per un programmatore di flash fornento al programmatore persona una API di alto livello, così che esso debba solo sviluppare il modulo per quel programmatore di flash. ???
c'è la doc che spiega le classi base.
avros contro:
C'è solo supporto per atmega e attiny parziale, niente xmega, ci sono solo due programmatori implementati, uno comunica con un bootloader e
l'altro con il programmatore avr911.

Potrei avere scritto qualche imprecisione, ho avuto la mattinata quasi libera e vado di premura perchè di pomerigio sono in giro, quindi mi rimetto a studiare il codice per vedere se riesce almeno a compilarlo su Fedora 12.

Ciao.

@Leo io non ho trovato nulla che possa sembrare una licenza

No, non ho trovato neanch'io una licenza.
Però ho notato una cosa: i listati sono datati 2006, i file sono marcati 2008... ti conviene cercare di usare un software non aggiornato che già oggi è datato?

se scritto meglio e più portabile è un'ottimo punto di partenza... non se oggi riesco a darci un'occhiata, stanotte non son riuscito a dormire e son veramente svogliato e rincoglionito

Però ho notato una cosa: i listati sono datati 2006, i file sono marcati 2008... ti conviene cercare di usare un software non aggiornato che già oggi è datato?

mmm... si lo so, alla fine di quel software ne rimarrebbe poco, una volta traformato il libreria tornerebbe nuovo appena sfornato, mica scade.

No sono cosciente, stavo dandogli uno sguardo e mi ha colpito la pulizia del codice, mentre avrdude mi ha colpito per la confusione.
Poi se entrambe sono OS vedo la possibilità di riscrivere ciò che manca prendedo codice da avrdude, cercando di mantenere la pulizia attuale.

Comunque, non so a me serve una lib di questo tipo ed una volta rilasciata GPL la si può utilizzare per scrivere GUI con qualunque toolkit, Qt, Gtk, ecc.

Ciao.

se scritto meglio e più portabile è un'ottimo punto di partenza... non se oggi riesco a darci un'occhiata, stanotte non son riuscito a dormire e son veramente svogliato e rincoglionito

Ok, io chiuso occhi presto ma alle 3 di notte mi sono svegliato e mi son messo davanti il pc per poi crollare alle 5, quindi anche io un pò rinco, ma non svogliato.