T-PicoC3 how to configure Micropython Network/Sockets using ESP32 over UART as NIC? - micropython

I'm using a T-PicoC3 and a custom build of Micropython on the RP2040. The only notable difference in the build is the inclusion of network, sockets, websockets, webrepl.
I'm getting the error: "OSError: no available NIC" which makes sense, as I have no NIC defined. The issue is, there are no documents on how to establish an ESP32 running AT commands over UART as a NIC. If this is even possible?
The end goal is to use ntptime and other u/socket based libraries on the T-PicoC3 without modification.

Related

How to send data between two already configured HC-05 modules pi pico

I'm building an small project in which I'd like to send information from a master HC-05 bluetooth module to an slave one (both of them connected to different pi pico's), I've already synced them following Bluetooth HC-05 master-slave configuration using CircuitPython tutorial, I've finished the set up and now both modules (master and slave) seem to be properly connected, now the problem is that I don't know how to send data from one to the other.
All the tutorials that I've found that imply bluetooth communication seem to do it from a mobile Android app to the slave module, but what I'd like to do is to read data from an analog joystick with one pi pico and send it to through my master HC-05 the slave module (which would be connected to another pico) and then control an electric motor with this received data.
As I understand, the configuration process was finished in CircuitPython but this DOES NOT obligate me to continue with CircuitPython, I mean, I could do my implementation with microPython for example as Circuit Python was used only for the configuration process, is this correct?
My main question is, what is the library/process I could use to send data from master module to slave module?
Pd: I know there is a Raspberry Stack Exchange site but I posted my question here for visibility and also it is related to software too!.

Automatic detection of Arduino COM port in Matlab

I don't want to use something like serial ('COM2') to read data from Arduino by Matlab.
Is there any way in Matlab to identify COM port of an Arduino board automatically?
You can use the arduino command (from the MATLAB Support Package for Arduino Hardware) without any arguments:
recreates the last successful connection to the Arduino® hardware. If
that connection fails, it creates a connection to the first official
Arduino hardware connected to your host computer via USB.

How to Send AT commands to SIM900 while pppd is running

I have a Raspberry pi with SIM900 GSM module. currently i am using ttyUSB0 as pppd but i also want to send AT commands (send/receive SMS) to SIM900 while pppd is active. I was created multiple virtual serial ports (like gsmtty1,gsmtty2 etc) but those are not working with screen/minicom.
While these virtual serial ports might work (assuming you are talking about the kernel's 07.10 multiplexing support), your first attempt should be to use the other serial device, e.g. /dev/ttyUSB1.
This is assuming the modem provides two serial endpoints, which it is not absolutely required to do, but virtual all modems that support USB does, so I would be very surprised if it really only had one.
Notice that the 07.10 multiplexing protocol requires explicit command and implementation support from the modem and is specified in a 3GPP specification which was created in the 90-ties to cater for the lack of multiplexing in the serial interfaces that were in use at that time (RS-232, IrDA, bluetooth).
But it required dedicated driver support on the operating side, and for windows there was no default drivers supplied so you had to install something additional (and I think the quality of those were not so great either) so 07.10 never got any serious momentum. Today USB's native multiple endpoint support have in many ways obsoleted the 07.10 protocol.

How to Stream data over TCP to a Windows 7 laptop?

Im acquiring data from a sensor using RaspberryPi. Now the idea is to get the data streaming over an ethernet link to my Windows 7 laptop and do the monitoring and recording on the laptop. Can I get some advice on how to implement this in C/C++.
The idea is to get the signal from a sensor streamed to a Windows GUI.
You can push data from your raspberry PI to you Windows
You can have some sort of service on your Windows box and your raspberry PI can push information to your software running on your Windows.
or
you can pull data from your raspberry PI to you Windows
In this case, raspberry PI would be a passive provider and Windows would ask for data.
Hard to give you more information without more details but basically you decide who is going to the passive and active and program that way.
I personally would request data from the raspberry PI to Windows as I can have my service running and just update when I need instead of having my service running and suddenly have my data changing.
That said, it's hard to say without more details.
You need to tell what kind of programming language are you going to use.
According to your question, you need to dig into socket programming.
Recently,I linked my two Raspberry-Pi by writing a python script to establish a TCP connection between them.
and there is this protocol called "RTSP(Real Time Streaming Protocol)" to (as the name says) stream data in real-time.
(If you are to use python , there is this module called gst-python for streaming).
I think the above infos would give you where to start.

How Microsoft Network Monitor works

Does Microsoft Network Monitor depends on pcap/winpcap/libpcap libary? Or it has built its own libary/drivers to capture network packets? I cannot find any information about that subject. I am asking, cos Microsoft Network Monitor does not require restart after installation (so it does not load kernel level drivers?) and captures incoming packets even on Windows 7, where raw packets capturing does not work.
Additional information about raw packets limitation: http://social.technet.microsoft.com/Forums/en-US/w7itpronetworking/thread/65ce9bee-897b-4c19-a4c6-4d3da103be44/
Edit: I find answer myself -
The Network Monitor engine is divided into two parts: the capture engine and the parsing engine.
The capture engine is a driver that interfaces with the Network Driver Interface Specification (NDIS) to read frame data. It is a system driver that is installed automatically on Windows Vista. On previous operating systems, the capture driver is part of the system.
The parsing engine, on the other hand, is in user mode. This engine uses Network Monitor Parsing Language (NPL) files to determine how to parse raw frame data. It also filters frames.
The API can access both parts of the engine, as well as save and load capture files.
Windows may support loading kernel modules (.sys files) without needing to reboot, so there might not have to be a reboot after installing Network Monitor.
Network Monitor does not use WinPcap; it has, as you note, its own NDIS driver that serves a similar purpose to WinPcap's NDIS driver.