Example #1
0
void esp8266_set_echo(bool new_state) {
	if (new_state == true) {
		esp8266_send_command(TYPE_SET_EXECUTE, ATE1);
	} else {
		esp8266_send_command(TYPE_SET_EXECUTE, ATE0);
	}
}
Example #2
0
void esp8266_set_mode(u8 mode) {
    if ((mode > 3) || mode == 0) {
        return; // Only 1, 2, 3
    }
    at_cwmode_se = calloc(16, sizeof(char));
    sprintf(at_cwmode_se, "AT+CWMODE=%d\r\n", mode);
    esp8266_send_command(TYPE_SET_EXECUTE, AT_CWMODE);

    free(at_cwmode_se);
}
Example #3
0
void esp8266_connection_mode(u8 mode) {
    if ((mode != 1) && (mode != 0)) {
        return; // Only 0 or 1
    }
    at_cipmux_se = calloc(16, sizeof(char));
    sprintf(at_cipmux_se, "AT+CIPMUX=%d\r\n", mode);
    esp8266_send_command(TYPE_SET_EXECUTE, AT_CIPMUX);
    esp8266_wait_for_answer();

    free(at_cipmux_se);
}
Example #4
0
void esp8266_close_connect(Esp8266 *esp,Esp8266Connect *connect){
	return ; //Не работает на прошивке 0.21 баг в модуле!
	char buffer_str[100];
	char channel_number[1];
	itoa(connect->id,channel_number,10);
	memset(buffer_str,0,100);
	strcat(buffer_str,"AT+CIPCLOSE=");
	strcat(buffer_str,channel_number);
	strcat(buffer_str,"\r\n");
	esp8266_send_command(esp,buffer_str);
	esp->closing_connect = connect;
}
Example #5
0
void esp8266_join_ap(char* ap, char* password) {
    // prepare credentials:
    char buffer[70];
    sprintf(buffer, "AT+CWJAP=\"%s\",\"%s\"\r\n", ap, password);
    at_cwjap_se = calloc(strlen(buffer), sizeof(char));
    strcpy(at_cwjap_se, buffer);

    esp8266_send_command(TYPE_SET_EXECUTE, AT_CWJAP);
    esp8266_wait_for_answer();

    free(at_cwjap_se);
}
Example #6
0
void esp8266_send_data(char* ip_address, u16 port, Protocol protocol, char* data, u8 length) {
    // Establish connection with remote host
    char buffer[256];
    char *proto;
    proto = calloc(4, sizeof(char));
    if (protocol == TCP) {
        strcpy(proto, "TCP");
    } else if (protocol == UDP) {
        strcpy(proto, "UDP");
    }
    current_protocol = protocol;
    sprintf(buffer, "AT+CIPSTART=\"%s\",\"%s\",%u\r\n", proto, ip_address, port);
    at_cipstart_se = calloc(strlen(buffer) + 1, sizeof(char));
    strcpy(at_cipstart_se, buffer);

    esp8266_send_command(TYPE_SET_EXECUTE, AT_CIPSTART);
    esp8266_wait_for_answer();

    // Send data
    sprintf(buffer, "AT+CIPSEND=%u\r\n", length);
    at_cipsend_se = calloc(strlen(buffer) + 1, sizeof(char));
    strcpy(at_cipsend_se, buffer);

    esp8266_send_command(TYPE_SET_EXECUTE, AT_CIPSEND);
    esp8266_wait_for_answer();

    at_data_buffer = calloc(length + 1, sizeof(u8));
    strncpy(at_data_buffer, data, length);

    usart2_print("+");

    esp8266_send_command(TYPE_SET_EXECUTE, AT_SEND_DATA);
    esp8266_wait_for_answer();

    free(proto);
    free(at_cipsend_se);
    free(at_cipstart_se);
    free(at_data_buffer);
}
Example #7
0
bool esp8266_check_presence(void) {
    esp8266_send_command(TYPE_INQUIRY, AT);
	esp8266_wait_for_answer();
	return true;
}
Example #8
0
void esp8266_cwlap(Esp8266 *esp){
	esp8266_send_command(esp,"AT+CWLAP\r\n");
}
Example #9
0
void esp8266_gmr(Esp8266 *esp){
	esp8266_send_command(esp,"AT+GMR\r\n");
}
Example #10
0
void esp8266_cipapmac(Esp8266 *esp){
	esp8266_send_command(esp,"AT+CIPAPMAC?\r\n");
}
Example #11
0
void esp8266_cwmode(Esp8266 *esp){
	esp8266_send_command(esp,"AT+CWMODE?\r\n");
}
Example #12
0
void esp8266_at(Esp8266 *esp){
	esp8266_send_command(esp,"AT\r\n");
}
Example #13
0
void esp8266_close_connection(void) {
    esp8266_send_command(TYPE_SET_EXECUTE, AT_CLOSE);
    esp8266_wait_for_answer();
}
Example #14
0
void esp8266_reset(void) {
	esp8266_send_command(TYPE_SET_EXECUTE, AT_RST);
	esp8266_wait_for_answer();
}
Example #15
0
char* esp8266_get_ip_addresses() {
	esp8266_send_command(TYPE_TEST, AT_CIFSR);
	esp8266_wait_for_answer();
	esp8266_wait_for_answer();
	return "";
}
Example #16
0
void esp8266_get_connected_ap() {
    esp8266_send_command(TYPE_INQUIRY, AT_CWJAP);
    esp8266_wait_for_answer();
}
Example #17
0
void esp8266_get_list_of_aps() {
	esp8266_send_command(TYPE_SET_EXECUTE, AT_CWLAP);
	esp8266_wait_for_answer();
}