# SC2 Take Picture Status

Using /osc/status to see the completion of startCapture on the SC2 does not work. You must use /osc/state to see when the interval or bracket sequence ends.

Using /osc/status with takePicture does work. However, the SC2 has a problem with handling individual HTTP requests in rapid sequence.

Using /osc/status, I can take pictures in rapid sequence with the Z1 camera if I space out the shots by 1 second. I can likely reduce this delay, but I have not tried.

For the SC2, tests with 1 second and 2 second delays failed.

If I insert a delay of 10 seconds between pictures, I can take 200 pictures.

## SC2 Sequence Shot Result Summary

Test # delay after done total delay between shots number of shots hdr result
1 1 sec 9 seconds 200 no fail
2 2 sec 10 seconds 200 no fail
3 10 sec 18 seconds 200 no success
4 5 sec 13 seconds 200 no fail
5 8 sec 16 seconds 200 no success
6 6 sec 14 seconds 200 no success
7 5 sec 13 seconds 200 no success
8 3 sec 11 seconds 100 no success
9 1 sec 9 seconds 100 no success
10 0 sec 8 seconds 100 no success
11 0 sec 8 seconds 100 hdr success

## Test Environment

• uses takePicture, not startCapture
• uses non-HDR pictures
• SC2 with firmware 1.51
• SC2 is plugged into a power source with a USB cable. However, this should not be needed and should not impact the test
• SC2 is connected to Windows 10 computer with 2.4GHz Wi-Fi
• camera is within 50cm of computer
• camera is indoor, in the shade, during winter
• all media is deleted from camera prior to test

## Test Scripts

### Loop to take 200 Pictures

for counter in {1..200}
do
echo that was picture $counter ((counter++)) # waiting 10 seconds for SC2 test echo waiting 10 seconds for the next shot sleep 10s done echo finished endurance test  ### Camera Status Check Code Snippet This is the check used in the tests. I put it into a loop to check the status after each shot. I check the status every second. Future<String> isDone(String id) async { var url = 'http://192.168.1.1/osc/commands/status'; var data = {'id': id}; var payload = jsonEncode(data); var response = await http.post(url, headers: {'Content-Type': 'application/json;charset=utf-8'}, body: payload); Map<String, dynamic> status = jsonDecode(response.body); String state = status['state']; return state; }  At the end of 200 files, I received this: thumbnail download test completed thumbnails are in local storage for inspection  ## Example with 5 second delay for counter in {1..200} do ./theta.exe takeAndReady echo that was picture$counter