2

I'm working on wireless uploader for Arduino over BLE. I've managed to make it working for Arduino Mega 2560 using GPIO and HM-10 AT commands to control GPIO pins. I'm using pretty the same schematics to perform reset just like for USB is done (wire GPIO to capacitor, resistor and MCU reset pin). The problem that it does work for Mega 2560 and it does not work for Uno.

Here is log file for Mega 2560:

2015-09-05 14:53:01.055 xctest[59735:7704704] [DEBUG  ] [   ]: BleSerialDevice: open()
2015-09-05 14:53:01.055 xctest[59735:7704704] [DEBUG  ] [   ]: Connecting to service=0xFFE0, rx=0xFFE1, tx=0xFFE1
2015-09-05 14:53:01.055 xctest[59735:7704704] [INFO   ] [   ]: Start discovering peripherals ...
2015-09-05 14:53:01.056 xctest[59735:7704704] [DEBUG  ] [   ]: Waiting for peripheral to be discovered ...
2015-09-05 14:53:01.326 xctest[59735:7704747] [INFO   ] [   ]: Found peripheral: <CBPeripheral: 0x100407e30 identifier = D92ECAAB-51A5-44D5-8C6C-536CD797867E, Name = "BleIos", state = disconnected>
2015-09-05 14:53:01.326 xctest[59735:7704747] [DEBUG  ] [   ]: Stop scanning
2015-09-05 14:53:01.326 xctest[59735:7704747] [INFO   ] [   ]: Connecting to <CBPeripheral: 0x100407e30 identifier = D92ECAAB-51A5-44D5-8C6C-536CD797867E, Name = "BleIos", state = disconnected>
2015-09-05 14:53:01.548 xctest[59735:7704747] [DEBUG  ] [   ]: Connected to peripheral <CBPeripheral: 0x100407e30 identifier = D92ECAAB-51A5-44D5-8C6C-536CD797867E, Name = "BleIos", state = connected>
2015-09-05 14:53:01.551 xctest[59735:7704747] [TRACE  ] [   ]: Discovered services for peripheral <CBPeripheral: 0x100407e30 identifier = D92ECAAB-51A5-44D5-8C6C-536CD797867E, Name = "BleIos", state = connected>
2015-09-05 14:53:01.551 xctest[59735:7704747] [DEBUG  ] [   ]: Discovered service <CBService: 0x10020d510>
2015-09-05 14:53:01.692 xctest[59735:7704747] [TRACE  ] [   ]: Discovered characteristics for service <CBService: 0x10020d510>
2015-09-05 14:53:01.693 xctest[59735:7704747] [TRACE  ] [   ]: Discovered characteristic <CBCharacteristic: 0x1001076a0>
2015-09-05 14:53:01.693 xctest[59735:7704747] [DEBUG  ] [   ]: Tx characteristic supports WriteWithResponse: NO
2015-09-05 14:53:01.693 xctest[59735:7704747] [TRACE  ] [   ]: Subscribing to Rx value
2015-09-05 14:53:01.704 xctest[59735:7704704] [INFO   ] [   ]: Connected successfully
2015-09-05 14:53:01.705 xctest[59735:7704704] [DEBUG  ] [   ]: WiringProtocol:open: releasing DTR/RTS
2015-09-05 14:53:01.705 xctest[59735:7704704] [TRACE  ] [   ]: Waiting until subscribed to Rx value ...
2015-09-05 14:53:02.932 xctest[59735:7704747] [DEBUG  ] [IN ]: Updated notifications state for RX characteristic: isNotifying=YES
2015-09-05 14:53:02.971 xctest[59735:7704704] [DEBUG  ] [OUT]: Sending 8 bytes
2015-09-05 14:53:02.972 xctest[59735:7704704] [TRACE  ] [OUT]: Send: A [0x41] T [0x54] + [0x2B] P [0x50] I [0x49] O [0x4F] 2 [0x32] 1 [0x31] 
2015-09-05 14:53:02.972 xctest[59735:7704704] [TRACE  ] [OUT]: BLE sending bytes range from 0 length 8
2015-09-05 14:53:03.027 xctest[59735:7704704] [DEBUG  ] [   ]: WiringProtocol:open: asserting DTR/RTS
2015-09-05 14:53:03.027 xctest[59735:7704704] [DEBUG  ] [OUT]: Sending 8 bytes
2015-09-05 14:53:03.028 xctest[59735:7704704] [TRACE  ] [OUT]: Send: A [0x41] T [0x54] + [0x2B] P [0x50] I [0x49] O [0x4F] 2 [0x32] 0 [0x30] 
2015-09-05 14:53:03.028 xctest[59735:7704704] [TRACE  ] [OUT]: BLE sending bytes range from 0 length 8
2015-09-05 14:53:03.083 xctest[59735:7704704] [DEBUG  ] [   ]: Draining for 300 ms ...
2015-09-05 14:53:03.083 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.341 xctest[59735:7704746] [TRACE  ] [IN ]: Rx value received 9 bytes: O [0x4F] K [0x4B] + [0x2B] P [0x50] I [0x49] O [0x4F] 2 [0x32] : [0x3A] 1 [0x31] 
2015-09-05 14:53:03.341 xctest[59735:7704747] [TRACE  ] [IN ]: Rx value received 9 bytes: O [0x4F] K [0x4B] + [0x2B] P [0x50] I [0x49] O [0x4F] 2 [0x32] : [0x3A] 0 [0x30] 
2015-09-05 14:53:03.385 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.385 xctest[59735:7704704] [TRACE  ] [IN ]: Ble clear buffer
2015-09-05 14:53:03.385 xctest[59735:7704704] [DEBUG  ] [IN ]: Drained 18 bytes
2015-09-05 14:53:03.386 xctest[59735:7704704] [DEBUG  ] [OUT]: Sending 7 bytes
2015-09-05 14:53:03.386 xctest[59735:7704704] [TRACE  ] [OUT]: Send: . [0x1B] . [0x01] . [0x00] . [0x01] . [0x0E] . [0x01] . [0x14] 
2015-09-05 14:53:03.386 xctest[59735:7704704] [TRACE  ] [OUT]: BLE sending bytes range from 0 length 7
2015-09-05 14:53:03.387 xctest[59735:7704704] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 14:53:03.387 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.453 xctest[59735:7704747] [TRACE  ] [IN ]: Rx value received 1 bytes: . [0x00] 
2015-09-05 14:53:03.453 xctest[59735:7704747] [TRACE  ] [IN ]: Ignoring single 0x00 char 
2015-09-05 14:53:03.454 xctest[59735:7704746] [TRACE  ] [IN ]: Rx value received 17 bytes: . [0x1B] . [0x01] . [0x00] . [0x0B] . [0x0E] . [0x01] . [0x00] . [0x08] A [0x41] V [0x56] R [0x52] I [0x49] S [0x53] P [0x50] _ [0x5F] 2 [0x32] t [0x74] 
2015-09-05 14:53:03.455 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.455 xctest[59735:7704704] [TRACE  ] [IN ]: Receive: . [0x1B] 
2015-09-05 14:53:03.456 xctest[59735:7704704] [DEBUG  ] [IN ]: Read 1 bytes, actually received 17 bytes
2015-09-05 14:53:03.456 xctest[59735:7704704] [TRACE  ] [IN ]: 16 bytes in incoming buffer remaining for next receive
2015-09-05 14:53:03.456 xctest[59735:7704704] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 14:53:03.456 xctest[59735:7704704] [TRACE  ] [IN ]: Having current receive buffer: . [0x01] . [0x00] . [0x0B] . [0x0E] . [0x01] . [0x00] . [0x08] A [0x41] V [0x56] R [0x52]  ... +6 bytes
2015-09-05 14:53:03.457 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.457 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.457 xctest[59735:7704704] [TRACE  ] [IN ]: Receive: . [0x01] 
2015-09-05 14:53:03.457 xctest[59735:7704704] [DEBUG  ] [IN ]: Read 1 bytes, actually received 16 bytes
2015-09-05 14:53:03.458 xctest[59735:7704704] [TRACE  ] [IN ]: 15 bytes in incoming buffer remaining for next receive
2015-09-05 14:53:03.458 xctest[59735:7704704] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 14:53:03.458 xctest[59735:7704704] [TRACE  ] [IN ]: Having current receive buffer: . [0x00] . [0x0B] . [0x0E] . [0x01] . [0x00] . [0x08] A [0x41] V [0x56] R [0x52] I [0x49]  ... +5 bytes
2015-09-05 14:53:03.459 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.459 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.459 xctest[59735:7704704] [TRACE  ] [IN ]: Receive: . [0x00] 
2015-09-05 14:53:03.459 xctest[59735:7704704] [DEBUG  ] [IN ]: Read 1 bytes, actually received 15 bytes
2015-09-05 14:53:03.460 xctest[59735:7704704] [TRACE  ] [IN ]: 14 bytes in incoming buffer remaining for next receive
2015-09-05 14:53:03.460 xctest[59735:7704704] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 14:53:03.460 xctest[59735:7704704] [TRACE  ] [IN ]: Having current receive buffer: . [0x0B] . [0x0E] . [0x01] . [0x00] . [0x08] A [0x41] V [0x56] R [0x52] I [0x49] S [0x53]  ... +4 bytes
2015-09-05 14:53:03.460 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.461 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.461 xctest[59735:7704704] [TRACE  ] [IN ]: Receive: . [0x0B] 
2015-09-05 14:53:03.461 xctest[59735:7704704] [DEBUG  ] [IN ]: Read 1 bytes, actually received 14 bytes
2015-09-05 14:53:03.461 xctest[59735:7704704] [TRACE  ] [IN ]: 13 bytes in incoming buffer remaining for next receive
2015-09-05 14:53:03.462 xctest[59735:7704704] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 14:53:03.462 xctest[59735:7704704] [TRACE  ] [IN ]: Having current receive buffer: . [0x0E] . [0x01] . [0x00] . [0x08] A [0x41] V [0x56] R [0x52] I [0x49] S [0x53] P [0x50]  ... +3 bytes
2015-09-05 14:53:03.462 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.462 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.462 xctest[59735:7704704] [TRACE  ] [IN ]: Receive: . [0x0E] 
2015-09-05 14:53:03.463 xctest[59735:7704704] [DEBUG  ] [IN ]: Read 1 bytes, actually received 13 bytes
2015-09-05 14:53:03.463 xctest[59735:7704704] [TRACE  ] [IN ]: 12 bytes in incoming buffer remaining for next receive
2015-09-05 14:53:03.463 xctest[59735:7704704] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 14:53:03.463 xctest[59735:7704704] [TRACE  ] [IN ]: Having current receive buffer: . [0x01] . [0x00] . [0x08] A [0x41] V [0x56] R [0x52] I [0x49] S [0x53] P [0x50] _ [0x5F]  ... +2 bytes
2015-09-05 14:53:03.463 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.463 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.464 xctest[59735:7704704] [TRACE  ] [IN ]: Receive: . [0x01] 
2015-09-05 14:53:03.464 xctest[59735:7704704] [DEBUG  ] [IN ]: Read 1 bytes, actually received 12 bytes
2015-09-05 14:53:03.464 xctest[59735:7704704] [TRACE  ] [IN ]: 11 bytes in incoming buffer remaining for next receive
2015-09-05 14:53:03.464 xctest[59735:7704704] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 14:53:03.464 xctest[59735:7704704] [TRACE  ] [IN ]: Having current receive buffer: . [0x00] . [0x08] A [0x41] V [0x56] R [0x52] I [0x49] S [0x53] P [0x50] _ [0x5F] 2 [0x32]  ... +1 bytes
2015-09-05 14:53:03.465 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.465 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.465 xctest[59735:7704704] [TRACE  ] [IN ]: Receive: . [0x00] 
2015-09-05 14:53:03.465 xctest[59735:7704704] [DEBUG  ] [IN ]: Read 1 bytes, actually received 11 bytes
2015-09-05 14:53:03.465 xctest[59735:7704704] [TRACE  ] [IN ]: 10 bytes in incoming buffer remaining for next receive
2015-09-05 14:53:03.466 xctest[59735:7704704] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 14:53:03.466 xctest[59735:7704704] [TRACE  ] [IN ]: Having current receive buffer: . [0x08] A [0x41] V [0x56] R [0x52] I [0x49] S [0x53] P [0x50] _ [0x5F] 2 [0x32] t [0x74] 
2015-09-05 14:53:03.466 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.466 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.466 xctest[59735:7704704] [TRACE  ] [IN ]: Receive: . [0x08] 
2015-09-05 14:53:03.466 xctest[59735:7704704] [DEBUG  ] [IN ]: Read 1 bytes, actually received 10 bytes
2015-09-05 14:53:03.467 xctest[59735:7704704] [TRACE  ] [IN ]: 9 bytes in incoming buffer remaining for next receive
2015-09-05 14:53:03.467 xctest[59735:7704704] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 14:53:03.467 xctest[59735:7704704] [TRACE  ] [IN ]: Having current receive buffer: A [0x41] V [0x56] R [0x52] I [0x49] S [0x53] P [0x50] _ [0x5F] 2 [0x32] t [0x74] 
2015-09-05 14:53:03.467 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.467 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.468 xctest[59735:7704704] [TRACE  ] [IN ]: Receive: A [0x41] 
2015-09-05 14:53:03.468 xctest[59735:7704704] [DEBUG  ] [IN ]: Read 1 bytes, actually received 9 bytes
2015-09-05 14:53:03.468 xctest[59735:7704704] [TRACE  ] [IN ]: 8 bytes in incoming buffer remaining for next receive
2015-09-05 14:53:03.468 xctest[59735:7704704] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 14:53:03.468 xctest[59735:7704704] [TRACE  ] [IN ]: Having current receive buffer: V [0x56] R [0x52] I [0x49] S [0x53] P [0x50] _ [0x5F] 2 [0x32] t [0x74] 
2015-09-05 14:53:03.469 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.469 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.469 xctest[59735:7704704] [TRACE  ] [IN ]: Receive: V [0x56] 
2015-09-05 14:53:03.469 xctest[59735:7704704] [DEBUG  ] [IN ]: Read 1 bytes, actually received 8 bytes
2015-09-05 14:53:03.469 xctest[59735:7704704] [TRACE  ] [IN ]: 7 bytes in incoming buffer remaining for next receive
2015-09-05 14:53:03.469 xctest[59735:7704704] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 14:53:03.470 xctest[59735:7704704] [TRACE  ] [IN ]: Having current receive buffer: R [0x52] I [0x49] S [0x53] P [0x50] _ [0x5F] 2 [0x32] t [0x74] 
2015-09-05 14:53:03.470 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.470 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.470 xctest[59735:7704704] [TRACE  ] [IN ]: Receive: R [0x52] 
2015-09-05 14:53:03.470 xctest[59735:7704704] [DEBUG  ] [IN ]: Read 1 bytes, actually received 7 bytes
2015-09-05 14:53:03.471 xctest[59735:7704704] [TRACE  ] [IN ]: 6 bytes in incoming buffer remaining for next receive
2015-09-05 14:53:03.471 xctest[59735:7704704] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 14:53:03.471 xctest[59735:7704704] [TRACE  ] [IN ]: Having current receive buffer: I [0x49] S [0x53] P [0x50] _ [0x5F] 2 [0x32] t [0x74] 
2015-09-05 14:53:03.471 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.471 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.472 xctest[59735:7704704] [TRACE  ] [IN ]: Receive: I [0x49] 
2015-09-05 14:53:03.472 xctest[59735:7704704] [DEBUG  ] [IN ]: Read 1 bytes, actually received 6 bytes
2015-09-05 14:53:03.472 xctest[59735:7704704] [TRACE  ] [IN ]: 5 bytes in incoming buffer remaining for next receive
2015-09-05 14:53:03.472 xctest[59735:7704704] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 14:53:03.472 xctest[59735:7704704] [TRACE  ] [IN ]: Having current receive buffer: S [0x53] P [0x50] _ [0x5F] 2 [0x32] t [0x74] 
2015-09-05 14:53:03.472 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.473 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.473 xctest[59735:7704704] [TRACE  ] [IN ]: Receive: S [0x53] 
2015-09-05 14:53:03.473 xctest[59735:7704704] [DEBUG  ] [IN ]: Read 1 bytes, actually received 5 bytes
2015-09-05 14:53:03.473 xctest[59735:7704704] [TRACE  ] [IN ]: 4 bytes in incoming buffer remaining for next receive
2015-09-05 14:53:03.473 xctest[59735:7704704] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 14:53:03.474 xctest[59735:7704704] [TRACE  ] [IN ]: Having current receive buffer: P [0x50] _ [0x5F] 2 [0x32] t [0x74] 
2015-09-05 14:53:03.474 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.474 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.474 xctest[59735:7704704] [TRACE  ] [IN ]: Receive: P [0x50] 
2015-09-05 14:53:03.474 xctest[59735:7704704] [DEBUG  ] [IN ]: Read 1 bytes, actually received 4 bytes
2015-09-05 14:53:03.474 xctest[59735:7704704] [TRACE  ] [IN ]: 3 bytes in incoming buffer remaining for next receive
2015-09-05 14:53:03.475 xctest[59735:7704704] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 14:53:03.475 xctest[59735:7704704] [TRACE  ] [IN ]: Having current receive buffer: _ [0x5F] 2 [0x32] t [0x74] 
2015-09-05 14:53:03.475 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.475 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.475 xctest[59735:7704704] [TRACE  ] [IN ]: Receive: _ [0x5F] 
2015-09-05 14:53:03.476 xctest[59735:7704704] [DEBUG  ] [IN ]: Read 1 bytes, actually received 3 bytes
2015-09-05 14:53:03.476 xctest[59735:7704704] [TRACE  ] [IN ]: 2 bytes in incoming buffer remaining for next receive
2015-09-05 14:53:03.476 xctest[59735:7704704] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 14:53:03.476 xctest[59735:7704704] [TRACE  ] [IN ]: Having current receive buffer: 2 [0x32] t [0x74] 
2015-09-05 14:53:03.476 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.477 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.477 xctest[59735:7704704] [TRACE  ] [IN ]: Receive: 2 [0x32] 
2015-09-05 14:53:03.477 xctest[59735:7704704] [DEBUG  ] [IN ]: Read 1 bytes, actually received 2 bytes
2015-09-05 14:53:03.477 xctest[59735:7704704] [TRACE  ] [IN ]: 1 bytes in incoming buffer remaining for next receive
2015-09-05 14:53:03.477 xctest[59735:7704704] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 14:53:03.477 xctest[59735:7704704] [TRACE  ] [IN ]: Having current receive buffer: t [0x74] 
2015-09-05 14:53:03.478 xctest[59735:7704704] [TRACE  ] [IN ]: Start reading
2015-09-05 14:53:03.478 xctest[59735:7704704] [TRACE  ] [IN ]: Finish reading
2015-09-05 14:53:03.478 xctest[59735:7704704] [TRACE  ] [IN ]: Receive: t [0x74] 
2015-09-05 14:53:03.478 xctest[59735:7704704] [DEBUG  ] [IN ]: Read 1 bytes, actually received 1 bytes
2015-09-05 14:53:03.478 xctest[59735:7704704] [TRACE  ] [IN ]: Ble clear buffer
2015-09-05 14:53:03.479 xctest[59735:7704704] [DEBUG  ] [   ]: Found programmer: 'PGMTYPE_AVRISP'

Here is Uno log file:

2015-09-05 15:51:34.667 xctest[60180:7754033] [DEBUG  ] [   ]: BleSerialDevice: open()
2015-09-05 15:51:34.667 xctest[60180:7754033] [DEBUG  ] [   ]: Connecting to service=0xFFE0, rx=0xFFE1, tx=0xFFE1
2015-09-05 15:51:34.667 xctest[60180:7754033] [INFO   ] [   ]: Start discovering peripherals ...
2015-09-05 15:51:34.668 xctest[60180:7754033] [DEBUG  ] [   ]: Waiting for peripheral to be discovered ...
2015-09-05 15:51:35.411 xctest[60180:7754082] [INFO   ] [   ]: Found peripheral: <CBPeripheral: 0x1003335d0 identifier = D92ECAAB-51A5-44D5-8C6C-536CD797867E, Name = "BleIos", state = disconnected>
2015-09-05 15:51:35.412 xctest[60180:7754082] [DEBUG  ] [   ]: Stop scanning
2015-09-05 15:51:35.412 xctest[60180:7754082] [INFO   ] [   ]: Connecting to <CBPeripheral: 0x1003335d0 identifier = D92ECAAB-51A5-44D5-8C6C-536CD797867E, Name = "BleIos", state = disconnected>
2015-09-05 15:51:35.676 xctest[60180:7754084] [DEBUG  ] [   ]: Connected to peripheral <CBPeripheral: 0x1003335d0 identifier = D92ECAAB-51A5-44D5-8C6C-536CD797867E, Name = "BleIos", state = connected>
2015-09-05 15:51:35.678 xctest[60180:7754084] [TRACE  ] [   ]: Discovered services for peripheral <CBPeripheral: 0x1003335d0 identifier = D92ECAAB-51A5-44D5-8C6C-536CD797867E, Name = "BleIos", state = connected>
2015-09-05 15:51:35.678 xctest[60180:7754084] [DEBUG  ] [   ]: Discovered service <CBService: 0x10011fff0>
2015-09-05 15:51:35.836 xctest[60180:7754084] [TRACE  ] [   ]: Discovered characteristics for service <CBService: 0x10011fff0>
2015-09-05 15:51:35.836 xctest[60180:7754084] [TRACE  ] [   ]: Discovered characteristic <CBCharacteristic: 0x10040b8f0>
2015-09-05 15:51:35.836 xctest[60180:7754084] [DEBUG  ] [   ]: Tx characteristic supports WriteWithResponse: NO
2015-09-05 15:51:35.837 xctest[60180:7754084] [TRACE  ] [   ]: Subscribing to Rx value
2015-09-05 15:51:35.846 xctest[60180:7754033] [INFO   ] [   ]: Connected successfully
2015-09-05 15:51:35.846 xctest[60180:7754033] [TRACE  ] [   ]: DTR/RTS supported by Serial, resetting
2015-09-05 15:51:35.846 xctest[60180:7754033] [TRACE  ] [   ]: Waiting until subscribed to Rx value ...
2015-09-05 15:51:36.655 xctest[60180:7754082] [DEBUG  ] [IN ]: Updated notifications state for RX characteristic: isNotifying=YES
2015-09-05 15:51:36.682 xctest[60180:7754033] [DEBUG  ] [OUT]: Sending 8 bytes
2015-09-05 15:51:36.682 xctest[60180:7754033] [TRACE  ] [OUT]: Send: A [0x41] T [0x54] + [0x2B] P [0x50] I [0x49] O [0x4F] 2 [0x32] 1 [0x31] 
2015-09-05 15:51:36.682 xctest[60180:7754033] [TRACE  ] [OUT]: BLE sending bytes range from 0 length 8
2015-09-05 15:51:36.735 xctest[60180:7754033] [DEBUG  ] [OUT]: Sending 8 bytes
2015-09-05 15:51:36.736 xctest[60180:7754033] [TRACE  ] [OUT]: Send: A [0x41] T [0x54] + [0x2B] P [0x50] I [0x49] O [0x4F] 2 [0x32] 0 [0x30] 
2015-09-05 15:51:36.736 xctest[60180:7754033] [TRACE  ] [OUT]: BLE sending bytes range from 0 length 8
2015-09-05 15:51:36.788 xctest[60180:7754033] [DEBUG  ] [   ]: Draining for 300 ms ...
2015-09-05 15:51:36.788 xctest[60180:7754033] [TRACE  ] [IN ]: Start reading
2015-09-05 15:51:37.053 xctest[60180:7754082] [TRACE  ] [IN ]: Rx value received 9 bytes: O [0x4F] K [0x4B] + [0x2B] P [0x50] I [0x49] O [0x4F] 2 [0x32] : [0x3A] 1 [0x31] 
2015-09-05 15:51:37.053 xctest[60180:7754082] [TRACE  ] [IN ]: Rx value received 9 bytes: O [0x4F] K [0x4B] + [0x2B] P [0x50] I [0x49] O [0x4F] 2 [0x32] : [0x3A] 0 [0x30] 
2015-09-05 15:51:37.093 xctest[60180:7754033] [TRACE  ] [IN ]: Finish reading
2015-09-05 15:51:37.093 xctest[60180:7754033] [TRACE  ] [IN ]: Ble clear buffer
2015-09-05 15:51:37.093 xctest[60180:7754033] [DEBUG  ] [IN ]: Drained 18 bytes
2015-09-05 15:51:37.094 xctest[60180:7754033] [DEBUG  ] [OUT]: Sending 2 bytes
2015-09-05 15:51:37.094 xctest[60180:7754033] [TRACE  ] [OUT]: Send: 0 [0x30]   [0x20] 
2015-09-05 15:51:37.094 xctest[60180:7754033] [TRACE  ] [OUT]: BLE sending bytes range from 0 length 2
2015-09-05 15:51:37.095 xctest[60180:7754033] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 15:51:37.096 xctest[60180:7754033] [TRACE  ] [IN ]: Start reading
2015-09-05 15:51:37.450 xctest[60180:7754084] [TRACE  ] [IN ]: Rx value received 1 bytes: . [0x00] 
2015-09-05 15:51:37.450 xctest[60180:7754084] [TRACE  ] [IN ]: Ignoring single 0x00 char 
2015-09-05 15:51:37.450 xctest[60180:7754084] [TRACE  ] [IN ]: Rx value received 2 bytes: . [0x14] . [0x10] 
2015-09-05 15:51:37.452 xctest[60180:7754033] [TRACE  ] [IN ]: Finish reading
2015-09-05 15:51:37.452 xctest[60180:7754033] [TRACE  ] [IN ]: Receive: . [0x14] 
2015-09-05 15:51:37.452 xctest[60180:7754033] [DEBUG  ] [IN ]: Read 1 bytes, actually received 2 bytes
2015-09-05 15:51:37.453 xctest[60180:7754033] [TRACE  ] [IN ]: 1 bytes in incoming buffer remaining for next receive
2015-09-05 15:51:37.453 xctest[60180:7754033] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 15:51:37.454 xctest[60180:7754033] [TRACE  ] [IN ]: Having current receive buffer: . [0x10] 
2015-09-05 15:51:37.454 xctest[60180:7754033] [TRACE  ] [IN ]: Start reading
2015-09-05 15:51:37.454 xctest[60180:7754033] [TRACE  ] [IN ]: Finish reading
2015-09-05 15:51:37.455 xctest[60180:7754033] [TRACE  ] [IN ]: Receive: . [0x10] 
2015-09-05 15:51:37.455 xctest[60180:7754033] [DEBUG  ] [IN ]: Read 1 bytes, actually received 1 bytes
2015-09-05 15:51:37.455 xctest[60180:7754033] [TRACE  ] [IN ]: Ble clear buffer
2015-09-05 15:51:37.455 xctest[60180:7754033] [DEBUG  ] [OUT]: Sending 3 bytes
2015-09-05 15:51:37.456 xctest[60180:7754033] [TRACE  ] [OUT]: Send: A [0x41] . [0x81]   [0x20] 
2015-09-05 15:51:37.456 xctest[60180:7754033] [TRACE  ] [OUT]: BLE sending bytes range from 0 length 3
2015-09-05 15:51:37.457 xctest[60180:7754033] [DEBUG  ] [IN ]: Reading 1 bytes ...
2015-09-05 15:51:37.457 xctest[60180:7754033] [TRACE  ] [IN ]: Start reading
2015-09-05 15:51:37.701 xctest[60180:7754084] [TRACE  ] [IN ]: Rx value received 1 bytes: . [0x00] 
2015-09-05 15:51:37.701 xctest[60180:7754084] [TRACE  ] [IN ]: Ignoring single 0x00 char 
2015-09-05 15:51:38.451 xctest[60180:7754082] [TRACE  ] [IN ]: Rx value received 5 bytes: h [0x68] e [0x65] l [0x6C] l [0x6C] o [0x6F]

Here is arduino sketch used for Uno:

void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
  Serial.print("hello");

  pinMode(13, OUTPUT);
  digitalWrite(13, LOW);
}

void loop() {
  // put your main code here, to run repeatedly:

}

You can see Uno's bootloader skips waiting for upload commands and goes right to sketch (see 'hello' in incoming buffer).

Is it Uno's bootloader feature? Can i walkaround it by wiring GPIO directly to USB's DTR?

Update: can i wire HM-10 GPIO directly to pin 13 of USB's ATmega's (see schematics) to make HM's GPIO act exactly like USB's DTR?

Update2:

if uploading to Uno over USB if goes further after Send: A [0x41] . [0x81] [0x20]:

2015-09-06 15:47:10.452 xctest[1042:33659] [TRACE  ] [OUT]: Send: 0 [0x30]   [0x20] 
2015-09-06 15:47:10.453 xctest[1042:33659] [DEBUG  ] [IN ]: Receiving 1 bytes
2015-09-06 15:47:10.592 xctest[1042:33659] [TRACE  ] [IN ]: Received: . [0x14] 
2015-09-06 15:47:10.592 xctest[1042:33659] [DEBUG  ] [IN ]: Receiving 1 bytes
2015-09-06 15:47:10.592 xctest[1042:33659] [TRACE  ] [IN ]: Received: . [0x10] 
2015-09-06 15:47:10.592 xctest[1042:33659] [DEBUG  ] [OUT]: Sending 3 bytes
2015-09-06 15:47:10.592 xctest[1042:33659] [TRACE  ] [OUT]: Send: A [0x41] . [0x81]   [0x20] 
2015-09-06 15:47:10.592 xctest[1042:33659] [DEBUG  ] [IN ]: Receiving 1 bytes
2015-09-06 15:47:10.596 xctest[1042:33659] [TRACE  ] [IN ]: Received: . [0x14] 
2015-09-06 15:47:10.596 xctest[1042:33659] [DEBUG  ] [IN ]: Receiving 1 bytes
2015-09-06 15:47:10.596 xctest[1042:33659] [TRACE  ] [IN ]: Received: . [0x04] 
2015-09-06 15:47:10.596 xctest[1042:33659] [DEBUG  ] [IN ]: Receiving 1 bytes
2015-09-06 15:47:10.596 xctest[1042:33659] [TRACE  ] [IN ]: Received: . [0x10] 
2015-09-06 15:47:10.597 xctest[1042:33659] [DEBUG  ] [OUT]: Sending 3 bytes
2015-09-06 15:47:10.597 xctest[1042:33659] [TRACE  ] [OUT]: Send: A [0x41] . [0x82]   [0x20] 
2015-09-06 15:47:10.597 xctest[1042:33659] [DEBUG  ] [IN ]: Receiving 1 bytes
2015-09-06 15:47:10.600 xctest[1042:33659] [TRACE  ] [IN ]: Received: . [0x14] 
2015-09-06 15:47:10.600 xctest[1042:33659] [DEBUG  ] [IN ]: Receiving 1 bytes
2015-09-06 15:47:10.601 xctest[1042:33659] [TRACE  ] [IN ]: Received: . [0x04] 
2015-09-06 15:47:10.601 xctest[1042:33659] [DEBUG  ] [IN ]: Receiving 1 bytes
2015-09-06 15:47:10.601 xctest[1042:33659] [TRACE  ] [IN ]: Received: . [0x10] 
2015-09-06 15:47:10.601 xctest[1042:33659] [DEBUG  ] [   ]: STK500:initialize: n_extparms = 4
2015-09-06 15:47:10.601 xctest[1042:33659] [DEBUG  ] [OUT]: Sending 22 bytes
2015-09-06 15:47:10.601 xctest[1042:33659] [TRACE  ] [OUT]: Send: B [0x42] . [0x86] . [0x00] . [0x01] . [0x00] . [0x01] . [0x01] . [0x01] . [0x03] . [0xFF] . [0xFF] . [0xFF] . [0xFF] . [0x00] . [0x80] . [0x04] . [0x00] . [0x00] . [0x00] . [0x80] . [0x00]   [0x20] 
2015-09-06 15:47:10.602 xctest[1042:33659] [DEBUG  ] [IN ]: Receiving 1 bytes
2015-09-06 15:47:10.604 xctest[1042:33659] [TRACE  ] [IN ]: Received: . [0x14] 
2015-09-06 15:47:10.604 xctest[1042:33659] [DEBUG  ] [IN ]: Receiving 1 bytes
2015-09-06 15:47:10.605 xctest[1042:33659] [TRACE  ] [IN ]: Received: . [0x10] 
2015-09-06 15:47:10.616 xctest[1042:33659] [DEBUG  ] [OUT]: Sending 7 bytes
2015-09-06 15:47:10.617 xctest[1042:33659] [TRACE  ] [OUT]: Send: E [0x45] . [0x05] . [0x04] . [0xD7] . [0xC2] . [0x00]   [0x20] 
2015-09-06 15:47:10.617 xctest[1042:33659] [DEBUG  ] [IN ]: Receiving 1 bytes
2015-09-06 15:47:10.621 xctest[1042:33659] [TRACE  ] [IN ]: Received: . [0x14] 
2015-09-06 15:47:10.621 xctest[1042:33659] [DEBUG  ] [IN ]: Receiving 1 bytes
2015-09-06 15:47:10.621 xctest[1042:33659] [TRACE  ] [IN ]: Received: . [0x10] 
2015-09-06 15:47:10.621 xctest[1042:33659] [DEBUG  ] [OUT]: Sending 2 bytes
2015-09-06 15:47:10.622 xctest[1042:33659] [TRACE  ] [OUT]: Send: P [0x50]   [0x20] 

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.