This PDF talks about blue and infrared LEDs + photodiode and how to create a smoke detector out of them.

The gist is to send a signal over blue LED + infrared LED, and then measure from the photodiode to see how much the light reflects back (which will only reflect back in the presence of smoke).

This design uses the 2x free OpAmps on the MSPM0L (Cortex M0+) microcontroller, showing a mixed-signal design where one mixed-signal microcontroller can reduce the number of parts.