Home Lights Aboutlights Boarddesign Esp32 Esp Notes Everything Esp32 Midi Usb Notes Plan Platformio Espnow Jl... Upload Wled Food Cook Food Fish Food Science History Dad History History Life DateIdeas Life Words

Don't Look! I'm changing!

URL Copied

Slider Knobs -> Volume Hi Mid Low Stop/ Start W/ Display

Consider: OTA, Flash Defaults SPIFFS, Broad/Multi/Uni, Chip/Module/Board

Plan Part 2

  1. Only Admin may broadcast

  2. gatway sends to children

  3. children never message siblings

  4. only msg 1 relative per bc & prefer to send to gateway

  5. children deliver inbound messages to gateway

  6. gateway delivers data to admin... go to step 1...

undefined

userA -> gatewayA userB -> gatewayB userC -> gatewayC

gatewayA -> nodeA1 gatewayB -> nodeB1 gatewayC -> nodeC1

gatewayA -> nodeA2 gatewayB -> nodeB2 gatewayC -> nodeC2

gatewayA -> nodeA3 gatewayB -> nodeB3 gatewayC -> nodeC3

gatewayA -> gatewayB gatewayB -> gatewayA gatewayB -> gatewayC gatewayC -> gatewayB

nodeA3 -> nodeB1 nodeB1 -> nodeA3

nodeC3 -> nodeB3 nodeB3 -> nodeC3

pub/sub should allow you to act simply as a router or to extend the pub/sub by replicating and posting the message as well.

Command and satellite must share same channel.

Multi-Acess Frequency Hopping allows for a shared transmission medium

  1. 1Peer FF:FF:FF:FF -> Broadcast to all peers on ch -> esp32

  2. Set Peer Mac Addr -> Broadcast by sending to common mac addr -> ESP32

  3. Adhoc Addressing Layer

Frequency hoping, channels limit # conn, multi access method requires

How it works

ifUpdates->Broadcast onReception =>

  1. update State of leafnode values

  2. get rout node values

  3. subscriptionValues

Setup

  1. ConfigDeviceAP (mac=ssid, pass=1234, print-yay!)

  2. RegisterCallbacks (msgsnt,msgrcvd-write2pin)

  3. Init ESPNow(onMsgSnt, OnMsgRcvd): refers to step 2

Loop

  1. Scan4LeafNodes

  1. Manage Leaf Nodes

  1. Send Data - ESP

  2. If Command = XYZ

  1. OnBLERecieved: if leafnodes -> ESPNow Broadcast. Run Command

  2. ONESPRecieved: if BLE!connected:DoNothing. Else: if send="espname:donothing" else:"send2ble"

Config Device AP

if btmessage -> relay out if publicmsg -> if msg is leader: run cmd & broadcast. else: if in group do nothing

Partition Table

Includes root. values from different people + all current data to be fwded from leafs to rest

Group: Updated: Val

Leafid: Updated: Val

How MSG Works

Within body of a node with an ssid=espname... Body(rootnodessid, rootsentthis@, command)