{
  "Config": {
    "Build": {
      "Board": "esp32:esp32:m5stack_stickc:UploadSpeed=1500000,CPUFreq=240,FlashFreq=80,FlashMode=qio,FlashSize=4M,PartitionScheme=huge_app,DebugLevel=none,LoopCore=1,EventsCore=1,EraseFlash=none"
    }
  },
  "Units": [
    {
      "*": [
        {
          "Name": "Arduino",
          "Instance": {
            "Digital": {
              "*": [
                {
                  "+": "TArduinoCombinedTouchPullDownAnalogDigitalSPI0InterruptChannel"
                },
                {
                  "+": "TArduinoCombinedPullDownAnalogDigitalI2C0Channel"
                },
                {
                  "+": "TArduinoCombinedPullDownAnalogDigitalI2C0Channel"
                },
                {
                  "+": "TArduinoCombinedTouchPullDownAnalogDigitalSPI0InterruptChannel"
                },
                {
                  "+": "TArduinoESP32CombinedPullDownAnalogDigitalDACChannel"
                },
                {
                  "+": "TArduinoCombinedTouchPullDownAnalogDigitalInterruptChannel"
                }
              ]
            },
            "Modules": {
              "*": [
                {
                  "AccessPoint": {
                    "SSID": "",
                    "Password": ""
                  },
                  "ESPNow": {
                    "Elements": {
                      "*": [
                        {
                          "Encryption": {
                            "Key": {
                              "_Data": ""
                            }
                          },
                          "Name": "Device1",
                          "OutputPin": {
                            "SinkPins": [
                              {
                                "ID": "__OpenWireRootUnit__.SplitStructure1.InputPin"
                              }
                            ]
                          },
                          "MACAddress": {
                            "Octet5": 153,
                            "Octet1": 36,
                            "Octet3": 96,
                            "Octet4": 71,
                            "Octet6": 212,
                            "Octet2": 161
                          },
                          "+": "TArduino_ESPNow_Device"
                        }
                      ]
                    },
                    "PrimaryKey": {
                      "_Data": ""
                    }
                  },
                  "HostName": "",
                  "Ethernet": {
                    "HostName": ""
                  },
                  "+": "TArduinoESP32WiFiModule"
                },
                {
                  "+": "TM5StackAtomESP32ButtonModule"
                },
                {
                  "+": "TArduinoESP32_M5Stack_Atom_InfraredRemoteTransmitterModule"
                },
                {
                  "+": "TArduinoESP32_M5Stack_Atom_GroveModule"
                },
                {
                  "Elements": {
                    "*": [
                      {
                        "Name": "Fill Screen1",
                        "ClockInputPin": {
                          "SourcePins": [
                            {
                              "ID": "__OpenWireRootUnit__.IntegerMultiSource1.OutputPins._Pin0",
                              "Name": "__OpenWireRootUnit__.IntegerMultiSource1.OutputPins.Pin [0]"
                            }
                          ]
                        },
                        "+": "TArduinoColorGraphicsElementFillScreen"
                      },
                      {
                        "InitialValue": "",
                        "Name": "Text Field1",
                        "ClockInputPin": {
                          "SourcePins": [
                            {
                              "ID": "__OpenWireRootUnit__.IntegerMultiSource1.OutputPins._Pin2",
                              "Name": "__OpenWireRootUnit__.IntegerMultiSource1.OutputPins.Pin [2]"
                            }
                          ]
                        },
                        "X": 1,
                        "Color": 4278190335,
                        "Elements": {
                          "*": [
                            {
                              "Font": "Adafruit\\Picopixel",
                              "+": "TArduinoGraphicsTextElementFont"
                            }
                          ]
                        },
                        "InputPin": {
                          "SourcePin": {
                            "ID": "__OpenWireRootUnit__.IntegerMultiSource1.OutputPins._Pin1",
                            "Name": "__OpenWireRootUnit__.IntegerMultiSource1.OutputPins.Pin [1]"
                          }
                        },
                        "+": "TArduinoColorGraphicsElementTextFeld"
                      }
                    ]
                  },
                  "Orientation": "goRight",
                  "+": "TArduinoESP32_M5Stack_Atom_RGBMatrixLedModule"
                },
                {
                  "+": "TArduinoESP32_M5Stack_StickC_AccelerometerGyroscope"
                },
                {
                  "+": "TArduinoEEPROMModule"
                },
                {
                  "+": "TArduinoESP32ProcessorModule"
                },
                {
                  "DeviceName": "",
                  "+": "TArduinoESP32BluetoothLEModule"
                }
              ]
            },
            "Serial": {
              "*": [
                {
                  "+": "TArduinoHardwareSerial"
                }
              ]
            },
            "I2CChannels": {
              "*": [
                {
                  "+": "TArduinoESP32_Generic_I2C_Atom"
                },
                {
                  "+": "TArduinoESP32_Generic_I2C_1_Atom"
                }
              ]
            },
            "BoardType": "M5 Stack ATOM Matrix",
            "+": "TArduinoBoard"
          },
          "X": 1520,
          "Y": 256,
          "Type": "Component"
        },
        {
          "Name": "IntegerMultiSource1",
          "Instance": {
            "+": "TArduinoIntegerMultiSource",
            "InputPin": {
              "SourcePin": {
                "ID": "__OpenWireRootUnit__.UpDownCounter1.OutputPin"
              }
            },
            "OutputPins": {
              "Pins": [
                {
                  "Type": "ptSource",
                  "SinkPins": [
                    {
                      "ID": "__OpenWireRootUnit__.Arduino.Modules._Item4.Elements._Item0.ClockInputPin",
                      "Name": "__OpenWireRootUnit__.Arduino.Modules.RGB Matrix.Elements.Fill Screen.ClockInputPin"
                    }
                  ]
                },
                {
                  "Type": "ptSource",
                  "SinkPins": [
                    {
                      "ID": "__OpenWireRootUnit__.Arduino.Modules._Item4.Elements._Item1.InputPin",
                      "Name": "__OpenWireRootUnit__.Arduino.Modules.RGB Matrix.Elements.Text Field.InputPin"
                    }
                  ]
                },
                {
                  "Type": "ptSource",
                  "SinkPins": [
                    {
                      "ID": "__OpenWireRootUnit__.Arduino.Modules._Item4.Elements._Item1.ClockInputPin",
                      "Name": "__OpenWireRootUnit__.Arduino.Modules.RGB Matrix.Elements.Text Field.ClockInputPin"
                    }
                  ]
                }
              ],
              "Form": "__OpenWireRootUnit__",
              "Count": 3
            }
          },
          "X": 1200,
          "Y": 1264,
          "Type": "Component"
        },
        {
          "Name": "UpDownCounter1",
          "Instance": {
            "Min": {
              "Value": 0,
              "ReachedOutputPin": {
                "SinkPins": [
                  {
                    "ID": "__OpenWireRootUnit__.TFlipFlop1.ResetInputPin"
                  }
                ]
              },
              "RollOver": false
            },
            "InitialValue": 9,
            "Max": {
              "Value": 9,
              "RollOver": false
            },
            "OutputPin": {
              "SinkPins": [
                {
                  "ID": "__OpenWireRootUnit__.IntegerMultiSource1.InputPin"
                }
              ]
            },
            "DownInputPin": {
              "SourcePins": [
                {
                  "ID": "__OpenWireRootUnit__.PulseGenerator1.OutputPin"
                }
              ]
            },
            "ResetInputPin": {
              "SourcePins": [
                {
                  "ID": "__OpenWireRootUnit__.MultiSource1.OutputPins._Pin0",
                  "Name": "__OpenWireRootUnit__.MultiSource1.OutputPins.Pin [0]"
                }
              ]
            },
            "+": "TArduinoUpDownCounter"
          },
          "X": 1024,
          "Y": 1200,
          "Type": "Component"
        },
        {
          "Name": "PulseGenerator1",
          "Instance": {
            "OutputPin": {
              "SinkPins": [
                {
                  "ID": "__OpenWireRootUnit__.UpDownCounter1.DownInputPin"
                }
              ]
            },
            "@": [
              {
                "SourcePin": {
                  "ID": "__OpenWireRootUnit__.TFlipFlop1.OutputPin"
                },
                "@": "Enabled",
                "Component": "PulseGenerator1",
                "PinName": "Enabled",
                "+": "TOWBooleanSinkPinBinding"
              }
            ],
            "+": "TArduinoPulseGenerator"
          },
          "X": 848,
          "Y": 1216,
          "Type": "Component"
        },
        {
          "Name": "SplitStructure1",
          "Instance": {
            "Elements": {
              "*": [
                {
                  "Name": "Digital1",
                  "OutputPin": {
                    "SinkPins": [
                      {
                        "ID": "__OpenWireRootUnit__.MultiSource1.InputPin"
                      }
                    ]
                  },
                  "+": "TArduinoDigitalSplitStructureElement"
                }
              ]
            },
            "InputPin": {
              "SourcePin": {
                "ID": "__OpenWireRootUnit__.Arduino.Modules._Item0.ESPNow.Elements._Item0.OutputPin",
                "Name": "__OpenWireRootUnit__.Arduino.Modules.WiFi.ESPNow.Elements.Device (00-00-00-00-00-00).OutputPin"
              }
            },
            "+": "TArduinoSplitStructure"
          },
          "X": 256,
          "Y": 1056,
          "Type": "Component"
        },
        {
          "Name": "TFlipFlop1",
          "Instance": {
            "+": "TArduinoTFlipFlop",
            "ResetInputPin": {
              "SourcePins": [
                {
                  "ID": "__OpenWireRootUnit__.UpDownCounter1.Min.ReachedOutputPin"
                }
              ]
            },
            "OutputPin": {
              "SinkPins": [
                {
                  "ID": "__OpenWireRootUnit__.PulseGenerator1.EnabledInputPin"
                }
              ]
            },
            "SetInputPin": {
              "SourcePins": [
                {
                  "ID": "__OpenWireRootUnit__.MultiSource1.OutputPins._Pin1",
                  "Name": "__OpenWireRootUnit__.MultiSource1.OutputPins.Pin [1]"
                }
              ]
            }
          },
          "X": 624,
          "Y": 1216,
          "Type": "Component"
        },
        {
          "Name": "MultiSource1",
          "Instance": {
            "+": "TArduinoDigitalMultiSource",
            "InputPin": {
              "SourcePin": {
                "ID": "__OpenWireRootUnit__.SplitStructure1.Elements._Item0.OutputPin",
                "Name": "__OpenWireRootUnit__.SplitStructure1.Elements.Digital.OutputPin"
              }
            },
            "OutputPins": {
              "Pins": [
                {
                  "Type": "ptSource",
                  "SinkPins": [
                    {
                      "ID": "__OpenWireRootUnit__.UpDownCounter1.ResetInputPin"
                    }
                  ]
                },
                {
                  "Type": "ptSource",
                  "SinkPins": [
                    {
                      "ID": "__OpenWireRootUnit__.TFlipFlop1.SetInputPin"
                    }
                  ]
                }
              ],
              "Form": "__OpenWireRootUnit__",
              "Count": 2
            }
          },
          "X": 432,
          "Y": 1088,
          "Type": "Component"
        }
      ],
      "Name": "__OpenWireRootUnit__",
      "Type": "Diagram"
    }
  ],
  "Version": "2",
  "Content": "OpenWire Diagram",
  "Product": "Visuino Pro - Visual Arduino Programming"
}
