Problem R3300L press the reset button can not enter the USB Burning mode of analysis

The beginning and did not notice the problem, because from the get our hands on the device, with a USB Burning Tool Qianlong edition of the brush into the Android 4.4.2, then run EmuELEC, Armbian, and then to drive Armbian Kernel compiled RTL8189FTV of 5.3, both went smoothly because the Kernel 5.3 also almost get started to play Andrews mind and want to see if you can run 7.x versions of Android firmware package at a few, to start when the brush out of the situation and found that pressing reset button can no longer enter the USB Burning Mode.

After a survey, the same as the other two have tried to brush off R3300L, similar cases on the Baidu search, find other people there this case. And the processing method (4R19 ground) users are provided completely ineffective.

So I began to study UBOOT

This system is nothing more than a device ran Android 4.4.2 Qianlong, as well as various versions of EmuELEC, various versions of Armbian, by checking the data and found that Linux fw_printenv and fw_setenv following command to view and modify the configuration of UBOOT lower. EmuELEC can run, but in the high version of Armbian, only executable files, missing /etc/fw_env.config, so he checked the information found corresponding S905L the config.

By analyzing UBOOT configuration can be confirmed EmuELEC and Armbian will make changes to the configuration UBOOT, but their modification only thing bootcmd Riga, coupled with methods from sdcard and usb started, it should not affect the key combination.

Wherein one would then welded on lines TTL seat, turned out before buying a USB serial cable PL2303 The process is also connected various touch stones. First, the TX and RX connection is determined after a few attempts PL2303 TX and RX are connected to the box RX, TX. then the VCC line, each time a connection box on power-up, the startup process simply can not actively watch, then pulled to VCC and GND, which is not under its own start, but after starting to see the whole square block is garbled, ultimately not even VCC, connected only GND, considered himself not start, can appear normal.

UBOOT start observing logs found that, by not press the reset button, even nonunion HDMI, start Blogs exactly the same.

One line "Hit any key to stop autoboot: 0" caused me a lot of confusion, because no matter how press the Enter key, will not enter UBOOT the command line, I suspect this is because of 0, making it impossible to stop access to information. found a configuration item bootdelay, then changed from 0 to 5, found that simply does not work, UBOOT or a hurricane to stop, and check the information found there with Ctrl + C, and still is invalid try again to find information, I found there with the spacebar, this work, as long as the spacebar to shoot, you can enter UBOOT

Continue to check the information, found that there is a configuration item called upgrade_key, this value is "if gpio input GPIOH_6; then echo detect upgrade key; sleep 3; run update; fi;" there is such a line in the log "gpio: pin GPIOH_6 (gpio 55) value is 1 ", by virtue of the circuit have done some experience feel this is wrong. If the reset key input is GPIOH_6, then certainly when pressed in the ground state, can not be high, so this line corresponds to the log among the results is upgrade_key gpio input GPIOH_6 execute for this line, did not detect the reset button pushed state, it can be said that GPIOH_6 this wrong.

Looking for the right gpio pin how to do it? And find information, find gpio status -a This command displays all gpio state, which is easy to handle, the reset button is not pressed and pressed two state, respectively execute this command once, the compare output results came out, the correct pin is obtained GPIOAO_2, before the press is GPIOAO_2: input: 1 [], after pressing becomes GPIOAO_2: input: 0 [] 

Then set the correct value by fw_setenv

fw_setenv upgrade_key "if gpio input GPIOAO_2; then echo detect upgrade key; sleep 3; run update;fi;"

Hold down the reset restart, you can observe the status of the usb burn.

To solve this problem intermittently took me about three days, from Friday to Sunday, it may be very simple for players to professional, but I do a lot of new things, but also to solve the problem through long experience. 

 

Guess you like

Origin www.cnblogs.com/milton/p/12008727.html