IR Transmitter library for Argon/Xenon

argon
Tags: #<Tag:0x00007fe2289b6a88>

#1

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?


#2

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.


#3

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


#4

@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.


#5

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