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