IR Transmitter library for Argon/Xenon

Is there an IR library that supports the Argon/Xenon boards? I tried using the IRremote library (found using the “particle library list” command) but it looks like it only works with Photon/Core platforms.

Is there perhaps another library where I can transmit IR signals with the Argon/Xenon boards?

1 Like

It may be possible but currently there is no library that does that.
The controller used on the Mesh devices is rather short on hardware timers and almost all of them are currently used by the device OS.
While you can require access to some timers you’d have to sacrifice some features in exchange.
e.g. NFC uses a timer which could be obtained when not needed, but as it stands there is no high level API for that and you’d do that the bare metal way - that’s probably the reason why there hasn’t been a library contributed that would rely on exact hardware timing for these devices.

hey, out of curiosity, what is the issue you faced with that library? it does not even compile for mesh devices?

@gusgonnet, as @ScruffR pointed out:

The IRremote library uses SparkIntervalTimer which exposes STM32 hardware timers to the user. Unfortunately, the nRF52840 used in Gen3 devices doesn't have a lot of timers available and currently, ALL are used (refer to @ScruffR's comments). Hardware timers are necessary to generate fixed and deterministic interrupts from which to generate the correct IR pulses.


I’m also interested in this, if a solution is found :slight_smile:

Hi all,

Does anyone have any recommendations about modifying the IRremote for Argon? I saw @ScruffR and @peekay123 comments about the hardware timers issue? I would like to use the remote for a class project with Argons.


Hi Rob, I think today you can only use a Photon for this.

Thanks for that. I wondered if a workaround existed so I appreciate the response.

believe me, I would LOVE to use a Xenon for this. I have places where power does not have easy access.