Skip to main content

Week14 - Networking and communications

Here are my week 14 assignment

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
  • 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