Technical University Iași - Faculty of Automatic Control and Computer Science
Microprocessor Systems

Experiment Pico W 1

  • E3.1 Title:


  • UNIX sockets for sensors and actuators with Pico W


  • E3.2 General presentation, purpose.


  • The experiment aims to exemplify a way of data transmission between processes or computers connected in EDGE Computing structures. For exemplification, a local network is built consisting of a server with Rpi zero/4 and Pico W modules interconnected via WiFi. Using UNIX Socket mechanisms expanded for sensors and actuators.
    For building Edge Computing architectures, communication between equipment can be done using socket-type elements. The construction and use of the Python socket class are explored, which allows creating instances enabling the development of client-server applications that can run on the same computer or on different systems interconnected in the network. At the end of the laboratory you will have detailed information on how to create server and client applications that allow data exchange between sensors and actuators in computer networks using the TCP/IP IPv4 protocol.


  • E3.3 Resources:


  • - Raspberry Pi zero/2/3/4 platform, Pico W platforms, microPython interpreter,





    - Firmware for Pico W


  • E3.4 Prototype program sources:

  • Client application for Pico W

    Server application for Linux/Rpi


  • E3.5 How to conduct/track the experiment:
    • The laboratory involves creating a local network consisting of a router, raspberry pi 3/4 and one or more Pico W. Installing the client prototype program will activate in the local WiFi the Pico W platforms which will be assigned a dynamic IP.



    • Details for implementing communications in WiFi networks for the Pico W platform require going through the related documentation.
    • Using the Thonny environment, analyze the client program and run it on Pico W and note the address assigned by the router;
    • On a raspberry pi with Linux and connected in the network, launch the server application to deliver data from the temperature sensor to a request from a client;
    • The WiFi extension on the Pico W platform is made with the Infineon CYW43439 module;
    • Analyze how to create and use the Python socket class for network communications.
    • bind()
      listen()
      accept()
      connect()
      send()
      recv()
      close()



    • E3.6 Proposed problems:

    • 1. Create a daemon program that will place in a file the data obtained from the 1-wire sensor in string format (similar to CPU temperature);


      2. Attach to the client system an LCD model HD44780 to display the data from the server;



      3. Highlight a method by which systems with client and server applications can communicate between Pico W;

      4. Highlight how client and server applications work in background/foreground mode;

      5. Create a server program that will deliver information from the ultrasonic sensor.

    • E3.7 The experiment can be extended to:

    • - Developing a planetary-sized digital nervous system;
      - Internet-based control of processes in hostile environments;
      - Building security systems ;
      - Building parking systems for vehicles;
      - Building ultrasound medical equipment ;


    • E3.8 Reference documentation:


    • Raspberry Pi jobs/prj;
    • Edge Computing;
    • Pico W datasheet;
    • WiFi module documentation;
    • Infineon WiFi extension for Pico W
    • Python socket lib;
    • Berkeley sockets;
    • Using Internet Sockets


    © 2024, Fl. Pantilimonescu - Faculty of Automatic Control and Computer Science Iași