ds30 Loader free edition forums
Searching bl only works once per reset [solved] - Printable Version

+- ds30 Loader free edition forums (https://picbootloader.com/forum)
+-- Forum: Support (https://picbootloader.com/forum/forumdisplay.php?fid=3)
+--- Forum: 8-bit firmwares (https://picbootloader.com/forum/forumdisplay.php?fid=7)
+--- Thread: Searching bl only works once per reset [solved] (/showthread.php?tid=538)



Searching bl only works once per reset [solved] - opatagio - 2012-12-10

Hello

I've encountered a problem when using 18F67K22 with the latest version of ds30loader. After making the necessary changes to the source files I program the mcu with the bootloader hex-file. Directly after reset of the mcu I press the 'Check for bl' button and it reports firmware version and mcu model. However, if I press the button again it times out.
If I press the 'Write'-button directly after resetting the mcu it reports bl ready and that it found my device but when it's about to start writing it times out.
Im using a baud rate of 115200 and checking the signals with my logic analysator the communication itself looks OK. Also verified hardware and speed setup with my main program where communication works flawless. But for some reason the bootloader stops responding after it sent one packet, the first one.

This is the ouput after pressing 'Write' with option 'Write flash':
Code:
Initiating write...
      Searching for bl .
      Found PIC18F67K22 fw ver. 3.0.2
      Waiting for the boot loader to be ready...ok
      Parsing hexfile...
            File timestamp: 2012-12-08 15:54:34
            Opening hexfile...ok
            Validating hexfile...ok
            Hex file successfully parsed
      Writing flash....response timed outfailed
      Tx 7 bytes / Rx 4 bytes / 3,3s
      Write failed

Attached is the firmware 18F sources.


RE: Searching bl only works once per reset - opatagio - 2012-12-17

Updating with some output from the gui with 'Debug mode' activated.

Pressing the 'Write'-button just after mcu reset while flashed with only bootloader firmware.
Code:
Initiating write...
      Creating port: USB Serial Port (COM11)
      Opening port USB Serial Port (COM11)@115200
      Searching for bl .
      Found PIC18F67K22 fw ver. 3.0.2
      Bootloader placement/size: 9/9
      Waiting for the boot loader to be ready...ok
      Hex file successfully parsed in 2ms
      Writing flash....
            Erasing page 0 @ 0x0000...response timed out
            Write flash failed
      Closing port
      Tx 7 bytes / Rx 4 bytes / 3,2s
      Write failed

Second output also with Debug mode activated in the gui
Code:
Initiating write...
      Creating port: USB Serial Port (COM11)
      Opening port USB Serial Port (COM11)@115200
      Searching for bl .
      Found PIC18F67K22 fw ver. 3.0.2
      Bootloader placement/size: 9/9
      Waiting for the boot loader to be ready...ok
      Parsing hexfile...
            File timestamp: 2012-12-17 15:16:26
            Opening hexfile...ok
            Validating hexfile...ok
            Goto user app address: 0x1FB7C
            User app address: 0xB3D2
            Flash row 0 is used, 0x00 - 0x7F
            Flash row 1 is used, 0x80 - 0xFF
            Flash row 2 is used, 0x100 - 0x17F
            Flash row 3 is used, 0x180 - 0x1FF
            Flash row 4 is used, 0x200 - 0x27F
            Flash row 5 is used, 0x280 - 0x2FF
            Flash row 6 is used, 0x300 - 0x37F
            Flash row 7 is used, 0x380 - 0x3FF
            Flash row 8 is used, 0x400 - 0x47F
            Flash row 9 is used, 0x480 - 0x4FF
            Flash row 10 is used, 0x500 - 0x57F
            Flash row 11 is used, 0x580 - 0x5FF
            Flash row 12 is used, 0x600 - 0x67F
            Flash row 13 is used, 0x680 - 0x6FF
            Flash row 14 is used, 0x700 - 0x77F
            Flash row 15 is used, 0x780 - 0x7FF
            Flash row 16 is used, 0x800 - 0x87F
            Flash row 17 is used, 0x880 - 0x8FF
            Flash row 18 is used, 0x900 - 0x97F
            Flash row 19 is used, 0x980 - 0x9FF
            Flash row 20 is used, 0xA00 - 0xA7F
            Flash row 21 is used, 0xA80 - 0xAFF
            Flash row 22 is used, 0xB00 - 0xB7F
            Flash row 23 is used, 0xB80 - 0xBFF
            Flash row 24 is used, 0xC00 - 0xC7F
            Flash row 25 is used, 0xC80 - 0xCFF
            Flash row 26 is used, 0xD00 - 0xD7F
            Flash row 27 is used, 0xD80 - 0xDFF
            Flash row 28 is used, 0xE00 - 0xE7F
            Flash row 29 is used, 0xE80 - 0xEFF
            Flash row 30 is used, 0xF00 - 0xF7F
            Flash row 31 is used, 0xF80 - 0xFFF
            Flash row 32 is used, 0x1000 - 0x107F
            Flash row 33 is used, 0x1080 - 0x10FF
            Flash row 34 is used, 0x1100 - 0x117F
            Flash row 35 is used, 0x1180 - 0x11FF
            Flash row 36 is used, 0x1200 - 0x127F
            Flash row 37 is used, 0x1280 - 0x12FF
            Flash row 38 is used, 0x1300 - 0x137F
            Flash row 39 is used, 0x1380 - 0x13FF
            Flash row 40 is used, 0x1400 - 0x147F
            Flash row 41 is used, 0x1480 - 0x14FF
            Flash row 42 is used, 0x1500 - 0x157F
            Flash row 43 is used, 0x1580 - 0x15FF
            Flash row 44 is used, 0x1600 - 0x167F
            Flash row 45 is used, 0x1680 - 0x16FF
            Flash row 46 is used, 0x1700 - 0x177F
            Flash row 47 is used, 0x1780 - 0x17FF
            Flash row 48 is used, 0x1800 - 0x187F
            Flash row 49 is used, 0x1880 - 0x18FF
            Flash row 50 is used, 0x1900 - 0x197F
            Flash row 51 is used, 0x1980 - 0x19FF
            Flash row 52 is used, 0x1A00 - 0x1A7F
            Flash row 53 is used, 0x1A80 - 0x1AFF
            Flash row 54 is used, 0x1B00 - 0x1B7F
            Flash row 55 is used, 0x1B80 - 0x1BFF
            Flash row 56 is used, 0x1C00 - 0x1C7F
            Flash row 57 is used, 0x1C80 - 0x1CFF
            Flash row 58 is used, 0x1D00 - 0x1D7F
            Flash row 59 is used, 0x1D80 - 0x1DFF
            Flash row 60 is used, 0x1E00 - 0x1E7F
            Flash row 61 is used, 0x1E80 - 0x1EFF
            Flash row 62 is used, 0x1F00 - 0x1F7F
            Flash row 63 is used, 0x1F80 - 0x1FFF
            Flash row 64 is used, 0x2000 - 0x207F
            Flash row 65 is used, 0x2080 - 0x20FF
            Flash row 66 is used, 0x2100 - 0x217F
            Flash row 67 is used, 0x2180 - 0x21FF
            Flash row 68 is used, 0x2200 - 0x227F
            Flash row 69 is used, 0x2280 - 0x22FF
            Flash row 70 is used, 0x2300 - 0x237F
            Flash row 71 is used, 0x2380 - 0x23FF
            Flash row 72 is used, 0x2400 - 0x247F
            Flash row 73 is used, 0x2480 - 0x24FF
            Flash row 74 is used, 0x2500 - 0x257F
            Flash row 75 is used, 0x2580 - 0x25FF
            Flash row 76 is used, 0x2600 - 0x267F
            Flash row 77 is used, 0x2680 - 0x26FF
            Flash row 78 is used, 0x2700 - 0x277F
            Flash row 79 is used, 0x2780 - 0x27FF
            Flash row 80 is used, 0x2800 - 0x287F
            Flash row 81 is used, 0x2880 - 0x28FF
            Flash row 82 is used, 0x2900 - 0x297F
            Flash row 83 is used, 0x2980 - 0x29FF
            Flash row 84 is used, 0x2A00 - 0x2A7F
            Flash row 85 is used, 0x2A80 - 0x2AFF
            Flash row 86 is used, 0x2B00 - 0x2B7F
            Flash row 87 is used, 0x2B80 - 0x2BFF
            Flash row 88 is used, 0x2C00 - 0x2C7F
            Flash row 89 is used, 0x2C80 - 0x2CFF
            Flash row 90 is used, 0x2D00 - 0x2D7F
            Flash row 91 is used, 0x2D80 - 0x2DFF
            Flash row 92 is used, 0x2E00 - 0x2E7F
            Flash row 93 is used, 0x2E80 - 0x2EFF
            Flash row 94 is used, 0x2F00 - 0x2F7F
            Flash row 95 is used, 0x2F80 - 0x2FFF
            Flash row 96 is used, 0x3000 - 0x307F
            Flash row 97 is used, 0x3080 - 0x30FF
            Flash row 98 is used, 0x3100 - 0x317F
            Flash row 99 is used, 0x3180 - 0x31FF
            Flash row 100 is used, 0x3200 - 0x327F
            Flash row 101 is used, 0x3280 - 0x32FF
            Flash row 102 is used, 0x3300 - 0x337F
            Flash row 103 is used, 0x3380 - 0x33FF
            Flash row 104 is used, 0x3400 - 0x347F
            Flash row 105 is used, 0x3480 - 0x34FF
            Flash row 106 is used, 0x3500 - 0x357F
            Flash row 107 is used, 0x3580 - 0x35FF
            Flash row 108 is used, 0x3600 - 0x367F
            Flash row 109 is used, 0x3680 - 0x36FF
            Flash row 110 is used, 0x3700 - 0x377F
            Flash row 111 is used, 0x3780 - 0x37FF
            Flash row 112 is used, 0x3800 - 0x387F
            Flash row 113 is used, 0x3880 - 0x38FF
            Flash row 114 is used, 0x3900 - 0x397F
            Flash row 115 is used, 0x3980 - 0x39FF
            Flash row 116 is used, 0x3A00 - 0x3A7F
            Flash row 117 is used, 0x3A80 - 0x3AFF
            Flash row 118 is used, 0x3B00 - 0x3B7F
            Flash row 119 is used, 0x3B80 - 0x3BFF
            Flash row 120 is used, 0x3C00 - 0x3C7F
            Flash row 121 is used, 0x3C80 - 0x3CFF
            Flash row 122 is used, 0x3D00 - 0x3D7F
            Flash row 123 is used, 0x3D80 - 0x3DFF
            Flash row 124 is used, 0x3E00 - 0x3E7F
            Flash row 125 is used, 0x3E80 - 0x3EFF
            Flash row 126 is used, 0x3F00 - 0x3F7F
            Flash row 127 is used, 0x3F80 - 0x3FFF
            Flash row 128 is used, 0x4000 - 0x407F
            Flash row 129 is used, 0x4080 - 0x40FF
            Flash row 130 is used, 0x4100 - 0x417F
            Flash row 131 is used, 0x4180 - 0x41FF
            Flash row 132 is used, 0x4200 - 0x427F
            Flash row 133 is used, 0x4280 - 0x42FF
            Flash row 134 is used, 0x4300 - 0x437F
            Flash row 135 is used, 0x4380 - 0x43FF
            Flash row 136 is used, 0x4400 - 0x447F
            Flash row 137 is used, 0x4480 - 0x44FF
            Flash row 138 is used, 0x4500 - 0x457F
            Flash row 139 is used, 0x4580 - 0x45FF
            Flash row 140 is used, 0x4600 - 0x467F
            Flash row 141 is used, 0x4680 - 0x46FF
            Flash row 142 is used, 0x4700 - 0x477F
            Flash row 143 is used, 0x4780 - 0x47FF
            Flash row 144 is used, 0x4800 - 0x487F
            Flash row 145 is used, 0x4880 - 0x48FF
            Flash row 146 is used, 0x4900 - 0x497F
            Flash row 147 is used, 0x4980 - 0x49FF
            Flash row 148 is used, 0x4A00 - 0x4A7F
            Flash row 149 is used, 0x4A80 - 0x4AFF
            Flash row 150 is used, 0x4B00 - 0x4B7F
            Flash row 151 is used, 0x4B80 - 0x4BFF
            Flash row 152 is used, 0x4C00 - 0x4C7F
            Flash row 153 is used, 0x4C80 - 0x4CFF
            Flash row 154 is used, 0x4D00 - 0x4D7F
            Flash row 155 is used, 0x4D80 - 0x4DFF
            Flash row 156 is used, 0x4E00 - 0x4E7F
            Flash row 157 is used, 0x4E80 - 0x4EFF
            Flash row 158 is used, 0x4F00 - 0x4F7F
            Flash row 159 is used, 0x4F80 - 0x4FFF
            Flash row 160 is used, 0x5000 - 0x507F
            Flash row 161 is used, 0x5080 - 0x50FF
            Flash row 162 is used, 0x5100 - 0x517F
            Flash row 163 is used, 0x5180 - 0x51FF
            Flash row 164 is used, 0x5200 - 0x527F
            Flash row 165 is used, 0x5280 - 0x52FF
            Flash row 166 is used, 0x5300 - 0x537F
            Flash row 167 is used, 0x5380 - 0x53FF
            Flash row 168 is used, 0x5400 - 0x547F
            Flash row 169 is used, 0x5480 - 0x54FF
            Flash row 170 is used, 0x5500 - 0x557F
            Flash row 171 is used, 0x5580 - 0x55FF
            Flash row 172 is used, 0x5600 - 0x567F
            Flash row 173 is used, 0x5680 - 0x56FF
            Flash row 174 is used, 0x5700 - 0x577F
            Flash row 175 is used, 0x5780 - 0x57FF
            Flash row 176 is used, 0x5800 - 0x587F
            Flash row 177 is used, 0x5880 - 0x58FF
            Flash row 178 is used, 0x5900 - 0x597F
            Flash row 179 is used, 0x5980 - 0x59FF
            Flash row 180 is used, 0x5A00 - 0x5A7F
            Flash row 181 is used, 0x5A80 - 0x5AFF
            Flash row 182 is used, 0x5B00 - 0x5B7F
            Flash row 183 is used, 0x5B80 - 0x5BFF
            Flash row 184 is used, 0x5C00 - 0x5C7F
            Flash row 185 is used, 0x5C80 - 0x5CFF
            Flash row 186 is used, 0x5D00 - 0x5D7F
            Flash row 187 is used, 0x5D80 - 0x5DFF
            Flash row 188 is used, 0x5E00 - 0x5E7F
            Flash row 189 is used, 0x5E80 - 0x5EFF
            Flash row 190 is used, 0x5F00 - 0x5F7F
            Flash row 191 is used, 0x5F80 - 0x5FFF
            Flash row 192 is used, 0x6000 - 0x607F
            Flash row 193 is used, 0x6080 - 0x60FF
            Flash row 194 is used, 0x6100 - 0x617F
            Flash row 195 is used, 0x6180 - 0x61FF
            Flash row 196 is used, 0x6200 - 0x627F
            Flash row 197 is used, 0x6280 - 0x62FF
            Flash row 198 is used, 0x6300 - 0x637F
            Flash row 199 is used, 0x6380 - 0x63FF
            Flash row 200 is used, 0x6400 - 0x647F
            Flash row 201 is used, 0x6480 - 0x64FF
            Flash row 202 is used, 0x6500 - 0x657F
            Flash row 203 is used, 0x6580 - 0x65FF
            Flash row 204 is used, 0x6600 - 0x667F
            Flash row 205 is used, 0x6680 - 0x66FF
            Flash row 206 is used, 0x6700 - 0x677F
            Flash row 207 is used, 0x6780 - 0x67FF
            Flash row 208 is used, 0x6800 - 0x687F
            Flash row 209 is used, 0x6880 - 0x68FF
            Flash row 210 is used, 0x6900 - 0x697F
            Flash row 211 is used, 0x6980 - 0x69FF
            Flash row 212 is used, 0x6A00 - 0x6A7F
            Flash row 213 is used, 0x6A80 - 0x6AFF
            Flash row 214 is used, 0x6B00 - 0x6B7F
            Flash row 215 is used, 0x6B80 - 0x6BFF
            Flash row 216 is used, 0x6C00 - 0x6C7F
            Flash row 217 is used, 0x6C80 - 0x6CFF
            Flash row 218 is used, 0x6D00 - 0x6D7F
            Flash row 219 is used, 0x6D80 - 0x6DFF
            Flash row 220 is used, 0x6E00 - 0x6E7F
            Flash row 221 is used, 0x6E80 - 0x6EFF
            Flash row 222 is used, 0x6F00 - 0x6F7F
            Flash row 223 is used, 0x6F80 - 0x6FFF
            Flash row 224 is used, 0x7000 - 0x707F
            Flash row 225 is used, 0x7080 - 0x70FF
            Flash row 226 is used, 0x7100 - 0x717F
            Flash row 227 is used, 0x7180 - 0x71FF
            Flash row 228 is used, 0x7200 - 0x727F
            Flash row 229 is used, 0x7280 - 0x72FF
            Flash row 230 is used, 0x7300 - 0x737F
            Flash row 231 is used, 0x7380 - 0x73FF
            Flash row 232 is used, 0x7400 - 0x747F
            Flash row 233 is used, 0x7480 - 0x74FF
            Flash row 234 is used, 0x7500 - 0x757F
            Flash row 235 is used, 0x7580 - 0x75FF
            Flash row 236 is used, 0x7600 - 0x767F
            Flash row 237 is used, 0x7680 - 0x76FF
            Flash row 238 is used, 0x7700 - 0x777F
            Flash row 239 is used, 0x7780 - 0x77FF
            Flash row 240 is used, 0x7800 - 0x787F
            Flash row 241 is used, 0x7880 - 0x78FF
            Flash row 242 is used, 0x7900 - 0x797F
            Flash row 243 is used, 0x7980 - 0x79FF
            Flash row 244 is used, 0x7A00 - 0x7A7F
            Flash row 245 is used, 0x7A80 - 0x7AFF
            Flash row 246 is used, 0x7B00 - 0x7B7F
            Flash row 247 is used, 0x7B80 - 0x7BFF
            Flash row 248 is used, 0x7C00 - 0x7C7F
            Flash row 249 is used, 0x7C80 - 0x7CFF
            Flash row 250 is used, 0x7D00 - 0x7D7F
            Flash row 251 is used, 0x7D80 - 0x7DFF
            Flash row 252 is used, 0x7E00 - 0x7E7F
            Flash row 253 is used, 0x7E80 - 0x7EFF
            Flash row 254 is used, 0x7F00 - 0x7F7F
            Flash row 255 is used, 0x7F80 - 0x7FFF
            Flash row 256 is used, 0x8000 - 0x807F
            Flash row 257 is used, 0x8080 - 0x80FF
            Flash row 258 is used, 0x8100 - 0x817F
            Flash row 259 is used, 0x8180 - 0x81FF
            Flash row 260 is used, 0x8200 - 0x827F
            Flash row 261 is used, 0x8280 - 0x82FF
            Flash row 262 is used, 0x8300 - 0x837F
            Flash row 263 is used, 0x8380 - 0x83FF
            Flash row 264 is used, 0x8400 - 0x847F
            Flash row 265 is used, 0x8480 - 0x84FF
            Flash row 266 is used, 0x8500 - 0x857F
            Flash row 267 is used, 0x8580 - 0x85FF
            Flash row 268 is used, 0x8600 - 0x867F
            Flash row 269 is used, 0x8680 - 0x86FF
            Flash row 270 is used, 0x8700 - 0x877F
            Flash row 271 is used, 0x8780 - 0x87FF
            Flash row 272 is used, 0x8800 - 0x887F
            Flash row 273 is used, 0x8880 - 0x88FF
            Flash row 274 is used, 0x8900 - 0x897F
            Flash row 275 is used, 0x8980 - 0x89FF
            Flash row 276 is used, 0x8A00 - 0x8A7F
            Flash row 277 is used, 0x8A80 - 0x8AFF
            Flash row 278 is used, 0x8B00 - 0x8B7F
            Flash row 279 is used, 0x8B80 - 0x8BFF
            Flash row 280 is used, 0x8C00 - 0x8C7F
            Flash row 281 is used, 0x8C80 - 0x8CFF
            Flash row 282 is used, 0x8D00 - 0x8D7F
            Flash row 283 is used, 0x8D80 - 0x8DFF
            Flash row 284 is used, 0x8E00 - 0x8E7F
            Flash row 285 is used, 0x8E80 - 0x8EFF
            Flash row 286 is used, 0x8F00 - 0x8F7F
            Flash row 287 is used, 0x8F80 - 0x8FFF
            Flash row 288 is used, 0x9000 - 0x907F
            Flash row 289 is used, 0x9080 - 0x90FF
            Flash row 290 is used, 0x9100 - 0x917F
            Flash row 291 is used, 0x9180 - 0x91FF
            Flash row 292 is used, 0x9200 - 0x927F
            Flash row 293 is used, 0x9280 - 0x92FF
            Flash row 294 is used, 0x9300 - 0x937F
            Flash row 295 is used, 0x9380 - 0x93FF
            Flash row 296 is used, 0x9400 - 0x947F
            Flash row 297 is used, 0x9480 - 0x94FF
            Flash row 298 is used, 0x9500 - 0x957F
            Flash row 299 is used, 0x9580 - 0x95FF
            Flash row 300 is used, 0x9600 - 0x967F
            Flash row 301 is used, 0x9680 - 0x96FF
            Flash row 302 is used, 0x9700 - 0x977F
            Flash row 303 is used, 0x9780 - 0x97FF
            Flash row 304 is used, 0x9800 - 0x987F
            Flash row 305 is used, 0x9880 - 0x98FF
            Flash row 306 is used, 0x9900 - 0x997F
            Flash row 307 is used, 0x9980 - 0x99FF
            Flash row 308 is used, 0x9A00 - 0x9A7F
            Flash row 309 is used, 0x9A80 - 0x9AFF
            Flash row 310 is used, 0x9B00 - 0x9B7F
            Flash row 311 is used, 0x9B80 - 0x9BFF
            Flash row 312 is used, 0x9C00 - 0x9C7F
            Flash row 313 is used, 0x9C80 - 0x9CFF
            Flash row 314 is used, 0x9D00 - 0x9D7F
            Flash row 315 is used, 0x9D80 - 0x9DFF
            Flash row 316 is used, 0x9E00 - 0x9E7F
            Flash row 317 is used, 0x9E80 - 0x9EFF
            Flash row 318 is used, 0x9F00 - 0x9F7F
            Flash row 319 is used, 0x9F80 - 0x9FFF
            Flash row 320 is used, 0xA000 - 0xA07F
            Flash row 321 is used, 0xA080 - 0xA0FF
            Flash row 322 is used, 0xA100 - 0xA17F
            Flash row 323 is used, 0xA180 - 0xA1FF
            Flash row 324 is used, 0xA200 - 0xA27F
            Flash row 325 is used, 0xA280 - 0xA2FF
            Flash row 326 is used, 0xA300 - 0xA37F
            Flash row 327 is used, 0xA380 - 0xA3FF
            Flash row 328 is used, 0xA400 - 0xA47F
            Flash row 329 is used, 0xA480 - 0xA4FF
            Flash row 330 is used, 0xA500 - 0xA57F
            Flash row 331 is used, 0xA580 - 0xA5FF
            Flash row 332 is used, 0xA600 - 0xA67F
            Flash row 333 is used, 0xA680 - 0xA6FF
            Flash row 334 is used, 0xA700 - 0xA77F
            Flash row 335 is used, 0xA780 - 0xA7FF
            Flash row 336 is used, 0xA800 - 0xA87F
            Flash row 337 is used, 0xA880 - 0xA8FF
            Flash row 338 is used, 0xA900 - 0xA97F
            Flash row 339 is used, 0xA980 - 0xA9FF
            Flash row 340 is used, 0xAA00 - 0xAA7F
            Flash row 341 is used, 0xAA80 - 0xAAFF
            Flash row 342 is used, 0xAB00 - 0xAB7F
            Flash row 343 is used, 0xAB80 - 0xABFF
            Flash row 344 is used, 0xAC00 - 0xAC7F
            Flash row 345 is used, 0xAC80 - 0xACFF
            Flash row 346 is used, 0xAD00 - 0xAD7F
            Flash row 347 is used, 0xAD80 - 0xADFF
            Flash row 348 is used, 0xAE00 - 0xAE7F
            Flash row 349 is used, 0xAE80 - 0xAEFF
            Flash row 350 is used, 0xAF00 - 0xAF7F
            Flash row 351 is used, 0xAF80 - 0xAFFF
            Flash row 352 is used, 0xB000 - 0xB07F
            Flash row 353 is used, 0xB080 - 0xB0FF
            Flash row 354 is used, 0xB100 - 0xB17F
            Flash row 355 is used, 0xB180 - 0xB1FF
            Flash row 356 is used, 0xB200 - 0xB27F
            Flash row 357 is used, 0xB280 - 0xB2FF
            Flash row 358 is used, 0xB300 - 0xB37F
            Flash row 359 is used, 0xB380 - 0xB3FF
            Flash row 1014 is used, 0x1FB00 - 0x1FB7F
            Config word 0 is used, value: 0x08
            Config word 1 is used, value: 0x13
            Config word 2 is used, value: 0x14
            Config word 3 is used, value: 0x22
            Config word 4 is used, value: 0x00
            Config word 5 is used, value: 0x88
            Config word 6 is used, value: 0x81
            Config word 8 is used, value: 0xFF
            Config word 9 is used, value: 0xC0
            Config word 10 is used, value: 0xFF
            Config word 11 is used, value: 0xE0
            Config word 12 is used, value: 0xFF
            Config word 13 is used, value: 0x40
            Bootloader start address: 0x1FB80
            Bootloader end address: 0x1FFFF
            Bootloader start page: 1015
            Bootloader end page: 1023
            Bootloader start row: 1015
            Bootloader end row: 1023
            Hex file successfully parsed in 40ms
      Writing flash....
            Erasing page 0 @ 0x0000...response timed out
            Write flash failed
      Closing port
      Tx 7 bytes / Rx 4 bytes / 3,2s
      Write failed



RE: Searching bl only works once per reset - Mikael Gustavsson - 2012-12-17

Hello,
-Have you tried with the watchdog disabled?
-Does the errata contain any relevant items?


RE: Searching bl only works once per reset - opatagio - 2012-12-18

Hi

- watchdog has been both activated and de-activated with same result as above.
- errata of this device states that in synchronous mode with high baudrates the data may become corrupt. However this bl works in async mode and my application itself has shoveled some hundred thousands packets with the same uart settings I specified in the bl. So that should be a non-issue here.

So far I have tried the usual stuff, change baudrate, fosc source, disable/enable PLL, triple checked the config words etc...

I will start a more indepth search to find this problem tonight. Will have to crosscheck the source files of this bl project with the sources I got working on another device to begin with and if there's no apparant error/difference I'll go with old "trig-led" Smile


RE: Searching bl only works once per reset - opatagio - 2012-12-18

Ok, quick update.

I could not see any difference (except mcu, and speed) between my current project source compared to the earlier source which is confirmed to work on a 25K20/22 mcu.

As I continued to measure and try different settings I added a bsf command in the user code space to the mcu pin (RD7) that controls a relay on my board. Basically I wanted to hear the click when the relay switches state as a reassurance that the user code space is executed without having to measure.
Anyways, the relay switches state upon startup and I continue by pressing the 'Write'-button.
What happens here is puzzling me, the relay drops again as if mcu gets reset. So I started measure the pins and sure enough, everytime I press 'Write' the mcu resets and gets stuck there. Only way to bring it out of that state is cycle power or MCLR-pin.
This does not occur with 'Check BL' and config STVREN On or Off makes no difference.


RE: Searching bl only works once per reset - Mikael Gustavsson - 2012-12-19

Could you please try using the attached uart.inc file.
Thanks


RE: Searching bl only works once per reset - opatagio - 2012-12-20

Your attached file, uart.inc, seems to do the trick. So far I can verify that 'Check bl' and 'Write' works like a charm. I will do some more tests with Reset commands, power off/mclr reset etc... But so far it is working great.