Hi folks --
I've figured out how to (reversibly) change the SSID on the FC40 camera. Turns out that at boot-up, the real-time operating system which manages the camera (and runs Linux as a task) reads from the file autoexec.ash on the SD card. This file contains a sequence of commands which are interpreted by Ambarella's ambsh shell. The SSID change is achieved sending a couple of commands to the Linux task from the ambsh shell, to alter the SSID.
Specifics: create the autoexec.ash file in the top-level directory of the SD card, with the following contents:
Code:
sleep 30
lu_util exec 'sed -e "s/FC40_[A-Za-z0-9]*/FC40_AARDPIG/" -i /tmp/wifi/ap.conf'
lu_util exec 'sh /tmp/wifi/ap.conf'
IMPORTANT: This file must be saved with Unix (linefeed) line-breaks, not Windows line-breaks. Google for how to do this.
Let's go through the file line-by-line, to see how it works:
- The first line causes the shell to sleep (wait) for 30 seconds. This is (approximately) the time it takes for the Linux task to get up and running after we switch the camera on. We have to wait for this start-up complete before we change the SSID, otherwise the change may be overwritten by the default SSID; 30 seconds is my estimate of how long this takes (judging from how long the status LED on the camera takes to switch from flashing to constant).
- The second line sends a command to the Linux task, which uses the standard sed tool to change the SSID in the WiFi configuration script (/tmp/wifi/ap.conf) from FC40_something to FC40_AARDPIG. When you create your own file, you should change FC40_AARDPIG to whatever SSID you wish. (Note, however, that the FC40 smartphone app expects the camera SSID to begin with 'FC40_').
- The third line sends another command to the Linux task, which actually runs the WiFi configuration script to change the SSID.
A better approach, IMHO, would be to use the wpa_cli tool to change the SSID directly, rather than fussing with the /tmp/wifi/ap.conf script; but I haven't yet managed to get this working.
A big kudos for figuring out how to do this should go to
this thread discussing the GoPro Hero camera; turns out that the GoPro software is also made by Ambarella, so there are quite a few commonalities.
cheers,
A