You are reading a single comment by @Gordon and its replies. Click here to read the full conversation.
  • About NRF24 - did you see that post (I forget who it was from now) about just adding a decoupling capacitor? Apparently it solves the stability issue...

    About the signal being high - I doubt it's the case - you'd have to look with an oscilloscope I'm afraid (or you could record just a short section of the data into memory and then print that). My guess is:

    • Espruino can't print that much data out fast enough
    • It has to block waiting for the print to finish
    • The input buffer gets full and events get missed - in this case it just happens that they're the events where the signal is lowered

    ATTinys should be fine to decode the signal though - you just need to make sure it's complex enough (CRC?) that you don't get invalid data.

    Even if the signal is high most of the time, when you transmit it should be fine. The automatic gain will cause the sensitivity of the receiver to lower, so that when your signal stops you get a '0' received (until the sensitivity recovers).

    If you're making your own signal format, it seems a good form is:

    • A ~4ms '1' signal - which is easy to detect and which gives the receiver time to adjust
    • A series of pulses - PWM is easiest, maybe 0.7ms for a 0, and 1.3ms for a 1, with a gap of ~0.5ms
    • You could end with a big pulse as well so you know that the transmission has ended, but just making sure you have maybe 20 pulses after the long one is probably good enough.
About

Avatar for Gordon @Gordon started