Louis_m
Published

(2) Temperature transfer WizFi360-EVB-Mini (Pico) - Client

(2)-Temperature measurement data transfer WizFi360-EVB-Mini (Raspberry Pi Pico) - Client(Python)

BeginnerShowcase (no instructions)386
(2) Temperature transfer WizFi360-EVB-Mini (Pico) - Client

Things used in this project

Story

Read more

Schematics

WizFi360-EVB-Mini connection diagram

Code

WizFi360_AT_Client.py

Python
import os, sys
import utime
from machine import UART,Pin

print(os.uname())

#LED
led = machine.Pin(25, machine.Pin.OUT)
led.value(0)
utime.sleep(0.5)
led.value(1)

#Temperature
sensor_temp = machine.ADC(4)
conversion_factor = 3.3 / (65535)

#Uart
#uart = machine.UART(0, baudrate=115200, tx=Pin(0), rx=Pin(1))
uart = machine.UART(1, baudrate=115200, tx=Pin(8), rx=Pin(9))
print("UART Setting...")
print(uart)

#Functions
def sendCMD_waitResp(cmd, timeout=3000):
    print("CMD: " + cmd)
    uart.write(cmd.encode('utf-8'))
    waitResp(timeout)
    print()
    
    
def waitResp(timeout):
    prvMills = utime.ticks_ms()
    resp = b""
    while (utime.ticks_ms()-prvMills) < timeout:
        if uart.any():
            resp = b"".join([resp, uart.read(1)])
    print(resp)


#AT command Test
sendCMD_waitResp("AT\r\n") #AT
sendCMD_waitResp("AT+GMR\r\n") #firmware ver

utime.sleep(0.5)
sendCMD_waitResp("AT+RST\r\n") #reset
sendCMD_waitResp("AT+CWMODE_CUR=1\r\n") # Station Mode
sendCMD_waitResp("AT+CWDHCP_CUR=1,1\r\n") #DHCP

utime.sleep(0.5)
sendCMD_waitResp('AT+CWJAP_CUR="SSID","PASSWORD"\r\n') #AP connecting
sendCMD_waitResp("AT+CIPSTA_CUR?\r\n") #network chk


#TCP Client
sendCMD_waitResp("AT+CIPMUX=1\r\n")
sendCMD_waitResp('AT+CIPSTART=1, "TCP","192.168.1.100",5000\r\n')

print("connected...")
print("RPi-PICO with WizFi360")

Data = bytes()

while True:
    reading = sensor_temp.read_u16() * conversion_factor  
    temperature = 27 - (reading - 0.706)/0.001721
    print(temperature)
    temp = str(temperature)
    utime.sleep(1)
    sendCMD_waitResp("AT+CIPSENDBUF=1,20\r\n")
    sendCMD_waitResp("Temperature: ")
    send = uart.write(temp.encode('utf-8'))

Credits

Louis_m

Louis_m

19 projects • 9 followers

Comments