//gpt trial 1 - All run on flames int cauldron = D4; int castle = D5; int camp = D7; int mortar = D6; unsigned long previousMillis = 0; const long interval = 100; // interval at which to update LEDs (in milliseconds) void setup() { pinMode(camp, OUTPUT); pinMode(cauldron, OUTPUT); pinMode(mortar, OUTPUT); pinMode(castle, OUTPUT); } void loop() { unsigned long currentMillis = millis(); // Update all LEDs simultaneously camp1(currentMillis); cauldron1(currentMillis); mortar1(currentMillis); castle1(currentMillis); } void camp1(unsigned long currentMillis) { static unsigned long previousCampMillis = 0; if (currentMillis - previousCampMillis >= interval) { previousCampMillis = currentMillis; analogWrite(camp, random(120) + 135); } } void cauldron1(unsigned long currentMillis) { static unsigned long previousCauldronMillis = 0; if (currentMillis - previousCauldronMillis >= interval) { previousCauldronMillis = currentMillis; analogWrite(cauldron, random(120) + 135); } } void mortar1(unsigned long currentMillis) { static unsigned long previousMortarMillis = 0; if (currentMillis - previousMortarMillis >= interval) { previousMortarMillis = currentMillis; analogWrite(mortar, random(255)); } } void castle1(unsigned long currentMillis) { static unsigned long previousCastleMillis = 0; if (currentMillis - previousCastleMillis >= interval) { previousCastleMillis = currentMillis; analogWrite(castle, random(255)); } }