The micro controller does not start correctly if wired to the handset
Viroide opened this issue · comments
Hello,
Probably this is not an issue of the software in this repo, I just need help with this. Move to discussions if you think that suits more.
HandSet: JCHT35M
Controller: JCB36N2CA
Microcontroller: ESP8266 mod 12F
When I have all set up everything works correctly, but if I shut down the table, when I turn it on the micro-controller does not boot correctly. The led does not blink at all and the throws an exception throw the serial port. In order to work again I need to unplug both RJ45 wire and plug first the one from the controller, once the board is booted I can plug the handset RJ45.
Any idea why this happens?
Sounds like something on the handset connection is interfering with the boot sequence. Or it could be that some bug in my code is reacting badly to the handset's presence on startup. I don't see the same trouble here on my device, though.
The exception sounds troubling. Can you copy-paste it here?
If you hooked anything up to GPIO0 or GPIO2 you might be waking up the bootloader. I don't know why it would raise an exception, but I haven't explored the bootloader protocol at all.
My pin config:
name | RJ45 pin | micro pin | GPIO | Arduino number |
---|---|---|---|---|
HS3 | 1 | D1 | GPIO5 | 5 |
TX | 2 | D5 | GPIO14 | 14 |
GND | 3 | GND | ||
RX | 4 | D8 | GPIO15 | 15 |
VCC | 5 | VCC | ||
HS2 | 6 | D6 | GPIO12 | 12 |
HS1 | 7 | D7 | GPIO13 | 13 |
HS0 | 8 | D2 | GPIO4 | 4 |
And I was wrong no exception is thrown, just it does not load.
Thanks for anwering
I suspect it's gpio15. This point needs to be pulled low during boot. You might be able to use it still if you put a capacitor to ground there, but that may also prevent you from using it for serial comms.
Try moving RX to a different gpio.
Thanks that worked perefctly!