I have been aware of machine learning projects that use RSSI (signal strength) (for example, try typing iwconfig in a linux terminal. You can grep that for signal strength.)
CSI (channel state information) is more though. Uses alternative firmware. Gets you phase sensitivity.
mini PCIe is a pain. Many laptops support it and mini pcs. But still, that is a ~100$ investment or so.
plausible but unconfirmed alternative for atheros cards
Another paper describing localization