Is a blind installation possible?


#1

I ordered my CHIP this morning and I’m hyped to play with it as soon as it arrives.

I just spent five minutes searching my closet for a “TRRS-headphone to RCA composite” cable. I “KNOW” that I own one, I used to use it for the TV-out on my old portable DVD Player, but I’m still searching for it. Worst case scenario is that I won’t find it and have a CHIP that can’t connect to any video output.

Is it possible to do a blind installation? By “blind,” I mean no monitor and just a keyboard/mouse connected to it. If I can get SSH and wifi configured, I’ll be able to use it remotely on my main computer. Is this hard to do? I’m going to continue searching for that composite video cable in the meantime.


#2

I actually found my “headphone to composite-video(yellow)” cable. It isn’t what I remember it being, it’s just the yellow video port and no sound, but I should actually be in business now.

For the sake of the thread though, I’m still curious if a blind wifi + SSH installation can be done.

www.pasteall.org/pic/show.php?id=96035


Ssh into headless CHIP: not able to find it on local network
#3

yes it is definitely possible.
For the meantime to get wifi working you can communicate with the CHIP over the Serial connection established on the microUSB used for power. Assuming your CHIP is connected to your laptop/PC


#4

The main initial difficulty in doing a headless (“blind”) network setup of a new network device that has a built in SSH server is usually discovering what its IP address on your local network is.

You can do this by looking at the lease info of the DHCP server in your router (or whatever device serves up DHCP on your local network – usually your router on small home networks, it can be a Windows server or other device on larger corporate ones). Or, you can scan the network looking for devices with nmap or similar software, and then power up the C.H.I.P , scan again, and spot the new device and its IP address. A command such as:

nmap -sP 192.168.0.1-254

will scan that range of IP addresses and report devices it can find there. Use whatever range of IPs your local network uses, of course. So you can do something like

nmap -sP 192.168.0.1-254 >before.txt

Now power up the headless device

nmap -sP 192.168.0.1-254 >after.txt
diff before.txt after.txt

to quickly see the new device and it’s IP address. On Windows, diff doesn’t exist by default, so you can either look at the two files “by eye”, find and install the GNUwin32 diff, or use whatever Windows-specific diff-like program you prefer, one I know of is called WinDiff (from Microsoft), another is winmerge .

Once you have the IP address of the new headless device, from your main PC (or whatever computer you use that has a keyboard and screen, it doesn’t have to be a PC!) you can do something very similar to:

ssh root@192.168.0.42 # Assumes the IP you found was 192.168.0.42. If not, adjust accordingly.

should get you connected to the new C.H.I.P. in your life. I’ve done this for other small devices (Pis, an Odroid-C, a Pandaboard, etc.) but not (yet) for a C.H.I.P.

This general topic of using C.H.I.P. headless is being discussed in a longer older thread.


#5

but when you are already in CHIP for setting up the wifi it’s the easiest thing to just issue the command ifconfig and you see which IPv4 Adress the CHIP is using or not. Right now you just can’t configure the WIFI right while flashing. So there is indeed a need of somehow connecting to it via a wired ways (mice-keyboard, FTDI-Serial, or mircoUSB Serial)


#6

Catch-22 – if you are “already in CHIP” and can “see” the output of ifconfig, either you are no longer running it headless, or you already have a working network or serial connection of some kind to the CHIP. So yes, it is easy once you have solved the problem :smile:

Right now you just can’t configure the WIFI right while flashing.

Interesting. Why not? I’d think it should be pretty straightforward in the SDK to add a boot-time script to the image that runs once (at boot time) and does:

nmcli dev wifi con “myssid” password “myssidpassword”

or add the relevant lines to /etc/network/interfaces if you are using Debian and have a build system for Debian images.

I don’t have a C.H.I.P yet myself (scheduled for February, I was late to the Kickstarter party!), or I’d try it… have others already tried this approach and failed?


#7

ah okay. we are interpreting headless in different meanings. In my opinion for the general User headless is without a TV / USB Keyboard, mice etc. SO I thought a serial connection would be the best thing to go as it’s really a simple and straight forward task.

With right now I mean that no one wrote a little wiki or even a GUI to configure the debian firmware before flashing. I knew that there are some ways but they need to be brought to light to the new users on linux/embedded Systems

would be great if you could post a little tutorial about that. Just some simple Steps so everybody could find it :blush:

cheers


#8

OK. Until I get a C.H.I.P. myself, I can’t test anything I create for the device. By the time I get one, someone else will probably have beaten me to it :smile:

For now, where is the CHIP Debian builder or SDK? According to the Building Debian thread there isn’t one yet?? But someone must have it, to create the image. Is there a reason NextThingCo is apparently keeping their Debian build environment a secret? Or have I just missed it?

I’m sure it is possible to hack on the provided binary Debian image, unpacking it, modifying it, and repacking it. However, this is an open source project, so we should not have to work that way.

Has anyone got this (script that configures wifi at boot) approach to work in the Buildroot SDK?


#9

I more or less did this.