💬 MySWeMosIRShield - IR blaster shield for WeMos D1
Arduino sketch is really basic and even if it works perfectly for me, there is probably a way to improve it greatly.
On top of my head it would be good to
- be able to record, save and reuse an IR code without editing the code. Plenty of EEPROM space to store data.
- have a webpage showing the serial console to see received IR codes, or other info.
- have a dynamic webpage automatically displaying all codes stored in such EEPROM.
- have more than 10 codes that can be used with domoticz.
But I do not know how to do this (even if it's possible).
If you are interested in improving this code shoot me a private message, or answer here. I have a few extra PCBs from a previous version that I will gladly send for free to anyone willing to improve this device software.
I guess you already found @BartE sketch as a starting point?
That's totally why my first point is "be able to record, save and reuse an IR code without editing the code. Plenty of EEPROM space to store data", which is what this sketch was able to do. I have the feeling that someone that know what he is doing can probably do it easily, but for me it's a nightmare.
I like the board and did already order some pcbs for testing.
I'm right that there is no resistor between the LEDs and 5V or GND?
Is it not required?
I hope you will like this board when you receive it!
True, no current limiting resistor in that configuration for IR LEDs. One of my previous version had one and IR signal was quite dim. By having 7 LEDs the current in each one is actually quite low, and they are only ON for a few micro seconds. I have been using this specific configuration for 3 months now (breadboard to various prototypes) and no burned LEDs so far.
It may differ for other IR LEDs, but TSAL series is pretty resilient and by using 7 LEDs it can take up a few amps without any problem. (If you do the calculations you will find that you could add a 5ohm resistor to limit to 100mA, or 2.5ohm for 200mA, so as you can see it's safe to skip)
Even using ONE regular (visible light) LED for a quick test to send a signal is actually ok, but leaving it on for more than 5s is sufficient to burn it. Having all seven LEDs, they were still working after 1 minute being ON, which is already far from any real case use.
@emc2 I'm not sure you can calculate like that as all LEDs are different. The LED manufactured with the lowest forward voltage can take way more current than the others and die prematurely. Then the next one, and so on.
@Nca78 Not sure either to be honest, but technically I only did the calculation for a specific type of LED, the ones in the BOM.
I do use TSAL LEDs, and used http://ledcalc.com/#calc to do the resistor calculation for 7 LEDs with numbers extracted from the datasheet, leading to the ~5ohm resistor calculation.
I tried without any, or with a 4.7ohm resistor and I had significant better range results without resistor. Not a surprise, looking at the IR signal with a smartphone camera you can definitively see a brightness difference too, that's really a blaster
No burned LED after 48h of testing (sending one of my IR code every 5s). I also tried, for 10min, with regular red LED (http://www.nteinc.com/specs/3000to3099/pdf/nte3019.pdf) which have lower Vf and If requirements, no problems either.
I don't say that this is right, I truly don't have the background to do more than empirical experimentations, but it seemed good enough for me at the time. I did not had any problems since then, both with real TSAL from mouser and probably fake ones from aliexpress.
@emc2 Ok thank you for your feedback ! I'm doing an IR blaster also, and as it seems to work reliably for you even with the aliexpress versions, I'll include a bypass for the resistors to have the option.