Networking and communications

Repo:

Check size in history

Git page on rewriting history

Nuclear option - to pull out large files

(Removing file from every commit)

Ketihs board

http://archive.fabacademy.org/2016/fablabsingapore/students/157/w15.html

button t45 - http://academy.cba.mit.edu/classes/input_devices/index.html

RGB LED t45 - http://academy.cba.mit.edu/classes/output_devices/index.html

Assignment:

Design and build a wired &/or wireless network connecting at least two processors

  • There shall be an identification of the involved microcontrollers

Group: Send message between two projects

Purposes

location

parallelism ( a small processor for each task)

modularity (easier to bug-find)

interference (can remove low noise for high voltage, and high voltage from high temp.

Interface (can be seperated from the function)

Serial connection

Stereching TX / RX from a master to multiple boards.

Master sends to a a specific node, each node gets an id!

Each slave board output: low level, highlevel or nothing

Only one line from the master

IC2 (I square C)

Multiple processors talk to each other

Arduino library

Bit-banging (SCL SDA): Syncronous protocol, dataline and a clock.

SPI: Used byt the

MISO Master in slave out

MOSI Master Out Slave IN

Arduino SPI-Library

(micro)SD supports SPI

Voltage for FTDI (3.3 vs 5) important

Use chip sel if more than one SPI devices

SPI you write from the host to the target, then listen.

See various codes to initialize SD-card

http://academy.cba.mit.edu/classes/networking_communications/SD/hello.uSD.44.read.c

S

PI Arduino

https://gitlab.cba.mit.edu/pub/hello-world/nrf52/tree/master/modules/spi

OSI Layers

7: application (HTTP)

6: presentation (SSL), hvad kan ses

5: session (RPC)

4: transport (TCP, UDP), kontrol af hvad der går hvorhen

3: network (IP), hvordan man laver adresser

2: data link (MAC), hvem må tale

1: physical (PHY). Det fysiske media

single-ended, Differential (reducerer støj), powerline

Ethernet, standard modul

ISM = junk bands - designed for everything.

Modulation:

PCM: Pulse-Code Modulation

PPM: Pulse-Position Modulation

OOK: On-Off Keying

FSK: Frequency-Shift Keying

BPSK: Binary Phase-Shift Keying

QAM: Quadrature Amplitude Modulation

OFDM: Orthogonal Frequency-Division Multiplexing

FHSS: Frequency-Hopping Spread Spectrum

DSSS: Direct-Sequence Spread Spectrum

UWB: Ultra-WideBand

Networking:

IPv4 basis for the internet - er ved at blive erstattet af IPv6.

https://www.ietf.org/rfc/rfc0791.txt

Source and destination

UDP / TDP:

IP virker som en gadeadresse

UDP flytter en pakke til den rette application

TCP: Kan håndtere større pakker og splitte dem op

HTTP: er blot TCP over port 80.

Sockets

Man taler over internettet via socket

Node kan tale

OPEN OCD

Use a Raspberry Pi Zero a an JTAG Programmer

https://gitlab.cba.mit.edu/pub/hello-world/nrf52/tree/master#programming-with-openocd-and-raspberry-pi

ESP8266:

Module

Software: Don't build programmes on it - just use AT cammand set.

Uses bigger regulator - about an amp.

UPD: Talk through the FTDI - simple

TCP client: Getting a webpage

TCP server: ESP sender webpage til coputeren.

Kræver en den energy og kan være lidt ustabil.

MQTT Broker

Installing Mosquitto using homebrew with this command:

brew install mosquitto

Skimmed from the tutorial, found here:

https://mosquitto.org/api/files/mosquitto-h.html

mosquitto has been installed with a default configuration file.

You can make changes to the configuration by editing:

/usr/local/etc/mosquitto/mosquitto.conf

To have launchd start mosquitto now and restart at login:

brew services start mosquitto

Or, if you don't want/need a background service you can just run:

mosquitto -c /usr/local/etc/mosquitto/mosquitto.conf

results for ""

    No results matching ""