Adaptive channel blacklisting. We ran extensive tests in a scenario where the 802.15.4 device hops over channels 11- 25 and three Wi-Fi routers accomodate 802.11g traffic on the three 802.11g non-overlapping channels (1,6 and 11). This is really your worse case scenario.
Significant degradation of the PER was only observed when the routers where in the direct vicinity (within 1-2 meters) of the 802.15.4 nodes.
If the router(s) were further than 2 meters away channel blacklisting does an excellent job in ensuring that your packets will still get through, mostly on .15.4 channels 15, 20 and 25.
First channel in 2.4 GHz is the best (channel 11). It is in limit of the first WiFi channel. But if the Wifi is enough near to the 802.15.4 device, it will be disturbed anyway. Only frequency hopping (adaptive or not) in addition to listen before talk (CSMA/CA) can improve really the wireless communication ....
To minimize implementation work : select the channel of communication after a consequent listening time to determine the best..
We did extensive testing with BT (1.0, 2.0, prior to adaptive frequency hopping) and followed a lot of the guidance from Matthew Shoemake's paper (link should be attached). High-level: Keep transceivers of the same frequency band at least 2-m apart. Even if the 15.4 equipment is on a different channel than WiFi, there can be substantial interference and increase in the Packet Error Rate (PER) because the antenna bandwidth allows the entire band from 2.402 to 2.4835. If one device is transmitting and very near the second that is trying to receive, the RF front end of the second may be saturated.
As Mohammad pointed out, frequency hopping is a great solution to avoiding broad-band interference (that is what WiFi is from the .15.4 perspective). I'll add "particularly if you have low data rates and can tolerate some latency waiting for a clear channel." Ensure the middleware/driver can buffer data until a clear channel is found.
While the .15.4 system does not have data to transmit, occasionally listen on all the channels and keep track of where the least noise is an preferentially use those channels for transmission. Before transmitting, listen to detect the noise level (you may not be able to decode the OFDM data from 802.11 for true CSMA/CA, but you can detect the noise). If you search for 802.15.4 images, you should see some channel charts that show .15.4 channels (see link) and notice that for typical 802.11 configuration (using WiFi channels 1, 6, and 11) there is a gap between 802.11 channels 1 and 6, 6 and 11, and above 11 for .15.4 channels 15, 20, and 25, respectively. One can't guarantee these will be open, but they are more likely than others.