Hello Chekov,
On Mon, 01 Mar 2010 02:04:13 +0100, "chekov" chekov@riseup.net wrote:
but now i'm stuck, because i get no feedback from the phone, except that the display lights up blue.
I think the problem is related to this:
Received PROMPT2 from phone, starting download handle_write(): 4096 bytes (4096/16503) handle_write(): 4096 bytes (8192/16503) handle_write(): 4096 bytes (12288/16503) handle_write(): 4096 bytes (16384/16503) handle_write(): 119 bytes (16503/16503) handle_write(): finished handle_write(): 4096 bytes (4096/16503) <<<<----- this should not happen got 1 bytes from modem, data looks like: 1b
This probably means that the downloader does not receive a reply in time and continues to download the code. You can try to fix it with this modification:
--- ./src/host/osmocon/osmocon.c Tue Feb 23 18:38:39 2010 +++ /src/host/osmocon/osmocon.c Mon Mar 01 07:59:22 2010 @@ -275,6 +275,7 @@ usleep(1); } else if (dnload.write_ptr >= dnload.data + dnload.data_len) { printf("finished\n"); + dnload.serial_fd.when = BSC_FD_READ; dnload.write_ptr = dnload.data; return 1; }
As a consequence of still sending data to the phone, the firmware could crash because there was a bug which is already fixed in the latest GIT version. You can check if you already have the latest version:
--- ./src/target/firmware/comm/msgb.c Tue Feb 23 18:38:39 2010 +++ /src/target/firmware/comm/msgb.c Sun Feb 28 11:22:57 2010 @@ -35,7 +35,11 @@
#ifdef NO_TALLOC /* This is a poor mans static allocator for msgb objects */ -#define MSGB_DATA_SIZE 256 +#define MSGB_DATA_SIZE 256+4 #define MSGB_NUM 16 struct supermsg { uint8_t allocated;
Maybe the above helps to solve the problem.
Best regards, Dieter