# [[OpenNDS]] Dev Setup
Generally, follow the tutorial here
https://opennds.readthedocs.io/en/stable/compile.html#openwrt-package
## Menu config
Tips:
- To find the target system, go to https://openwrt.org/toh/start and find your router model
- Ctrl+f for `Target` and note the corresponding field (e.g. `mvebu`)
- "System-On-Chip" in the following row may help identify which one it is, e.g. `Marvell Armada 385 88F6820`
- Within the Menu config, ensure that your Subtarget also matches the info displayed in "System-On-Chip"
- For example, `Marvell Armada 385 88F6820` matches `Marvel Armada 37x/38x/XP`
- Within Menu config > Target profile, find the entry that matches your router's hardware model (e.g. `Linksys WRT3200ACM`)
- At this point, the first three options within the menu config should be correct and look something like this: ![[Screen Shot 2021-08-22 at 9.53.55 PM.png]]
#### Menu Config > Network > Captive Portals
(follow the instructions)
Ensure that a `*` is next to `opennds` (press `y`)
![[Screen Shot 2021-08-22 at 9.54.59 PM.png]]
Save the config to `.config` (press tab to select the items in the bottom row). You should see a confirmation window like this:
![[Screen Shot 2021-08-22 at 9.55.59 PM.png]]
Select Exit in the bottom row (also using tab)
## Current attempts
### Terminal windows
1st row: ssh into OpenWrt router
2nd row: openwrt sdk (no make menuconfig) `friendly_feynman`
3rd row: pure debian `xenodochial_roentgen`
4th row: p3terx `peaceful_poincare`
### [[OpenNDS Dev Setup via OpenWrt SDK]]
`friendly_feynman`
### [[OpenNDS Dev Setup via Debian]]
`xenodochial_roentgen`
### [[OpenNDS Dev Setup via p3terx build env]]
`peaceful_poincare`
### [[OpenNDS Dev Setup Natively on macOS]]
## Troubleshooting
### Idea: Use diff between .config and .old_config to add target to [[OpenNDS Dev Setup via OpenWrt SDK]]
### Idea: Use M in Menu Config > Network > Captive Portals
![[Screen Shot 2021-08-23 at 3.20.03 AM.png]]