Yes. You need to route the signals out through the GPIO matrix. Here's some code (note: it's a modified example of test code for another chip; I haven't tested it on an actual C3, but it should get you on the way)
Code: Select all
WRITE_PERI_REG(USB_SERIAL_JTAG_CONF0_REG, READ_PERI_REG(USB_SERIAL_JTAG_CONF0_REG)|USB_SERIAL_JTAG_USB_JTAG_BRIDGE_EN);
esp_rom_gpio_connect_out_signal(3, 36, false, false); //tck
esp_rom_gpio_connect_out_signal(4, 37, false, false); //tms
esp_rom_gpio_connect_out_signal(5, 38, false, false); //tdi
esp_rom_gpio_connect_out_signal(8, 127, false, false); //srst, wire to reset or EN of target
esp_rom_gpio_connect_in_signal(9, 39, false); //tdo
(Note that this uses GPIO 3,4,5,8,9, but you can pick any GPIO for any signal.)
I'd be interested to hear if you get this to work, I can't remember if we tested this functionality after tapeout.