Week14 - Networking and communications
Here are my week 14 assignment
- xiao esp32c3 sending data through wifi
- Group Assignment Week 14
- Group Assignment Week 14 (ChaiHuo Page)
What should I achieve in this week:
Group Assignment:
- Send a message between two projects
individual assignment:
- Design, build, and connect wired or wireless node(s) with network or bus addresses and local input &/or output device(s)
I want to do a modular system, after studying this class
Networking and communications Notes
Why: For different location be able to communicate, for associated processing by sensors(scale the system), for separate debugging the system, for decreasing the interference among the components
wired: modules communicate: common ones: UART, USART; PIO are the programmable peripherals; big-bang is implementing the protocols(software)
- RS232: in week4 highs and lows reprensting letters each node is getting letter. There also RS422, RS485
- ATiny412: 8-pin processor
- Serial broadcase: send ids to the node and communicate correctly. -
- Hop-count: there is a counter to count the hops, and the speed is required(for counting). assign the address, put it in the counter(for checking whether connection), send the message to the hops.
- broad-hop: one host(one chagrge node), multiple slaves, the slaves(receive lines) connect reversely - hop count back serial means: down the wire, senging high and low levels and asynchronous means: the resting level is high and anytime I can send the data waiting clents listening(need address) and getting feedback. And for synchronous you will have two lines: one is for data sending and one is for saying when the data is valid - tells them the time reading the data
synchronous serial: SPI and IIC
- SPI: one for data out; one for data in; one for clock
- SDcard library
- need to fat file system before using
- IIC: SCL clock line and SDA data line
- I3C: take best thing about SPI and IIC and synthesize them together(not yet mature)
what does time rase coming - how does a fast processor talk to a slow one: ATP(asynchronous token protocol) work without clocks, 2 lines each direction: one line for bit and another(bit line) saying whether is valid. - reconnect any time, just like XIAO PIO do
USB: directly talk to the USB - HID, MIDI
Ethernet: fast network
CAN, LIN for cars, industrial automation, for 3D printers as well
MODBUS:
timing recovery?
wireless:
radios:PA is power amplifier for sending, LNA is low noise amplifier for receiving, IF is intermediate frequency for processing the signal, I/Q tells how to modulate it
antenna:need antennas, typically tunned; gained: get more direction or get more from one direction
Single-chip: part of chip is making by single chip radio. XIAO ESP32C3
the main task:
async def main(): local_task = asyncio.create_task(local()) server_task = asyncio.create_task(server.start_server(port=80,debug=True)) await asyncio.gather(local_task,server_task)
Chrome supports bluetooth serial connection.
blueart.py and ble_advaertising.py - implement UART over bluetooth
RFID - very insecure, read and write all the data on the card, peel all out and paste in
ISM - frenquency bands that are available, send data between two modules - car radios
- nRF905 represents the lower ones
LoRa: rapidly maturing, kind of wifi, for city scale networks, long distances usages
software radio: implement radios in software using clocks as they go so fast
Differnet purposes for different frequence
time considerd, for learning modulation, channel sharing, networking other time