The “secret sauce” is figuring out how to bit-bang the remote control codes; squirrel can be very timing-inconsistent, so you need to use the SPI interface to bang out the codes in a timing-consistent manner.
The other important piece is that the remote control code needs to be used to modulate a carrier frequency (usually 38 kHz here in the US, sometimes 56 kHz, especially in Europe). If you have a look at the schematic, you can see that the Sana design does this by producing the carrier wave with a PWM_OUT, then ANDing the carrier and the code signals together.
There are links in the project page that take you to squirrel classes for both IR learning and IR code transmission. The IR learn class outputs the raw code as a string, and the IR TX class takes in a code as a string - simple.
Please give a loud shout if you need a hand understanding the hardware!
I have a question for @tom - First off, great job on the Sana! Everything seems very clearly laid out and explained for such a complicated project!
I’ll be looking to breadboard only the IR Receive / Transmit parts of the project and I’m having some difficulties deciphering which components I’ll need to get for this as well as their their non-SMD counterparts…
@tom - Do you have a BOM with the non-SDM counterparts for the Sana since I’ll be trying to breadboard it? Sorry for asking again, but it would really help me out to breadboard it.