Yo - Hola Timmy ¿Por qué estás en este puente con esa piedra atada a los pies?
Timmy - Hola señor. Es que mi vida no tiene sentido y a mis 6 años he decidido que he vivido suficiente. Y es que mis amigos que tienen la 3DS están haciendo streetpass desde su casa con todo el mundo, y yo no puedo ¡ADIOS MUNDO CRUEL!
Y - No, Timmy. Aún tienes una posibilidad para hacer eso. Desátate la piedra y pon atención.
¿Has intentado hacer el homepass con un router con openwrt? 
T - ¿Y eso que es lo que es, señor?
Y- El Openwrt es un firmware libre basado en linux que se puede instalar en gritoncientosmil routers distintos. Yo, por ejemplo lo he usado en routers de Vodafone que tenía por casa hg553 y hg556a, de esos blancos. Pero también sirven baratos como el tp-link wr740 o el wr841nd que se encuentras fácil en tiendas como Amazon por 15/20 €.
T - ¡Qué suerte señor! Yo tengo uno de esos. 
Y - Pues partamos desde el principio de que ya tienes un router de estos con el firmware Openwrt y funcionando como punto de acceso con conexión a internet. Aunque no es el objetivo del hilo, si tienes, tú o algunos de tus amiguitos, alguna duda sobre openwrt en general intentaré ayudarte. Auque os recomiendo el foro.
http://foro.seguridadwireless.net/openwrt/Que son unos máquinas y me han enseñado todo lo que sé del tema.
T - OK, pues casualmente aquí me traje un router al puente ya configurado.
Y - Muy previsor Timmy. El objetivo de esta primera parte del tutorial es crear el punto de acceso para que la 3DS lo detecte como un hotspot. Todos los cambios podemos hacerlo por línea de comandos mediante una conexión SSH con el router o por su interfaz web LuCI. Para ello nos vamos a la configuración del wifi y ponemos el ssid como attwifi, y desactivamos la seguridad.
Ahora desde la sesión de SSH ejecutaremos los siguientes comandos:
uci set wireless.@wifi-iface[0].macaddr='40:53:50:4f:4f:46'
Este comando cambia la mac del wifi a la que queramos. Recuerda Timmy que la gente está usando las mac 40:53:50:4f:4f:XX, 42:53:50:4f:4f:XX y 4e:53:50:4f:4f:XX cambiando las XX por un número de dos dígitos en hexadecimal que vaya desde 00 a FF. 
Después aplicaremos este comando para a segurarnos que se aplica el cambio. 
uci commit
Y finalmente usaremos este comando para reiniciar el wifi y que tome el nuevo valor de mac.
wifi
  Listo Timmy ya puedes cambiar la mac todas las veces que quieras para tener encuentros desde tu casa. 
T - Gracias señor. Ahora mi vida vuelve a tener sentido pero...... Con lo que usted me ha dicho tendría que dejar una conexión a internet libre en mi casa y los gorrones de mis vecinos se aprovecharían de mí conduciéndome a las drogas y eso a la delincuencia.
Y - No te preocupes Timmy porque podemos hacer un truquito. En la configuración del wifi del router podemos activar un filtrado mac que sólo permita la mac de la 3DS, o también podemos ponerle protección a la red attwifi. Yo uso WPA2-AES. Sólo que ahora para tener streetpass deberás configurar esa red en las opciones de la 3DS para que se conecte a ella. Y nada más, ya tienes tu red protegida fuera del alcance de malechores y esquimales.
T - ¡¡¡¡GENIAL SEÑOR!!!! Peroooo......... Si tengo que estar todo el día cambiando la mac manuamente me volveré un psicopata, y eso me llevará a la delincuencia, y de ahí a las drogas y de ahí a político.
Y - Jo, Timmy. A tus 6 años te veo un negro porvenir. Pero no caigas en la desesperación porque todo este proceso se puede automatizar. 
En Openwrt, en la interfaz web en System -> Scheduled Tasks (Sistemas -> Tareas programadas) podemos introducir la línea:
*/5 * * * * uci set wireless.@wifi-iface[0].macaddr='40:53:50:4f:4f:'`/bin/cat /proc/interrupts | /usr/bin/md5sum | /usr/bin/cut -b 1``/bin/cat /proc/interrupts | /usr/bin/md5sum | /usr/bin/cut -b 1` && uci commit && wifi
Pulsamos el botón Submit y reiniciamos el Cron desde Luci en la pestaña Startup que está al lado de la de Scheduled Tasks.
Te explico que hace ese trozo de código por si quieres ponerlo a :
*/5 * * * * :   Esto ejecuta el comando cada 5 minutos. Si quisieramos hacerlo cada 3 pondríamos */3 * * * * y si quisieramos ejecutarlo sólo en el minuto 8 entoces, 8 * * * *.
La parte:
`/bin/cat /proc/interrupts | /usr/bin/md5sum | /usr/bin/cut -b 1`
Genera un número cuasialeatorio hexadecimal entre 0 y F. Así que al poner el comando:  
uci set wireless.@wifi-iface[0].macaddr='40:53:50:4f:4f:'`/bin/cat /proc/interrupts | /usr/bin/md5sum | /usr/bin/cut -b 1``/bin/cat /proc/interrupts | /usr/bin/md5sum | /usr/bin/cut -b 1`
Estamos cambiando la mac a la 40:53:50:4f:4f:XX donde XX serán números aleatorios entre 00 y FF. Obviamente un simple cambio hace que esto funcione con las macs 42 y 4e.
Y luego la parte:
&& uci commit && wifi
 aplican el comando uci y renicician el wifi con la nueva mac. 
En la parte del Cron task podemos hacer varias tareas y jugar con ellas. Por ejemplo:
10 * * * * uci set wireless.@wifi-iface[0].macaddr='40:53:50:4f:4f:'`/bin/cat /proc/interrupts | /usr/bin/md5sum | /usr/bin/cut -b 1``/bin/cat /proc/interrupts | /usr/bin/md5sum | /usr/bin/cut -b 1` && uci commit && wifi
20 * * * * uci set wireless.@wifi-iface[0].macaddr='42:53:50:4f:4f:'`/bin/cat /proc/interrupts | /usr/bin/md5sum | /usr/bin/cut -b 1``/bin/cat /proc/interrupts | /usr/bin/md5sum | /usr/bin/cut -b 1` && uci commit && wifi
30 * * * * uci set wireless.@wifi-iface[0].macaddr='4e:53:50:4f:4f:'`/bin/cat /proc/interrupts | /usr/bin/md5sum | /usr/bin/cut -b 1``/bin/cat /proc/interrupts | /usr/bin/md5sum | /usr/bin/cut -b 1` && uci commit && wifi
Esto haría que en el minuto 10 de cada hora pusiera una mac del tipo 40, en el 20 del tipo 42 y en el 30 del tipo 4e.
O este:
0-29/3 * * * * uci set wireless.@wifi-iface[0].macaddr='40:53:50:4f:4f:'`/bin/cat /proc/interrupts | /usr/bin/md5sum | /usr/bin/cut -b 1``/bin/cat /proc/interrupts | /usr/bin/md5sum | /usr/bin/cut -b 1` && uci commit && wifi
30-59/3 * * * * uci set wireless.@wifi-iface[0].macaddr='4e:53:50:4f:4f:'`/bin/cat /proc/interrupts | /usr/bin/md5sum | /usr/bin/cut -b 1``/bin/cat /proc/interrupts | /usr/bin/md5sum | /usr/bin/cut -b 1` && uci commit && wifi
Que haría que durante la primera media hora de cada hora cambiara la mac cada 3 minutos a la 40 y el resto de la hora en la 4e.
Lo ves Timmy, no era tan complicado. Y recuerda que aquí estoy para echarte una mano con las dudas que te pudieran surgir. 
T - Gracias Señor, voy corriendo a casa a probarlo y a reime de mis amiguitos que sólo tienen 300 soldados en la Conquista Mii. 
NOTA del Autor: Este tuto está orientado a alguien que ya haya hecho sus pinitos en openwrt. Pero si tú, amiguito de Timmy, no tienes ni idea estoy abierto a daros consejos y guiaros.
Además si os metéis en el mundo del openwrt obtendréis muchas posibilidades como por ejemplo. Usar el router como punto de acceso como receptor wifi o como repetidor para ampliar la señal del wifi de vuestra casa. Sin tenéis un pincho 3G conectarlo al router y generar un wifi con esa conexión de datos. Conectarle un disco duro al router y compartir sus carpetas en red con samba. Instalar un cliente de torrents al router para que descargues cosas a un disco duro sin tener un Pc encendido. O compartir el contenido multimedia que tengáis en un disco duro por DLNA a TV, tablets, smartphones, etc.