I do not claim to be an expert in the Signal Owl, Linux, scripting, etc; but hope that someone will be able to find this information helpful. There are multiple ways to accomplish some tasks. The commands listed below are what I used to get my Signal Owl up and running with a simple payload (first one was WiFi Connect).
First, I highly recommend everyone check out Darren's Signal Owl - Getting Started video. It's very helpful to understand the Signal Owl setup and most important (for me) the LED sequence and when to push the button for Arming Mode.
I've seen several posts which indicate their Signal Owl does not copy payloads/extensions from a USB Drive. Currently my Signal Owl is behaving in a similar fashion. I'm using a FAT32 formatted drive with the payload in the root of the drive but so far, no success.
Manually copy the file from the USB drive to correct location on the Signal Owl (/root/payload).
1. Power on the Signal Owl.
2. Push the button during Select Mode (Red fast blinking)
3. Connect your device (compute, phone, etc) to the Owl_xxxx Access Point
4. Connect to Signal Owl (172.16.56.1) via Putty (or some other SSH terminal utility) as the root account.
5. type: df -h (This should list the volumes mounted by the Signal Owl. My USB drive was /mnt/sda1).
6. type: cd /mnt/sda1
7. type: ls -l (if you want to list the files in the directory)
8. type: cp <payload file name> /root/payload
9. type: cp extensions/<filename> /root/payload/extensions (Optional: Only if extensions need to be copied also)
10. type: cd /root/payload
11. type: ls -l (if you want to list the files in the directory)
12. Verify the payload file has execute permissions (At least for the owner). If not, type: chmod 744 <payload file name>
13. type: cd /root/payload/extensions
14. type: ls -l (if you want to list the files in the directory)
15. Verify the extension file has execute permissions (At least for the owner). If not, type: chmod 744 <extension file name>
Personally, I check a couple times to make sure I've updated everything correctly. That will be up to you.
At this point, you should be ready to test the payload. Power off the Signal Owl, ( I count to 10) then power on the Signal Owl and watch the boot process. Depending on the payload, the LED should indicate when the payload has been successfully executed.
Alternate Transfer Method:
An alternate method to copy files from your system is to use (if using a Windows OS) the Putty utility PSCP or PSFTP. Linux should have those SCP or SFTP already loaded. Once the files have been transferred to the Signal Owl, I recommend verifying the file(s) have the correct permissions for execution.
Personally I prefer to not constantly copy files to and from the device when which switching payloads. I connect to the Signal Owl and rename payloads not in use. Which ever payload I want to be active is renamed to payload.txt (or payload.sh or payload.py; whichever fits best).
WiFi Connect: /root/payload/payload.txt is renamed to /root/payload/payload.txt_wifi_connect
Garbage SSID: /root/payload/payload.txt is renamed to /root/payload/payload.txt_garbage_spammer
Extending USB Ports:
I used a Anker USB 4-port hub (plugged into the USB 2.0 port on the Signal Owl) to extend the available USB ports. This allowed me to have an additional WiFi adapter (RT5370) and a USB Drive connected to the Signal Owl simultaneously. In the future, I'm hoping to test running an extra WiFi adapter and a GPS module from the USB hub connected to the Signal Owl.