Come costruire un RBBX BLHeli-Setup-Box. I. Introduzione: La RBBX Box è un interfaccia doppia per BLHeli, che insieme: 1. Possono essere utilizzate come sostitutivo al classico Toolstick con l aggiunta di un convertitore USB/RS232 seriale e con l applicazione Windows "BLHeli-Setup". Si può quindi "flashare" uno dei tanti BESC supportati dal firmware BLHeli e configurare tutti le impostazioni disponibili come al solito. Tutta l'operazione è leggermente più lenta in confronto all'utilizzo del Toolstick Silabs, circa 3-4 secondi contro gli 1,5-2 secondi del Toolstick Silabs. nulla di eccessivo. In aggiunta, "BLHeli Setup" ha una funzione dedicata al Robbe RBBX in modo di poter aggiornare il firmware in maniera facile e veloce. In questo modo si potrà avere un'unità BlHeli portatile sempre aggiornata all'ultima versione disponibile. Il protocollo dell'interfaccia è (e sarà) ampiamente documentato, in modo che ognuno possa sviluppare il proprio software. 2. Insieme ad una lipo 1S o 2S può essere utilizzata come un programmatore BlHeli portatile (da campo) per i propri BESC senza per forza dover collegarlo ad un computer. II. Cosa serve: 1. Un Robbe Programmer V2 No. 8642 2. Un convertitore USB/Serial con uscita 5v (i chip FTDI funzionano bene, gli altri per ora non sono stati testati. Ad esempio: FTDI Adapter USB Controller - 5V http://www.hobbyking.com/hobbyking/store/uh_viewitem.asp?idproduct=24779 da HK $4.75). 3. 2 cavi per servo a 3 pin; uno servirà per collegare il convertitore USB/RS232 al programmer RBBX ed un altro per collegare la lipo nella modalità standalone (quindi da campo-portatile). La cosa migliore da fare sarebbe utilizzare un cavo dello standard Robbe in modo da evitare problemi di inversione di polarità. Secondo i test non succede nulla collegando l'rbbx a polarità invertita ma è sempre meglio evitare problemi. 4. L'applicazione Windows "BLHeli-Setup" che includa (o da aggiungere) il supporto per questo tipo di interfaccia. In aggiunta, ci sarà bisogno (ma soltanto una volta all'inizio) di una interfaccia di programmazione AVR-ISP per preparare e flashare il Bootloader nel ATMEGA88PA AVR MCU del RBBX (quindi cancellare il chip, impostare i fuses/lockbits onde evitare di cancellare per errore tutto in futuro, e scrivere un firmware bootloader nel RBBX).
III. Preparare il convertitore USB/serial: Dovete aprire il convertitore e fare le seguenti operazioni: 1. Fate un ponte-jumper tra i pin TX e RX sull'uscita del convertitore. 2. Saldate i cavi servo nel convertitore: GND -> polo negativo (in genere nero o marrone) VCC 5V+ -> polo positivo (in genere rosso) TX/RX -> polo segnale (in genere arancione o bianco) 3. Configurate il convertitore per avere 5v (spesso fatto da un ponte o saldatura a ponticello). Le uscite TX ed RX possono essere configurate tramite il software FTDI da questo link http://www.ftdichip.com/support/utilities.htm#ft_prog, ma di solito viene lasciato in "normal state" (non invertito). Questa è un immagine esempio. Bisogna fare i seguenti collegamenti per poter far corrispondere l'hardware. (FTDI Adapter USB Controller - 5V) In questo esempio ho tolto il connettore e saldato il cavo servo ai pads corrispondenti (controllate il lato opposto per vedere le corrispondenze) ed ho chiuso il tutto con del termo-restringente trasparente.
IV. Preparare il bootloader flash per l'rbbx: Aprire il Robbe RBBX. Le modifiche si riferiscono alla seguente immagine: 1. Se volete alimentare il box con meno di 4.5V (ad esempio con lipo 1s) dovrete fare un ponte sul diodo D1 come mostrato nell'immagine per aumentare il contrasto del LCD. Altrimenti non riuscirete a leggere il display. 2. Saldate i collegamenti dell'interfaccia di programmazione AVR-ISP nei rispettivi pads: SCK, VCC, MISO, MOSI, GND, RESET. 3. Collegate l'interfaccia di programmazione AVR-ISP e l'interfaccia USB/RS232 con il cavo servo per fornire i 5V necessari.
V. Flashare il Bootloader Aprite il programmare AVR (nell'esempio io utilizzo AVRStudio 5.1). Impostate il device ATMEGA88PA. 1. cancellate il chip cliccando "Erase now". 2. Selezionate il file bootloader ("RBBXm88P8b01.hex" dal directory "...\BLHeli- Setup\RBBX\Bootloader). 3.... e quindi cliccate "Program". Ora bisogna impostare i "Fuses" in modo da poter supportare il bootloader: Selezionate la dimensione (BOOTSZ) per il bootloader da 256 words (512 bytes!). 1. Consentite il "reset vector" per il bootloader (BOOTRST) 2.... e quindi cliccate "Program".
Ora, come opzione, potete impostare i "lock bits" in modo di proteggere il bootloader da eventuali sovrascritture accidentali: 1. Impostate BLB1 a "LPM_SPM_DISABLE" 2.... e quindi "Program". VI. Primo flash del firmware Chiudete il programmatore AVR-ISP ed aprite l'applicazione BLHeli-Setup per poter flashare il firmware. Prima abilitate "Options\Serial Interface"... e passate alla pagina "Serial Interfaces / Boxes"...Selezionate il COM giusto...e cliccate "Flash RBBX Box" 38400 baud è un valore che può andare bene. Ora scegliete il file hex da "...\BLHeli-Setup\RBBX" (BLHeli-Setup cercherà solo file che iniziano con "RBBX") Quindi verrà scelto il file Eeprom corrispondente. Quindi ci dovranno essere sempre 2 files chiamati RBBX...vXX.hex (Flash) e RBBX...vXX.eep (Eeprom). Dopo poco tempo... partirà il collegamento con il bootloader e vi verrà chiesto di confermare
VII. Controllare il collegamento con l'interfaccia Ora dovete controllare per la prima volta il collegamento con BLHeli-Setup e, se tutto corretto, comparirà questo messaggio: E quindi rimuovete l'interfaccia AVR-ISP dissaldando i precedenti collegamenti (SCK, VCC, MISO, MOSI, GND, RESET) e fare l'ultimo step: VIII. In fine... Dovete saldare un nuovo cavo servo che servirà a collegare il Robbe RBBX con il BESC e la sua alimentazione. Quindi saldate i 3-pin alla scheda come segue: Per alcuni questa sarà la procedura più difficile, quindi una lente d'ingrandimento è fortemente consigliata! In fine, dovrete fare una piccola incisione nella scocca del box in modo di permettere ai 3 cavi servo di uscire e quindi chiudete il box. Un ringraziamento particolare va a Hagen Re per aver condiviso il suo progetto AVRootloader (AVR Bootloader). Questo bootloader è abbastanza piccolo (<512 bytes) e quindi permette l'accesso alla scrittura Eeprom. Per ulteriori informazioni vedere: http://www.mikrocontroller.net/topic/avr-bootloader-mitverschluesselung.