Played with a same devboard, got an infinite loop in the same way. But.. How I can reflash it to a normal stage? Did reflash with
esptool.py --chip esp32 --port COM7 --baud 921600 --after hard_reset write_flash -z --flash_mode dio --flash_freq 40m --flash_size=detect 0x1000 bootloader.bin 0x8000 partitions_espruino.bin 0x10000 espruino_esp32.bin
and got the same loop after reflash.
esptool.py --chip esp32 --port COM7 --baud 921600 --after hard_reset write_flash -z --flash_mode dio --flash_freq 40m --flash_size=detect 0x100000 blank64KB.bin
and got another halt about no booting partition
ets Jun 8 2016 00:22:57
rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
mode:DIO, clock div:2
E (29) boot: ota data partition invalid, falling back to factory
E (520) esp_image: Checksum failed. Calculated 0x4 read 0xb5
E (520) boot: Factory app partition is not bootable
E (520) esp_image: image at 0x160000 has invalid magic byte
E (524) boot: OTA app partition slot 0 is not bootable
E (529) boot: No bootable app partitions in the partition table
Fatal exception (0): IllegalInstruction
epc1=0x400802bc, epc2=0x00000000, epc3=0x00000000, excvaddr=0x00000000, depc=0x00000000
with "Unable to retrieve board information. Connection Error?" IDE message, that thing went into the same loop after reflashing with the first full flash command again.
I got this form ESP32 page.
If the save() area contains something that crashes Espruino or otherwise doesn't let you reset the system you can disable whatever is saved by flashing blank.bin to 0x100000.
I hope there can be a way to erase bt off command from the board.
UPD: Googled and looks like it's ok to erase_flash and reflash. Did so and everything works ok. Did a read_flash into file, took 16777216 bytes. So, looks like BT is in can't use and can't disable situation.