{
  "Config": {
    "Build": {
      "Board": "esp32:esp32:esp32:JTAGAdapter=default,PSRAM=disabled,PartitionScheme=default,CPUFreq=240,FlashMode=qio,FlashFreq=80,FlashSize=4M,UploadSpeed=921600,LoopCore=1,EventsCore=1,DebugLevel=none,EraseFlash=none"
    }
  },
  "Version": "2",
  "Product": "Visuino Pro - Visual Arduino Programming",
  "Content": "OpenWire Diagram",
  "Units": [
    {
      "Type": "Diagram",
      "Name": "__OpenWireRootUnit__",
      "*": [
        {
          "X": 1312,
          "Name": "Arduino",
          "Instance": {
            "I2SChannels": {
              "*": [
                {
                  "+": "TArduino_ESP32_I2SPDM"
                },
                {
                  "+": "TArduino_ESP32_I2SPDM"
                }
              ]
            },
            "Serial": {
              "*": [
                {
                  "+": "TArduinoHardwareSerial"
                },
                {
                  "+": "TArduinoESP32DefinedPinsSerial1"
                },
                {
                  "+": "TArduinoESP32DefinedPinsSerial2"
                }
              ]
            },
            "+": "TArduinoBoard",
            "Modules": {
              "*": [
                {
                  "Ethernet": {
                    "HostName": ""
                  },
                  "HostName": "",
                  "+": "TArduinoESP32WiFiModule",
                  "ESPNow": {
                    "PrimaryKey": {
                      "_Data": ""
                    },
                    "Elements": {
                      "*": [
                        {
                          "Name": "Device1",
                          "Encryption": {
                            "Key": {
                              "_Data": ""
                            }
                          },
                          "+": "TArduino_ESPNow_Device",
                          "OutputPin": {
                            "SinkPins": [
                              {
                                "ID": "__OpenWireRootUnit__.SplitStructure1.InputPin"
                              }
                            ]
                          },
                          "Sendiing": {
                            "InputPin": {
                              "SourcePins": [
                                {
                                  "ID": "__OpenWireRootUnit__.MakeStructure1.OutputPin"
                                }
                              ]
                            }
                          },
                          "MACAddress": {
                            "Octet5": 90,
                            "Octet6": 240,
                            "Octet1": 36,
                            "Octet3": 171,
                            "Octet2": 98,
                            "Octet4": 220
                          }
                        }
                      ]
                    }
                  },
                  "AccessPoint": {
                    "SSID": "",
                    "Password": ""
                  }
                },
                {
                  "OutputPins": {
                    "Form": "__OpenWireRootUnit__",
                    "Pins": [
                      {
                        "Type": "ptSource",
                        "SinkPins": [
                          {
                            "Name": "__OpenWireRootUnit__.MakeStructure1.Elements.Digital.InputPin",
                            "ID": "__OpenWireRootUnit__.MakeStructure1.Elements._Item1.InputPin"
                          }
                        ]
                      },
                      {
                        "Type": "ptSource",
                        "SinkPins": [
                          {
                            "Name": "__OpenWireRootUnit__.MakeStructure1.Elements.Digital.InputPin",
                            "ID": "__OpenWireRootUnit__.MakeStructure1.Elements._Item0.InputPin"
                          }
                        ]
                      }
                    ]
                  },
                  "+": "TTTGOTDisplayESP32ButtonsModule"
                },
                {
                  "Orientation": "goRight",
                  "Elements": {
                    "*": [
                      {
                        "ClockInputPin": {
                          "SourcePins": [
                            {
                              "Name": "__OpenWireRootUnit__.ColorMultiSource1.OutputPins.Pin [1]",
                              "ID": "__OpenWireRootUnit__.ColorMultiSource1.OutputPins._Pin1"
                            }
                          ]
                        },
                        "Height": 50,
                        "+": "TArduinoColorGraphicsDrawRoundRectangle",
                        "@": [
                          {
                            "PinName": "Modules.Item [ 2 ].Elements.Item [ 0 ].FillColor",
                            "@": "FillColor",
                            "+": "TOWAlphaColorSinkPinBinding",
                            "SourcePin": {
                              "Name": "__OpenWireRootUnit__.ColorMultiSource1.OutputPins.Pin [0]",
                              "ID": "__OpenWireRootUnit__.ColorMultiSource1.OutputPins._Pin0"
                            },
                            "Component": "Arduino"
                          }
                        ],
                        "X": 15,
                        "Name": "Draw Round Rectangle1",
                        "Color": 4278190335,
                        "Width": 200,
                        "Y": 5
                      },
                      {
                        "ClockInputPin": {
                          "SourcePins": [
                            {
                              "Name": "__OpenWireRootUnit__.ColorMultiSource2.OutputPins.Pin [1]",
                              "ID": "__OpenWireRootUnit__.ColorMultiSource2.OutputPins._Pin1"
                            }
                          ]
                        },
                        "Height": 50,
                        "+": "TArduinoColorGraphicsDrawRoundRectangle",
                        "@": [
                          {
                            "PinName": "Modules[ 2 ].Elements[ 1 ].Fill Color",
                            "@": "FillColor",
                            "+": "TOWAlphaColorSinkPinBinding",
                            "SourcePin": {
                              "Name": "__OpenWireRootUnit__.ColorMultiSource2.OutputPins.Pin [0]",
                              "ID": "__OpenWireRootUnit__.ColorMultiSource2.OutputPins._Pin0"
                            },
                            "Component": "Arduino"
                          }
                        ],
                        "X": 15,
                        "Name": "Draw Round Rectangle2",
                        "Color": 4278190335,
                        "Width": 200,
                        "Y": 65
                      }
                    ]
                  },
                  "+": "TTTGOTDisplayESP32DisplayModule"
                },
                {
                  "+": "TArduinoEEPROMModule"
                },
                {
                  "+": "TArduinoESP32ProcessorModule"
                },
                {
                  "+": "TArduinoESP32HallSensorModule"
                },
                {
                  "DeviceName": "",
                  "+": "TArduinoESP32BluetoothLEModule"
                }
              ]
            },
            "I2CChannels": {
              "*": [
                {
                  "+": "TArduinoESP32_TTGO_TS_I2C"
                },
                {
                  "+": "TArduinoESP32_Generic_I2C_2"
                }
              ]
            },
            "Digital": {
              "*": [
                {
                  "+": "TArduinoCombinedTouchPullDownAnalogDigitalInterruptChannel"
                },
                {
                  "+": "TArduinoCombinedTouchPullDownAnalogDigitalInterruptChannel"
                },
                {
                  "+": "TArduinoCombinedTouchPullDownAnalogDigitalInterruptChannel"
                },
                {
                  "+": "TArduinoCombinedTouchPullDownAnalogDigitalInterruptChannel"
                },
                {
                  "+": "TArduinoCombinedPullDownAnalogDigitalChannel"
                },
                {
                  "+": "TArduinoCombinedPullDownAnalogDigitalChannel"
                },
                {
                  "+": "TArduinoCombinedPullDownAnalogDigitalChannel"
                },
                {
                  "+": "TArduinoESP32CombinedPullDownAnalogDigitalDACChannel"
                },
                {
                  "+": "TArduinoESP32CombinedPullDownAnalogDigitalDACChannel"
                },
                {
                  "+": "TArduinoCombinedTouchPullDownAnalogDigitalInterruptChannel"
                },
                {
                  "+": "TArduinoCombinedTouchPullDownAnalogDigitalInterruptChannel"
                },
                {
                  "+": "TArduinoCombinedTouchPullDownAnalogDigitalInterruptChannel"
                },
                {
                  "+": "TArduinoPullDownTouchAnalogInputOnlyChannel"
                },
                {
                  "+": "TArduinoPullDownTouchAnalogInputOnlyChannel"
                },
                {
                  "+": "TArduinoPullDownTouchAnalogInputOnlyChannel"
                },
                {
                  "+": "TArduinoPullDownTouchAnalogInputOnlyChannel"
                }
              ]
            },
            "SPIChannels": {
              "*": [
                {
                  "+": "TArduinoESP32_TTGO_TDisplay_SPI0"
                },
                {
                  "+": "TArduinoESP32_TTGO_TDisplay_SPI1"
                }
              ]
            },
            "BoardType": "TTGO T-Display ESP32"
          },
          "*": [],
          "Type": "Component",
          "Y": 256
        },
        {
          "X": 688,
          "Name": "TFlipFlop1",
          "Instance": {
            "ClockInputPin": {
              "SourcePins": [
                {
                  "ID": "__OpenWireRootUnit__.Button1.OutputPin"
                }
              ]
            },
            "OutputPin": {
              "SinkPins": [
                {
                  "ID": "__OpenWireRootUnit__.DigitalToColor1.InputPin"
                }
              ]
            },
            "+": "TArduinoTFlipFlop"
          },
          "*": [],
          "Type": "Component",
          "Y": 912
        },
        {
          "X": 864,
          "Name": "DigitalToColor1",
          "Instance": {
            "TrueValue": 32768,
            "InputPin": {
              "SourcePin": {
                "ID": "__OpenWireRootUnit__.TFlipFlop1.OutputPin"
              }
            },
            "+": "TArduinoDigitalToColor",
            "OutputPin": {
              "SinkPins": [
                {
                  "ID": "__OpenWireRootUnit__.ColorMultiSource1.InputPin"
                }
              ]
            }
          },
          "*": [],
          "Type": "Component",
          "Y": 928
        },
        {
          "X": 688,
          "Name": "TFlipFlop2",
          "Instance": {
            "ClockInputPin": {
              "SourcePins": [
                {
                  "ID": "__OpenWireRootUnit__.Button2.OutputPin"
                }
              ]
            },
            "OutputPin": {
              "SinkPins": [
                {
                  "ID": "__OpenWireRootUnit__.DigitalToColor2.InputPin"
                }
              ]
            },
            "+": "TArduinoTFlipFlop"
          },
          "*": [],
          "Type": "Component",
          "Y": 1024
        },
        {
          "X": 880,
          "Name": "DigitalToColor2",
          "Instance": {
            "TrueValue": 255,
            "InputPin": {
              "SourcePin": {
                "ID": "__OpenWireRootUnit__.TFlipFlop2.OutputPin"
              }
            },
            "+": "TArduinoDigitalToColor",
            "OutputPin": {
              "SinkPins": [
                {
                  "ID": "__OpenWireRootUnit__.ColorMultiSource2.InputPin"
                }
              ]
            }
          },
          "*": [],
          "Type": "Component",
          "Y": 1040
        },
        {
          "X": 464,
          "Name": "Button1",
          "Instance": {
            "OutputPin": {
              "SinkPins": [
                {
                  "ID": "__OpenWireRootUnit__.TFlipFlop1.ClockInputPin"
                }
              ]
            },
            "InputPin": {
              "SourcePin": {
                "Name": "__OpenWireRootUnit__.SplitStructure1.Elements.Digital.OutputPin",
                "ID": "__OpenWireRootUnit__.SplitStructure1.Elements._Item0.OutputPin"
              }
            },
            "+": "TArduinoButton"
          },
          "*": [],
          "Type": "Component",
          "Y": 928
        },
        {
          "X": 464,
          "Name": "Button2",
          "Instance": {
            "OutputPin": {
              "SinkPins": [
                {
                  "ID": "__OpenWireRootUnit__.TFlipFlop2.ClockInputPin"
                }
              ]
            },
            "InputPin": {
              "SourcePin": {
                "Name": "__OpenWireRootUnit__.SplitStructure1.Elements.Digital.OutputPin",
                "ID": "__OpenWireRootUnit__.SplitStructure1.Elements._Item1.OutputPin"
              }
            },
            "+": "TArduinoButton"
          },
          "*": [],
          "Type": "Component",
          "Y": 1008
        },
        {
          "X": 256,
          "Name": "SplitStructure1",
          "Instance": {
            "Elements": {
              "*": [
                {
                  "Name": "Digital1",
                  "OutputPin": {
                    "SinkPins": [
                      {
                        "ID": "__OpenWireRootUnit__.Button1.InputPin"
                      }
                    ]
                  },
                  "+": "TArduinoDigitalSplitStructureElement"
                },
                {
                  "Name": "Digital2",
                  "OutputPin": {
                    "SinkPins": [
                      {
                        "ID": "__OpenWireRootUnit__.Button2.InputPin"
                      }
                    ]
                  },
                  "+": "TArduinoDigitalSplitStructureElement"
                }
              ]
            },
            "InputPin": {
              "SourcePin": {
                "Name": "__OpenWireRootUnit__.Arduino.Modules.WiFi.ESPNow.Elements.Device (00-00-00-00-00-00).OutputPin",
                "ID": "__OpenWireRootUnit__.Arduino.Modules._Item0.ESPNow.Elements._Item0.OutputPin"
              }
            },
            "+": "TArduinoSplitStructure"
          },
          "*": [],
          "Type": "Component",
          "Y": 928
        },
        {
          "X": 992,
          "Name": "MakeStructure1",
          "Instance": {
            "Elements": {
              "*": [
                {
                  "Name": "Digital1",
                  "InputPin": {
                    "SourcePin": {
                      "Name": "__OpenWireRootUnit__.Arduino.Modules.Buttons.OutputPins.Right",
                      "ID": "__OpenWireRootUnit__.Arduino.Modules._Item1.OutputPins._Pin1"
                    }
                  },
                  "+": "TArduinoDigitalMakeStructureElement"
                },
                {
                  "Name": "Digital2",
                  "InputPin": {
                    "SourcePin": {
                      "Name": "__OpenWireRootUnit__.Arduino.Modules.Buttons.OutputPins.Left",
                      "ID": "__OpenWireRootUnit__.Arduino.Modules._Item1.OutputPins._Pin0"
                    }
                  },
                  "+": "TArduinoDigitalMakeStructureElement"
                }
              ]
            },
            "OutputPin": {
              "SinkPins": [
                {
                  "Name": "__OpenWireRootUnit__.Arduino.Modules.WiFi.ESPNow.Elements.Device (00-00-00-00-00-00).Sendiing.InputPin",
                  "ID": "__OpenWireRootUnit__.Arduino.Modules._Item0.ESPNow.Elements._Item0.Sendiing.InputPin"
                }
              ]
            },
            "+": "TArduinoMakeStructure"
          },
          "*": [],
          "Type": "Component",
          "Y": 352
        },
        {
          "X": 1040,
          "Name": "ColorMultiSource1",
          "Instance": {
            "OutputPins": {
              "Count": 2,
              "Form": "__OpenWireRootUnit__",
              "Pins": [
                {
                  "Type": "ptSource",
                  "SinkPins": [
                    {
                      "Name": "__OpenWireRootUnit__.Arduino.Modules.Item [ 2 ].Elements.Item [ 0 ].FillColor",
                      "ID": "__OpenWireRootUnit__.Arduino.Modules.*._2.Elements.*._0.FillColorInputPin"
                    }
                  ]
                },
                {
                  "Type": "ptSource",
                  "SinkPins": [
                    {
                      "Name": "__OpenWireRootUnit__.Arduino.Modules.Display.Elements.Draw Round Rectangle.ClockInputPin",
                      "ID": "__OpenWireRootUnit__.Arduino.Modules._Item2.Elements._Item0.ClockInputPin"
                    }
                  ]
                }
              ]
            },
            "InputPin": {
              "SourcePin": {
                "ID": "__OpenWireRootUnit__.DigitalToColor1.OutputPin"
              }
            },
            "+": "TArduinoColorMultiSource"
          },
          "*": [],
          "Type": "Component",
          "Y": 928
        },
        {
          "X": 1040,
          "Name": "ColorMultiSource2",
          "Instance": {
            "OutputPins": {
              "Count": 2,
              "Form": "__OpenWireRootUnit__",
              "Pins": [
                {
                  "Type": "ptSource",
                  "SinkPins": [
                    {
                      "Name": "__OpenWireRootUnit__.Arduino.Modules[ 2 ].Elements[ 1 ].Fill Color.FillColor",
                      "ID": "__OpenWireRootUnit__.Arduino.Modules.*._2.Elements.*._1.FillColorInputPin"
                    }
                  ]
                },
                {
                  "Type": "ptSource",
                  "SinkPins": [
                    {
                      "Name": "__OpenWireRootUnit__.Arduino.Modules.Display.Elements.Draw Round Rectangle.ClockInputPin",
                      "ID": "__OpenWireRootUnit__.Arduino.Modules._Item2.Elements._Item1.ClockInputPin"
                    }
                  ]
                }
              ]
            },
            "InputPin": {
              "SourcePin": {
                "ID": "__OpenWireRootUnit__.DigitalToColor2.OutputPin"
              }
            },
            "+": "TArduinoColorMultiSource"
          },
          "*": [],
          "Type": "Component",
          "Y": 1040
        }
      ]
    }
  ]
}
