openshwprojects / BK7231GUIFlashTool

Easy to use, GUI, BK7231T/BK7231N flash tool and GPIO config extractor for beginners. Dedicated for Windows platform, but works on Linux with Mono. This tool can automatically download latest firmware (on user request) and then do a full BK backup and then write new flash cycle. This tool replaces old bkWriter 1.60 and hid_download_py.
234 stars 24 forks source link

Getting bus failed #25

Closed SebiTimeWaster closed 10 months ago

SebiTimeWaster commented 10 months ago

I can't get past the "Getting bus failed, will try again" step with 2x CB2S modules under linux.

i have:

i am 99.5% sure i made no error.

what bewilders me is that i cannot get ANY output from the module even with the arduino serial monitor (tried all baud rates), can you confirm the module prints something out when booting, or am i hunting red herrings?

the modules where never activated/used.

i am at my wits end.

SebiTimeWaster commented 10 months ago

for shits and giggles (and because im this short to just throw the plugs into the parts bin) i desoldered the can and made high res photos:

CB2S_Front CB2S_Back CB2S_Composite

there is space for pull-down resistors on the board for the serial lines, but they are not populated. this could mean something or the chip could have internal pull-downs, who knows.

SebiTimeWaster commented 10 months ago

adding pull-downs or trying to use RX2/TX2 didnt work.

BacchusIX commented 10 months ago

I'm getting this as well. I tried grounding the 10O pin like the 8266's but didn't seem to help.

DawsonLeBrown commented 10 months ago

To verify that your setup is communicating with the board, you can use RX2/TX2 in arduino IDE - at each bootup, if you have it set up correctly, then you should get a whole lot of data printing out in the serial window.

I also found that the RX1/TX1 pair will dump some logs if CSN is grounded at bootup time.

Having said that, I have had two devices which I simply could not get in to flashing mode - one based on a CBLC9S - and the other was CB2S like yours - however I have managed successfully to flash other CB2S modules

SebiTimeWaster commented 10 months ago

i got a partial success.

with twisting the wires (connecting TX to TX and RX to RX) AND using the CEN to ground method i got the modules into flash mode. the module still connected to the plug had brownouts because it was trying to power-cycle the relais which was too much for the power supply, after desoldering it i could bring it into flash mode.

but i was not able to backup or flash anything, i always get the following error, no matter what baud rate i choose, and i have no clue what is wrong here:

image

Backup name is set to plug1.
Starting read backup and flash new!
Now is: 31 January 2024 01:30:46.
Flasher mode: BK7231N
Going to open port: /dev/ttyUSB1.
Serial port open!
Getting bus... (now, please do reboot by CEN or by power off/on)
Getting bus failed, will try again - 0/100!
Getting bus failed, will try again - 1/100!
Getting bus failed, will try again - 2/100!
Getting bus success!
Going to set baud rate setting (921600)!
Will try to read device flash MID (for unprotect N):
Flash MID loaded: 15701C
Will now search for Flash def in out database...
Flash def found! For: 15701C
Flash information: mid: 15701C, icName: EN25QH16B, manufacturer: ESMT, szMem: 1000000, szSR: 1, cwUnp: 0, cwEnp: 7, cwMsk: 3C, sb: 2, lb: 4, cwdRd: 05-FF-FF-FF, cwdWr: 01-FF-FF-FF
Entering SetProtectState(True)...
sr: 0
final sr: 0
msk: 3c
cw: 0, sb: 2, lb: 4
bfd: 0
SetProtectState(True) success!
Going to start reading at offset 0x00...
Reading 0x00... failed with serial.BytesToRead 4095 (expected 4111)
The beginning of buffer in UART contains 040EFF01E0FCF4061009000000200069 data.
Failed! 

i noticed that there is no serial activity when it is in "Going to start reading at offset 0x00..." mode, i presume it runs into an timeout since it stays 10 or more seconds in that mode.

SebiTimeWaster commented 10 months ago

great, apparently i ran into the same problems as described here:

https://github.com/openshwprojects/BK7231GUIFlashTool/issues/5 https://github.com/openshwprojects/BK7231GUIFlashTool/issues/19

i have no windows computer and the python based flashing tool has broken dependencies that seem unfixable.

BacchusIX commented 10 months ago

I'm getting this as well. I tried grounding the 10O pin like the 8266's but didn't seem to help.

I ended up unsoldering the chip board from the main board and got it to flash. I'm not sure if something on the main board like a Cap was screwing with it or what. I also could not get the power cycle reset for flash to work, I HAD to use the CEN reset.

SebiTimeWaster commented 10 months ago

I ended up unsoldering the chip board from the main board and got it to flash. I'm not sure if something on the main board like a Cap was screwing with it or what.

yeah, that can easily happen when the programmers power suply is not beefy enough, like i encountered myself:

"the module still connected to the plug had brownouts because it was trying to power-cycle the relais which was too much for the power supply, after desoldering it i could bring it into flash mode."

BacchusIX commented 10 months ago

I ended up unsoldering the chip board from the main board and got it to flash. I'm not sure if something on the main board like a Cap was screwing with it or what.

yeah, that can easily happen when the programmers power suply is not beefy enough, like i encountered myself:

"the module still connected to the plug had brownouts because it was trying to power-cycle the relais which was too much for the power supply, after desoldering it i could bring it into flash mode."

I was using an external power supply before I desoldered also, but maybe it still wasn't strong enough. good luck, I hope you get your's working.

SebiTimeWaster commented 10 months ago

i managed to read and flash both chips after setting "cfg_readReplyStyle" in the UART tab to "1". I have no clue what this setting does, but it might be a good idea to add this information to the Linux section in the readme, @openshwprojects .