You are reading a single comment by @Gordon and its replies. Click here to read the full conversation.
  • That's very odd - 0x3004 is BLE_ERROR_NO_TX_PACKETS.

    Are you using 1v99, or a cutting edge firmware? The newer firmwares take advantage of the fact that they can send more than one TX packet per interval and actually expect that they might hit this error.

    Could you try removing the print/console.log statements from your code? What I think is happening is:

    • Something happens that prints a bunch of data to the console - this uses up the available TX slots in that connection (it's not supposed to, but hey)
    • Then we try and send the HID report - it fails
    • The error is caught and printed to the console, compounding the problem.

    Even so, FIFO_FULL is a very strange error as it implies that a lot of data was coming into Espruino. What were you doing when it happened? To get that purely from pressing the button you'd have to have pressed it 64 times while Espruino was busy executing a function.

  • Firmware is cutting edge from Sept 13 2018.

    Basically, I am actually pressing the button a lot as an intensive test. So every press causes an output. I'll remove the console.logs to see if we get the same behavior.

    We've had cases of spontaneous button bricking. Need to reset and re-upload code. Sometimes, after a period of inactivity the button stops responding to clicks despite being shown as connected as a keyboard.

    In the cases where I've been able to get a log of what happens, it's the same set of errors as I've been getting here. This is what lead me to adding the delay between allowed clicks, make sure it's not sending multiple HID reports at once.


Avatar for Gordon @Gordon started