Homebrew Tomato + HomePass Setup

Xeology

Well-Known Member
OP
Member
Joined
Jul 24, 2010
Messages
129
Trophies
0
Age
35
Location
Keansburg, NJ
Website
tempestdev.com
XP
283
Country
United States
HPass - Non-ND Tomato HomePass Setup
Current Version:
1.1

So I was setting up a HomePass system and the only router I had was a WRN3500Lv2. The problem with this particular router is that it could only use either Tomato or DD-WRT / HONG. The terrible DD-WRT port of course doesn't work at all for what I needed and the Tomato port didn't have ND support. Long story short, I modified a few scripts to make this work anyway. With this setup I can produce up to 1440 StreetPass hits a day.

This is covers cycling and setup. This may work on other router firmware but it is currently only confirmed on non ND versions of Tomato. Feel free to confirm whether it works for you. It wont do any harm to try, just SSH/Telnet in and run both of the commands bellow, then confirm that the BSSID changed with an Android device or something that will tell you that information.

This is primarily geared towards those who can use Tomato but NOT Tomato ND. If you can use ND then follow this instead,

https://gbatemp.net/threads/how-to-have-a-homemade-streetpass-relay.352645/page-141#post-5024036

NOTES:

  • 3DS firmware version 9.0.0-9.2.0: Only the BASE1, BASE16, BASE256, GBA lists can be used if wireless security is enabled.
  • 3DS firmware version 9.3.0+: Wireless security must be disabled.

Steps:
  1. Got to Basic > Network
  2. Wireless SSID should be either attwifi or NZ@McD1
  3. No security
  4. Go to Basic > Wireless Filter
  5. Add your 3DS Macs
  6. Go to Administration > Scripts
  7. Under Init put this in,
    Code:
    wget http://asset.tempestdev.com/hpass/hpass; chmod +x /tmp/hpass
  8. Save
  9. Go to Administration > Scheduler
  10. Check Enabled under Custom 1
  11. Set time to every 1 minute if you use my MAC list (or 30 minutes for anything else)
  12. Enter this into command (Second group if you only want the macs from GBA-Temp or only mine, it defaults to ALL, use multiple like this GBA,BASE1,BASE16),
    Code:
    /tmp/hpass
    
    - OR -
    
    /tmp/hpass GBA
    /tmp/hpass BASE1
    /tmp/hpass BASE16
    /tmp/hpass BASE256
    /tmp/hpass HPASS
    /tmp/hpass ALL
  13. Save
Please note my bash scripting isn't so good to begin with and this was the first time I even used Tomato, so this could probably be better, but it seems to work well! Any input will be considered and implemented if possible.

I didn't make the original script (nzone), I just modified it, credit goes to whoever made it. Take, modify, use, and redistribute as you please. This will remain on my servers so feel free to make use of it.

Attached is a zipped up copy of the files. You can always find an updated version at,

http://asset.tempestdev.com/hpass/Tomato-HPass_latest.zip

V1.1
- Separated MAC lists
- Added php file to sort and provide

Changed to HPass
- 635 MACS
- Command to use GBA MACS only
- Slimmed down
- Renamed to HPass as not to be confused with nzone

v1.1:

- Added wireless restart code

v1:
- Release

As a side note for anyone with a WNR3500Lv2 like me who bricked it, you do NOT need the USB-TTL cable to unbrick, you can use an Arduino. Pin 6 > Ground, Pin 5 > TX, Pin 2 > RX. (The pinout for the cable they mention is wrong, they list RX and TX pins switched)
 

Attachments

  • Tomato-HPass_v1.1.zip
    7.4 KB · Views: 134
Last edited by Xeology,
  • Like
Reactions: Quantumcat

Xeology

Well-Known Member
OP
Member
Joined
Jul 24, 2010
Messages
129
Trophies
0
Age
35
Location
Keansburg, NJ
Website
tempestdev.com
XP
283
Country
United States
Will it work on another DD WRT router?
Or gargoyle based router are compatible?

You could always try, if they use the same nvram setup, which from what I am seeing they do, then it should. I really do not know much about routers, not my proficiency.

The parts that wouldnt work would be these parts in the nzone file,

Code:
nvram set wl0_hwaddr=$MAC <- sets wlan0 mac
nvram commit <- commits changes
service wireless restart <- restarts wireless service

SSH/Telnet in and run this command,

Code:
wget http://asset.tempestdev.com/hpass/hpass; chmod +x /tmp/hpass; /tmp/hpass

Use an Android device to check the BSSID to see if it worked. You just have to find a way to ensure that the command in the original post is run every startup if it does.

It wouldnt harm anything if it doesnt work, you could always just reset the router if it messes up. If it does work I would very much appreciate the feedback though so I could include the firmware in a list of compatible firmware.
 
Last edited by Xeology,

daraly

Member
Newcomer
Joined
Sep 7, 2015
Messages
22
Trophies
0
Age
23
XP
88
Country
Switzerland
You could always try, if they use the same nvram setup, which from what I am seeing they do, then it should. I really do not know much about routers, not my proficiency.

The parts that wouldnt work would be these parts in the nzone file,

Code:
nvram set wl0_hwaddr=$MAC <- sets wlan0 mac
nvram commit <- commits changes
service wireless restart <- restarts wireless service

SSH/Telnet in and run this command,

Code:
wget http://asset.tempestdev.com/hpass/hpass; chmod +x /tmp/hpass; /tmp/hpass

Use an Android device to check the BSSID to see if it worked. You just have to find a way to ensure that the command in the original post is run every startup if it does.

It wouldnt harm anything if it doesnt work, you could always just reset the router if it messes up. If it does work I would very much appreciate the feedback though so I could include the firmware in a list of compatible firmware.
No,Seems my router does not support mac change。:(
 

Deleted member 358315

Well-Known Member
Newcomer
Joined
Dec 21, 2014
Messages
98
Trophies
0
Age
32
XP
95
Country
Netherlands
I notice you hard coded wl0 in you're script. Would this work as well with virtual wireless?

My dd-wrt router and duke's way works sometimes and sometimes not. So if this works properly I could use this one instead.
 

Xeology

Well-Known Member
OP
Member
Joined
Jul 24, 2010
Messages
129
Trophies
0
Age
35
Location
Keansburg, NJ
Website
tempestdev.com
XP
283
Country
United States
I notice you hard coded wl0 in you're script. Would this work as well with virtual wireless?

My dd-wrt router and duke's way works sometimes and sometimes not. So if this works properly I could use this one instead.

It could always be changed, I'm sure the is a command to dump a list of those names. It may work on DD-WRT without issue if you can determine the name of the vwlan. There should be no difference in operation save for the name. Throw me a link to the script and I can see about reworking mine based on how he did his.
 
Last edited by Xeology,

dolemite01

Member
Newcomer
Joined
Apr 26, 2009
Messages
11
Trophies
0
XP
143
Country
United States
Thank you very much for this. I have this exact router.
However, I cannot get it to work.
I put this in the init :
wget http://asset.tempestdev.com/hpass/hpass; chmod +x /tmp/hpass

And in the scheduler I put
/tmp/hpass BASE16

I set it to run every 3 minutes, just to test. However I check the logs and it shows the scheduler is running, but no streetpasses. If I manually change the MACs it will work.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    SylverReZ @ SylverReZ: But I bet that would be more for a flashcart than a consumer repro board.