-
Résolu Reboot après 3 ou 4 appuis sur les trims
Mardi 30 Juin 2020 à 22:44 activa74
Bonjour,
je suis entrain de finalisé ma NSRC. Tout semble fonctionné correctement pour le moment sauf lorsque j'appuis 3 ou 4 fois sur les boutons de trims. Quelque soit le boutons Gauche Droite Haut ou Bas sur les 2 trims.
Je ne vois vraiment pas d'où cela peut venir.
Si quelqu'un à une idée.
Mercredi 1er Juillet 2020 à 12:45 Franck.A
Bonjour,
Est-ce que tes trims sont bien reliés à la masse (et non au +5V) ?
As-tu bien compilé le firmware depuis un répertoire avec un nom court, sans caractère spécial et à la racine d'un disque local ?
Mercredi 1er Juillet 2020 à 14:33 activa74
Les trims sont bien court circuités au GND lorsqu'on appui sur les boutons.
Le firmware a été compilé depuis le C. avec un nom court mais je vais refaire la procédure depuis le début avec le flashage des fusibles et du bootloader, puis l'installation du firmware pour voir si ça solutionne le pb.
Je viens de tout refaire :
- flashage des fusibles et du bootloader et erease eeprom
- installation du firmware que je viens de recompiler pour être sûr en supprimant l'option carte sd et rtc.
Toujours le même problème, reboot après appuis sur l'un des boutons de trim 3 ou 4 fois quel que soit le bouton. Par exemple appuis trim G haut, puis Trim D bas, puis trim G bas, et la reboot...
Les sticks et les inter marchent super bien, comme tout le reste d’ailleurs.
Je ne vois vraiment pas ce que ça peut être.
Jeudi 2 Juillet 2020 à 14:51 Franck.A
Bonjour,
Que les trims génèrent un souci alors que les interrupteurs non est vraiment très curieux, car ils fonctionnent de manière identiques, la seule différence que je vois est que les premiers sont stockés en mémoire. Du coup, une idée : le processus de formatage de l'eeprom a-t-elle bien été lancé ? Si ce n'est pas le cas, la radio cherche à écrire dans la mémoire modèle à la manipulation des trims (vus qu'ils sont stockés) et plante si ladite mémoire n'est pas accessible... c'est juste une hypothèse...
Franck
Jeudi 2 Juillet 2020 à 15:01 activa74
Je pensais aussi à quelque chose comme ça, c'est pour ça que j'ai tout refais hier depuis le début et tout était ok. Je refais la procédure ce soir pour être sûr.
Voici le retour lors du flashage bootloder + fuses + eeprom :
///////// Effacement eeprom + flash et programmation des fusibles /////////
Appuyez sur une touche pour continuer...
avrdude: Version 5.11.1, compiled on Feb 14 2013 at 12:44:50
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2009 Joerg Wunsch
System wide configuration file is "C:\NSRC2\companion\avrdude.conf"
Using Port : usb
Using Programmer : usbasp
AVR Part : ATMEGA2560
Chip Erase delay : 9000 us
PAGEL : PD7
BS2 : PA0
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 10 8 0 no 4096 8 0 9000 9000 0x00 0x00
flash 65 10 256 0 yes 262144 256 1024 4500 4500 0x00 0x00
lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
lock 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
Programmer Type : usbasp
Description : USBasp, http://www.fischl.de/usbasp/
avrdude: auto set sck period (because given equals null)
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.01s
avrdude: Device signature = 0x1e9801
avrdude: erasing chip
avrdude: auto set sck period (because given equals null)
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: reading input file "0xFF"
avrdude: writing lfuse (1 bytes):
Writing | ################################################## | 100% 0.00s
avrdude: 1 bytes of lfuse written
avrdude: verifying lfuse memory against 0xFF:
avrdude: load data lfuse data from input file 0xFF:
avrdude: input file 0xFF contains 1 bytes
avrdude: reading on-chip lfuse data:
Reading | ################################################## | 100% 0.00s
avrdude: verifying ...
avrdude: 1 bytes of lfuse verified
avrdude: reading input file "0xD8"
avrdude: writing hfuse (1 bytes):
Writing | ################################################## | 100% 0.01s
avrdude: 1 bytes of hfuse written
avrdude: verifying hfuse memory against 0xD8:
avrdude: load data hfuse data from input file 0xD8:
avrdude: input file 0xD8 contains 1 bytes
avrdude: reading on-chip hfuse data:
Reading | ################################################## | 100% 0.01s
avrdude: verifying ...
avrdude: 1 bytes of hfuse verified
avrdude: reading input file "0xFD"
avrdude: writing efuse (1 bytes):
Writing | ################################################## | 100% 0.01s
avrdude: 1 bytes of efuse written
avrdude: verifying efuse memory against 0xFD:
avrdude: load data efuse data from input file 0xFD:
avrdude: input file 0xFD contains 1 bytes
avrdude: reading on-chip efuse data:
Reading | ################################################## | 100% 0.01s
avrdude: verifying ...
avrdude: 1 bytes of efuse verified
avrdude done. Thank you.
Appuyez sur une touche pour continuer...
///////// Flashage du bootloader /////////
Appuyez sur une touche pour continuer...
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.02s
avrdude: Device signature = 0x1e9801
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: reading input file "0x3F"
avrdude: writing lock (1 bytes):
Writing | ################################################## | 100% -0.00s
avrdude: 1 bytes of lock written
avrdude: verifying lock memory against 0x3F:
avrdude: load data lock data from input file 0x3F:
avrdude: input file 0x3F contains 1 bytes
avrdude: reading on-chip lock data:
Reading | ################################################## | 100% 0.01s
avrdude: verifying ...
avrdude: 1 bytes of lock verified
avrdude: reading input file "M2560_stk500v2boot_opentx.hex"
avrdude: input file M2560_stk500v2boot_opentx.hex auto detected as Intel Hex
avrdude: writing flash (260452 bytes):
Writing | ################################################## | 100% 174.69s
avrdude: 260452 bytes of flash written
avrdude: reading input file "0x0F"
avrdude: writing lock (1 bytes):
Writing | ################################################## | 100% 0.01s
avrdude: 1 bytes of lock written
avrdude: safemode: Fuses OK
avrdude done. Thank you.
Appuyez sur une touche pour continuer...
///////// Transfert de l'eeprom /////////
Appuyez sur une touche pour continuer...
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.02s
avrdude: Device signature = 0x1e9801
avrdude: reading input file "eeprom_base.bin"
avrdude: input file eeprom_base.bin auto detected as raw binary
avrdude: writing eeprom (4096 bytes):
Writing | ################################################## | 100% 45.40s
avrdude: 4096 bytes of eeprom written
avrdude: verifying eeprom memory against eeprom_base.bin:
avrdude: load data eeprom data from input file eeprom_base.bin:
avrdude: input file eeprom_base.bin auto detected as raw binary
avrdude: input file eeprom_base.bin contains 4096 bytes
avrdude: reading on-chip eeprom data:
Reading | ################################################## | 100% 2.14s
avrdude: verifying ...
avrdude: 4096 bytes of eeprom verified
avrdude: safemode: Fuses OK
avrdude done. Thank you.
Appuyez sur une touche pour continuer...
La compilation du FW:
-------- begin --------
Cleaning project:
rm -f simu
rm -f opentx.bin
rm -f opentx.hex
rm -f opentx.eep
rm -f opentx.elf
rm -f opentx.map
rm -f opentx.sym
rm -f opentx.lss
rm -f opentx.lst
rm -f
rm -f `find . -name "*.o"`
rm -f *.d
rm -f *.lst
rm -f allsrc.cpp
rm -f allsimusrc.cpp
rm -f stamp-opentx.h
-------- end --------
-------- begin --------
avr-gcc (AVR_8_bit_GNU_Toolchain_3.5.3_1700) 4.9.2
Copyright (C) 2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
for f in main_avr.cpp targets/mega2560/board_mega2560.cpp targets/mega2560/voice.cpp buzzer_voice.cpp opentx.cpp functions.cpp strhelpers.cpp pulses.cpp switches.cpp curves.cpp mixer.cpp stamp.cpp gui/navigation.cpp gui/popups.cpp gui/widgets.cpp gui/menus.cpp gui/menu_model.cpp gui/menu_model_select.cpp gui/menu_model_setup.cpp gui/menu_model_inputs_mixes.cpp gui/menu_model_limits.cpp gui/menu_model_logical_switches.cpp gui/menu_model_custom_functions.cpp gui/menu_model_telemetry.cpp gui/menu_model_flightmodes.cpp gui/menu_model_curves.cpp gui/menu_general.cpp gui/menu_general_setup.cpp gui/menu_general_trainer.cpp gui/menu_general_version.cpp gui/menu_general_calib.cpp gui/menu_general_diagkeys.cpp gui/menu_general_diaganas.cpp gui/view_main.cpp gui/view_statistics.cpp gui/lcd.cpp gui/splash.cpp gui/fonts.cpp keys.cpp maths.cpp translations.cpp translations/tts_fr.cpp eeprom_common.cpp eeprom_rlc.cpp timers.cpp trainer_input.cpp telemetry/frsky.cpp telemetry/frsky_d.cpp gui/view_telemetry.cpp targets/common/adc_driver.cpp targets/common/lcd_driver.cpp targets/common/telemetry_driver.cpp targets/common/usart_driver.cpp ; do echo "# 1 \"$f\"" >> allsrc.cpp; cat "$f" >> allsrc.cpp; done
Compiling C++: opentx.elf
avr-gcc -mmcu=atmega2560 -I. -x c++ -Os -gdwarf-2 -DF_CPU=16000000UL -DPCBMEGA2560 -DCPUM2560 -DEEPROM_RLC -DEEPROM_VARIANT=0 -DROTARY_ENCODERS=2 -DVOICE -DVOICE_JQ6500 -DBUZZER_VOICE -DGUI -DTRANSLATIONS_FR -DTTS_FR -DDEFAULT_MODE=2 -DOFFSET_ON_INPUT -DAUTOSWITCH -DAUTOSOURCE -DDBLKEYS -DSPLASH -DGRAPHICS -DTHRTRACE -DBOLD_FONT -DFONTSTD -DTIMERS=2 -DFLIGHT_MODES -DCURVES -DGVARS -DCORRECT_NEGATIVE_SHIFTS -DFRSKY -DFRSKY_HUB -DGAUGES -DPPM_CENTER_ADJUSTABLE -DPPM_LIMITS_SYMETRICAL -DOVERRIDE_CHANNEL_FUNCTION -DPPM_UNIT_PERCENT_PREC1 -Wall -mrelax -fno-exceptions -Wno-strict-aliasing -Wformat -Wreturn-type -Wunused -Wuninitialized -Wunknown-pragmas -Wno-switch -Wtype-limits -DFLAVOUR=\"mega2560\" -flto -I. -Itranslations -Itargets/mega2560 -Itargets/9x -Ithirdparty/FatFs -Ithirdparty/FatFs/option -Igui -Ifonts/std -Ifonts/sqt5 -fwhole-program -fno-inline-small-functions -mstrict-X allsrc.cpp --output opentx.elf -Wl,-Map=opentx.map,--cref,-Map,opentx.map -lm
rm -f allsrc.cpp
rm -f allsimusrc.cpp
Creating load file for Flash: opentx.hex
avr-objcopy -O ihex -R .eeprom opentx.elf opentx.hex
Creating load file for Flash: opentx.bin
avr-objcopy -O binary opentx.elf opentx.bin
Size after:
AVR Memory Usage
----------------
Device: atmega2560
Program: 73060 bytes (27.9% Full)
(.text + .data + .bootloader)
Data: 3814 bytes (46.6% Full)
(.data + .bss + .noinit)
-------- end --------
Appuyez sur une touche pour continuer...
Le résumé de l'ecriture du FW :
C:/NSRC/companion/avrdude.exe -c stk500v2 -p m2560 -D -F -P com11 -U flash:w:C:/NSRC2/opentx.hex:i
=================================================================================
avrdude.exe: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.01s
avrdude.exe: Device signature = 0x1e9801
avrdude.exe: reading input file "C:/NSRC2/opentx.hex"
avrdude.exe: writing flash (73060 bytes):
Writing | ################################################## | 100% 9.88s
avrdude.exe: 73060 bytes of flash written
avrdude.exe: verifying flash memory against C:/NSRC2/opentx.hex:
avrdude.exe: load data flash data from input file C:/NSRC2/opentx.hex:
avrdude.exe: input file C:/NSRC2/opentx.hex contains 73060 bytes
avrdude.exe: reading on-chip flash data:
Reading | ################################################## | 100% 7.41s
avrdude.exe: verifying ...
avrdude.exe: 73060 bytes of flash verified
avrdude.exe done. Thank you.
Pour moi tout est OK
Je confirme que le problème est toujours là, qu'est ce que tu en penses?
------------------------------------------------------------------------------------------------------------------------------------------------------
Je tente en exécutant la commande eeprom_vierge.bin au lieu de eeprom_base.bin pour voir.
Puis installation du FW, mais message EEPROM CORROMPUE au démarrage et toujours le pb.
------------------------------------------------------------------------------------------------------------------------------------------------------
Je tente un M2560_Flash_reset.bat
C:\NSRC2\companion\avrdude.exe -p m2560 -c stk500v2 -P com11 erase
C:\NSRC2\companion\avrdude.exe -p m2560 -c stk500v2 -P com11 -U eeprom:r:-:h
C:\NSRC2\companion\avrdude.exe -p m2560 -c stk500v2 -P com11 -U eeprom:w:blah.eep
pause
------------------------------------------------------------------------------------------------------------------------------------------------------
Mais toujours le pb.
Pour info ma carte est une Mega 2560 PRO MINI 5 V :
https://fr.aliexpress.com/item/32967417746.html?spm=a2g0s.9042311.0.0.27426c375G2lKg
Samedi 4 Juillet 2020 à 11:52 Franck.A
Bonjour,
Tout à l'air bon... :-(
Peut-être trois manips avant de déclarer la carte défectueuse :
- reflasher avec un firmware minimaliste (pas de voice, etc.)
- débrancher les trims et utiliser un fil volant relié à la masse pour tester les trims
- vérifier que la tension régulée de 5V ne s'écroule pas à la manipulation des trimsFranck
Samedi 4 Juillet 2020 à 13:15 activa74
Salut Franck,
1) en reflashant avec un firmware avec
AUDIO=NO ^
VOICE=NO ^
je n'ai plus le pb. Maintenant il reste à comprendre pk.
Dans le FW qui ne marche pas j'avais
AUDIO=VOICE ^
VOICE=JQ6500 ^
et je viens de voir d’ailleurs que j'ai un module JQ6500_16P donc j'ai tester aussi avec
AUDIO=VOICE ^
VOICE=JQ6500_16P ^
mais ça ne fonctionne pas non plus.
2) Je viens de checker la tension de 5V au scop et c'est tout bon.
Samedi 4 Juillet 2020 à 15:04 Franck.A
Bon, on avance ;-)
Comme l'action sur les trims génère un son, c'est donc un problème lié à cette génération via la synthèse vocale.
Reste à tester :
- brancher le module jq6500, avec les sons correctement chargés (voir le tuto, il y a une subtilité suivant qu'on utilise la mémoire interne ou une carte SD)
- sinon, reflasher sans audio=voice et en gardant voice=jq65000Samedi 4 Juillet 2020 à 15:21 activa74
Le module est actuellement branché mais sans les sons chargés, c'est peut être ça le pb.
Je viens de reflasher avec un firmware avec
AUDIO=NO ^
VOICE=JQ6500 ^
et plus de pb.
Je vais charger les sons dans le module et retester.
Peux tu me confirmer si il faut mettre JQ6500 ou JQ6500_16P pour mon modiule JQ6500 sans carte sd en 16 pins.
Je pense qu'on voit le bout du tunnel.
Samedi 4 Juillet 2020 à 15:37 Franck.A
C'est presque gagné, en effet ;-)
Pour utiliser le module vocal avec sa mémoire interne (que ce soit 16P ou 28P), c'est JQ65000_16P. L'autre driver est pour le 28P + carte SD.
Vous devez être membre pour poster un message.