From 6325ebe28e4f05b788e7f600ac88aa5724a06dab Mon Sep 17 00:00:00 2001 From: alanbjohnston Date: Sun, 4 Sep 2022 08:09:12 -0400 Subject: [PATCH] Delete pico-get-jpeg-serial.ino --- .../examples/pico-get-jpeg-serial.ino | 228 ------------------ 1 file changed, 228 deletions(-) delete mode 100644 cubesatsim/pico-get-jpeg-serial/examples/pico-get-jpeg-serial.ino diff --git a/cubesatsim/pico-get-jpeg-serial/examples/pico-get-jpeg-serial.ino b/cubesatsim/pico-get-jpeg-serial/examples/pico-get-jpeg-serial.ino deleted file mode 100644 index 925cdec4..00000000 --- a/cubesatsim/pico-get-jpeg-serial/examples/pico-get-jpeg-serial.ino +++ /dev/null @@ -1,228 +0,0 @@ -#include -#include - -bool finished = false; - -char buffer[100001]; -int index1 = 0; -char start_flag[] = "3d99de816e5ad7742b61a37c39141783"; -char end_flag[] = "f681a5c52351befe0e3524eb1a40f14b7803317a"; -int flag_count = 0; -int start_flag_detected = false; -int start_flag_complete = false; -int end_flag_detected = false; -int jpeg_start = 0; -FastCRC8 CRC8; - -//#define DEBUG - -#define PICOW true -int led_pin = LED_BUILTIN; - -void setup() { - - // put your setup code here, to run once: - -if (PICOW) - led_pin = STEM_LED2_PIN; - - Serial.begin(115200); - - delay(5000); - - pinMode(led_pin, OUTPUT); - - digitalWrite(led_pin, LOW); - delay(500); - digitalWrite(led_pin, HIGH); - delay(500); - digitalWrite(led_pin, LOW); - delay(500); - digitalWrite(led_pin, HIGH); - delay(500); - if (PICOW) - digitalWrite(led_pin, LOW); - - delay(2000); - - Serial2.setRX(9); - delay(100); - Serial2.setTX(8); - delay(100); - Serial2.begin(115200); - - Serial.println("Starting"); - - LittleFS.begin(); -} - -void show_dir() { - int count = 0; - Dir dir = LittleFS.openDir("/"); -// or Dir dir = LittleFS.openDir("/data"); - Serial.println(">"); - while (dir.next()) { - count++; - Serial.print(count); - Serial.print(" "); - Serial.print(dir.fileName()); - // if(dir.fileSize()) { - File f = dir.openFile("r"); - Serial.print(" "); - Serial.println(f.size()); - // } else - // Serial.println(" "); - } - Serial.println(">"); -} - -void write_jpg() { -/* - Serial.println("---------------"); - Serial.println(buffer[jpeg_start], HEX); - Serial.println(buffer[jpeg_start + 1], HEX); - Serial.println(buffer[jpeg_start + 2], HEX); - Serial.println(buffer[jpeg_start + 3], HEX); -*/ - if ((buffer[jpeg_start] == 0xff) && (buffer[jpeg_start + 1] == 0xd8) - && (buffer[index1 - 2] == 0xff) && (buffer[index1 - 1] == 0xd9)) { - - Serial.println("Received a JPEG! Writing to file."); - File i = LittleFS.open("/cam.jpg", "w+"); - if (i) { - i.write(&buffer[jpeg_start], (size_t) (index1 - jpeg_start)); - finished = true; - } else - Serial.println("Error opening cam.jpg"); - -// Serial.println("---------------"); - i.close(); -// } - } else - Serial.println("Not a JPEG"); - - show_dir(); -/* - delay(2000); - - char read_values[2]; - File i = LittleFS.open("/cam.jpg", "r"); - while (i.available()) { - i.readBytes(read_values, 1); - char hexValue[5]; - sprintf(hexValue, "%02X", read_values[0]); - Serial.print(hexValue); - } - i.close(); - Serial.println("\n\n finished read"); - - */ -} - -void loop() { - - char input_file[] = "/cam.jpg"; - char output_file[] = "/cam.bin"; - - get_image_file(); - - Serial.println("Got image from ESP-32-CAM!"); - - delay(1000); - -} - - -void get_image_file() { - finished = false; - while (!finished) { - // put your main code here, to run repeatedly: - if (Serial2.available()) { // If anything comes in Serial2 - byte octet = Serial2.read(); - - if (start_flag_complete) { -// Serial.println("Start flag complete detected"); - buffer[index1++] = octet; - if (octet == end_flag[flag_count]) { // looking for end flag -// if (end_flag_detected) { - flag_count++; -// Serial.println("Found part of end flag!"); - if (flag_count >= strlen(end_flag)) { // complete image -/// buffer[index1++] = octet; - Serial.println("\nFound end flag"); -// Serial.println(octet, HEX); - while(!Serial2.available()) { } // Wait for another byte -// octet = Serial2.read(); -// buffer[index1++] = octet; -// Serial.println(octet, HEX); -// while(!Serial2.available()) { } // Wait for another byte - int received_crc = Serial2.read(); -// buffer[index1++] = octet; - - Serial.print("\nFile length: "); - Serial.println(index1 - (int)strlen(end_flag)); -// index1 -= 1; // 40; -// Serial.println(buffer[index1 - 1], HEX); -// int received_crc = buffer[index1]; -// index1 -= 1; - - uint8_t * data = (uint8_t *) &buffer[0]; -#ifdef DEBUG - Serial.println("\nCRC cacluation data:"); - Serial.println(buffer[0], HEX); - Serial.println(buffer[index1 - 1], HEX); - Serial.println(index1); - Serial.println(received_crc, HEX); - #endif - int calculated_crc = CRC8.smbus(data, index1); - // Serial.println(calculated_crc, HEX); - if (received_crc == calculated_crc) - Serial.println("CRC check succeeded!"); - else - Serial.println("CRC check failed!"); - - index1 -= 40; - write_jpg(); - index1 = 0; - start_flag_complete = false; - start_flag_detected = false; // get ready for next image - end_flag_detected = false; - flag_count = 0; -// delay(6000); - } - } else { - flag_count = 0; - } - /// buffer[index1++] = octet; - -#ifdef DEBUG - char hexValue[5]; - if (octet != 0x66) { - sprintf(hexValue, "%02X", octet); - Serial.print(hexValue); - } else { -// Serial.println("\n********************************************* Got a 66!"); - Serial.print("66"); - } -// Serial.write(octet); -#endif - if (index1 > 100000) - index1 = 0; -// } - } else if (octet == start_flag[flag_count]) { // looking for start flag - start_flag_detected = true; - flag_count++; -// Serial.println("Found part of start flag! "); - if (flag_count >= strlen(start_flag)) { - flag_count = 0; - start_flag_complete = true; - Serial.println("Found start flag!\n"); - } - } else { // not the flag, keep looking - start_flag_detected = false; - flag_count = 0; - // Serial.println("Resetting. Not start flag."); - } - } - } -}