gitextract_31yzf8ck/ ├── .github/ │ └── workflows/ │ └── arduino_ci.yml ├── .gitignore ├── .project ├── 49-stlinkv2.rules ├── 99-opencr-cdc.rules ├── LICENSE ├── README.md ├── arduino/ │ ├── opencr_arduino/ │ │ ├── opencr/ │ │ │ ├── .gitignore │ │ │ ├── boards.txt │ │ │ ├── cores/ │ │ │ │ └── arduino/ │ │ │ │ ├── Arduino.h │ │ │ │ ├── Client.h │ │ │ │ ├── HardwareSerial.h │ │ │ │ ├── HardwareTimer.cpp │ │ │ │ ├── HardwareTimer.h │ │ │ │ ├── IPAddress.cpp │ │ │ │ ├── IPAddress.h │ │ │ │ ├── Print.cpp │ │ │ │ ├── Print.h │ │ │ │ ├── Printable.h │ │ │ │ ├── Reset.h │ │ │ │ ├── RingBuffer.cpp │ │ │ │ ├── RingBuffer.h │ │ │ │ ├── Server.h │ │ │ │ ├── Stream.cpp │ │ │ │ ├── Stream.h │ │ │ │ ├── Tone.cpp │ │ │ │ ├── Tone.h │ │ │ │ ├── UARTClass.cpp │ │ │ │ ├── UARTClass.h │ │ │ │ ├── USBSerial.cpp │ │ │ │ ├── USBSerial.h │ │ │ │ ├── Udp.h │ │ │ │ ├── WCharacter.h │ │ │ │ ├── WInterrupts.c │ │ │ │ ├── WInterrupts.h │ │ │ │ ├── WMath.cpp │ │ │ │ ├── WMath.h │ │ │ │ ├── WString.cpp │ │ │ │ ├── WString.h │ │ │ │ ├── avr/ │ │ │ │ │ ├── dtostrf.c │ │ │ │ │ ├── dtostrf.h │ │ │ │ │ ├── interrupt.h │ │ │ │ │ └── pgmspace.h │ │ │ │ ├── binary.h │ │ │ │ ├── digitalWriteFast.h │ │ │ │ ├── itoa.c │ │ │ │ ├── itoa.h │ │ │ │ ├── new.cpp │ │ │ │ ├── syscalls.h │ │ │ │ ├── wiring.c │ │ │ │ ├── wiring.h │ │ │ │ ├── wiring_analog.c │ │ │ │ ├── wiring_analog.h │ │ │ │ ├── wiring_constants.h │ │ │ │ ├── wiring_digital.c │ │ │ │ ├── wiring_digital.h │ │ │ │ ├── wiring_private.h │ │ │ │ ├── wiring_pulse.c │ │ │ │ ├── wiring_pulse.h │ │ │ │ ├── wiring_shift.c │ │ │ │ ├── wiring_shift.h │ │ │ │ └── yield.cpp │ │ │ ├── keywords.txt │ │ │ ├── libraries/ │ │ │ │ ├── Adafruit_GFX_Library/ │ │ │ │ │ ├── Adafruit_GFX.cpp │ │ │ │ │ ├── Adafruit_GFX.h │ │ │ │ │ ├── Adafruit_SPITFT.cpp │ │ │ │ │ ├── Adafruit_SPITFT.h │ │ │ │ │ ├── Adafruit_SPITFT_Macros.h │ │ │ │ │ ├── Fonts/ │ │ │ │ │ │ ├── FreeMono12pt7b.h │ │ │ │ │ │ ├── FreeMono18pt7b.h │ │ │ │ │ │ ├── FreeMono24pt7b.h │ │ │ │ │ │ ├── FreeMono9pt7b.h │ │ │ │ │ │ ├── FreeMonoBold12pt7b.h │ │ │ │ │ │ ├── FreeMonoBold18pt7b.h │ │ │ │ │ │ ├── FreeMonoBold24pt7b.h │ │ │ │ │ │ ├── FreeMonoBold9pt7b.h │ │ │ │ │ │ ├── FreeMonoBoldOblique12pt7b.h │ │ │ │ │ │ ├── FreeMonoBoldOblique18pt7b.h │ │ │ │ │ │ ├── FreeMonoBoldOblique24pt7b.h │ │ │ │ │ │ ├── FreeMonoBoldOblique9pt7b.h │ │ │ │ │ │ ├── FreeMonoOblique12pt7b.h │ │ │ │ │ │ ├── FreeMonoOblique18pt7b.h │ │ │ │ │ │ ├── FreeMonoOblique24pt7b.h │ │ │ │ │ │ ├── FreeMonoOblique9pt7b.h │ │ │ │ │ │ ├── FreeSans12pt7b.h │ │ │ │ │ │ ├── FreeSans18pt7b.h │ │ │ │ │ │ ├── FreeSans24pt7b.h │ │ │ │ │ │ ├── FreeSans9pt7b.h │ │ │ │ │ │ ├── FreeSansBold12pt7b.h │ │ │ │ │ │ ├── FreeSansBold18pt7b.h │ │ │ │ │ │ ├── FreeSansBold24pt7b.h │ │ │ │ │ │ ├── FreeSansBold9pt7b.h │ │ │ │ │ │ ├── FreeSansBoldOblique12pt7b.h │ │ │ │ │ │ ├── FreeSansBoldOblique18pt7b.h │ │ │ │ │ │ ├── FreeSansBoldOblique24pt7b.h │ │ │ │ │ │ ├── FreeSansBoldOblique9pt7b.h │ │ │ │ │ │ ├── FreeSansOblique12pt7b.h │ │ │ │ │ │ ├── FreeSansOblique18pt7b.h │ │ │ │ │ │ ├── FreeSansOblique24pt7b.h │ │ │ │ │ │ ├── FreeSansOblique9pt7b.h │ │ │ │ │ │ ├── FreeSerif12pt7b.h │ │ │ │ │ │ ├── FreeSerif18pt7b.h │ │ │ │ │ │ ├── FreeSerif24pt7b.h │ │ │ │ │ │ ├── FreeSerif9pt7b.h │ │ │ │ │ │ ├── FreeSerifBold12pt7b.h │ │ │ │ │ │ ├── FreeSerifBold18pt7b.h │ │ │ │ │ │ ├── FreeSerifBold24pt7b.h │ │ │ │ │ │ ├── FreeSerifBold9pt7b.h │ │ │ │ │ │ ├── FreeSerifBoldItalic12pt7b.h │ │ │ │ │ │ ├── FreeSerifBoldItalic18pt7b.h │ │ │ │ │ │ ├── FreeSerifBoldItalic24pt7b.h │ │ │ │ │ │ ├── FreeSerifBoldItalic9pt7b.h │ │ │ │ │ │ ├── FreeSerifItalic12pt7b.h │ │ │ │ │ │ ├── FreeSerifItalic18pt7b.h │ │ │ │ │ │ ├── FreeSerifItalic24pt7b.h │ │ │ │ │ │ ├── FreeSerifItalic9pt7b.h │ │ │ │ │ │ ├── Org_01.h │ │ │ │ │ │ ├── Picopixel.h │ │ │ │ │ │ ├── Tiny3x3a2pt7b │ │ │ │ │ │ └── TomThumb.h │ │ │ │ │ ├── README.md │ │ │ │ │ ├── fontconvert/ │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ ├── fontconvert.c │ │ │ │ │ │ ├── fontconvert_win.md │ │ │ │ │ │ └── makefonts.sh │ │ │ │ │ ├── gfxfont.h │ │ │ │ │ ├── glcdfont.c │ │ │ │ │ ├── library.properties │ │ │ │ │ └── license.txt │ │ │ │ ├── CAN/ │ │ │ │ │ ├── CAN.cpp │ │ │ │ │ └── CAN.h │ │ │ │ ├── DynamixelSDK/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── include/ │ │ │ │ │ │ └── dynamixel_sdk/ │ │ │ │ │ │ ├── dynamixel_sdk.h │ │ │ │ │ │ ├── group_bulk_read.h │ │ │ │ │ │ ├── group_bulk_write.h │ │ │ │ │ │ ├── group_sync_read.h │ │ │ │ │ │ ├── group_sync_write.h │ │ │ │ │ │ ├── packet_handler.h │ │ │ │ │ │ ├── port_handler.h │ │ │ │ │ │ ├── port_handler_arduino.h │ │ │ │ │ │ ├── port_handler_linux.h │ │ │ │ │ │ ├── port_handler_mac.h │ │ │ │ │ │ ├── port_handler_windows.h │ │ │ │ │ │ ├── protocol1_packet_handler.h │ │ │ │ │ │ └── protocol2_packet_handler.h │ │ │ │ │ ├── keywords.txt │ │ │ │ │ ├── library.properties │ │ │ │ │ └── src/ │ │ │ │ │ ├── DynamixelSDK.h │ │ │ │ │ └── dynamixel_sdk/ │ │ │ │ │ ├── group_bulk_read.cpp │ │ │ │ │ ├── group_bulk_write.cpp │ │ │ │ │ ├── group_sync_read.cpp │ │ │ │ │ ├── group_sync_write.cpp │ │ │ │ │ ├── packet_handler.cpp │ │ │ │ │ ├── port_handler.cpp │ │ │ │ │ ├── port_handler_arduino.cpp │ │ │ │ │ ├── port_handler_linux.cpp │ │ │ │ │ ├── port_handler_mac.cpp │ │ │ │ │ ├── port_handler_windows.cpp │ │ │ │ │ ├── protocol1_packet_handler.cpp │ │ │ │ │ └── protocol2_packet_handler.cpp │ │ │ │ ├── DynamixelWorkbench/ │ │ │ │ │ ├── include/ │ │ │ │ │ │ └── dynamixel_workbench_toolbox/ │ │ │ │ │ │ ├── dynamixel_driver.h │ │ │ │ │ │ ├── dynamixel_item.h │ │ │ │ │ │ ├── dynamixel_tool.h │ │ │ │ │ │ └── dynamixel_workbench.h │ │ │ │ │ ├── keywords.txt │ │ │ │ │ ├── library.properties │ │ │ │ │ └── src/ │ │ │ │ │ ├── DynamixelWorkbench.h │ │ │ │ │ └── dynamixel_workbench_toolbox/ │ │ │ │ │ ├── dynamixel_driver.cpp │ │ │ │ │ ├── dynamixel_item.cpp │ │ │ │ │ ├── dynamixel_tool.cpp │ │ │ │ │ └── dynamixel_workbench.cpp │ │ │ │ ├── EEPROM/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── keywords.txt │ │ │ │ │ ├── library.properties │ │ │ │ │ └── src/ │ │ │ │ │ └── EEPROM.h │ │ │ │ ├── Eigen331/ │ │ │ │ │ ├── library.properties │ │ │ │ │ └── src/ │ │ │ │ │ ├── Eigen/ │ │ │ │ │ │ ├── CMakeLists.txt │ │ │ │ │ │ ├── Cholesky │ │ │ │ │ │ ├── CholmodSupport │ │ │ │ │ │ ├── Core │ │ │ │ │ │ ├── Dense │ │ │ │ │ │ ├── Eigen │ │ │ │ │ │ ├── Eigenvalues │ │ │ │ │ │ ├── Geometry │ │ │ │ │ │ ├── Householder │ │ │ │ │ │ ├── IterativeLinearSolvers │ │ │ │ │ │ ├── Jacobi │ │ │ │ │ │ ├── LU │ │ │ │ │ │ ├── MetisSupport │ │ │ │ │ │ ├── OrderingMethods │ │ │ │ │ │ ├── PaStiXSupport │ │ │ │ │ │ ├── PardisoSupport │ │ │ │ │ │ ├── QR │ │ │ │ │ │ ├── QtAlignedMalloc │ │ │ │ │ │ ├── SPQRSupport │ │ │ │ │ │ ├── SVD │ │ │ │ │ │ ├── Sparse │ │ │ │ │ │ ├── SparseCholesky │ │ │ │ │ │ ├── SparseCore │ │ │ │ │ │ ├── SparseLU │ │ │ │ │ │ ├── SparseQR │ │ │ │ │ │ ├── StdDeque │ │ │ │ │ │ ├── StdList │ │ │ │ │ │ ├── StdVector │ │ │ │ │ │ ├── SuperLUSupport │ │ │ │ │ │ ├── UmfPackSupport │ │ │ │ │ │ └── src/ │ │ │ │ │ │ ├── Cholesky/ │ │ │ │ │ │ │ ├── LDLT.h │ │ │ │ │ │ │ ├── LLT.h │ │ │ │ │ │ │ └── LLT_LAPACKE.h │ │ │ │ │ │ ├── CholmodSupport/ │ │ │ │ │ │ │ └── CholmodSupport.h │ │ │ │ │ │ ├── Core/ │ │ │ │ │ │ │ ├── Array.h │ │ │ │ │ │ │ ├── ArrayBase.h │ │ │ │ │ │ │ ├── ArrayWrapper.h │ │ │ │ │ │ │ ├── Assign.h │ │ │ │ │ │ │ ├── AssignEvaluator.h │ │ │ │ │ │ │ ├── Assign_MKL.h │ │ │ │ │ │ │ ├── BandMatrix.h │ │ │ │ │ │ │ ├── Block.h │ │ │ │ │ │ │ ├── BooleanRedux.h │ │ │ │ │ │ │ ├── CommaInitializer.h │ │ │ │ │ │ │ ├── ConditionEstimator.h │ │ │ │ │ │ │ ├── CoreEvaluators.h │ │ │ │ │ │ │ ├── CoreIterators.h │ │ │ │ │ │ │ ├── CwiseBinaryOp.h │ │ │ │ │ │ │ ├── CwiseNullaryOp.h │ │ │ │ │ │ │ ├── CwiseTernaryOp.h │ │ │ │ │ │ │ ├── CwiseUnaryOp.h │ │ │ │ │ │ │ ├── CwiseUnaryView.h │ │ │ │ │ │ │ ├── DenseBase.h │ │ │ │ │ │ │ ├── DenseCoeffsBase.h │ │ │ │ │ │ │ ├── DenseStorage.h │ │ │ │ │ │ │ ├── Diagonal.h │ │ │ │ │ │ │ ├── DiagonalMatrix.h │ │ │ │ │ │ │ ├── DiagonalProduct.h │ │ │ │ │ │ │ ├── Dot.h │ │ │ │ │ │ │ ├── EigenBase.h │ │ │ │ │ │ │ ├── ForceAlignedAccess.h │ │ │ │ │ │ │ ├── Fuzzy.h │ │ │ │ │ │ │ ├── GeneralProduct.h │ │ │ │ │ │ │ ├── GenericPacketMath.h │ │ │ │ │ │ │ ├── GlobalFunctions.h │ │ │ │ │ │ │ ├── IO.h │ │ │ │ │ │ │ ├── Inverse.h │ │ │ │ │ │ │ ├── Map.h │ │ │ │ │ │ │ ├── MapBase.h │ │ │ │ │ │ │ ├── MathFunctions.h │ │ │ │ │ │ │ ├── MathFunctionsImpl.h │ │ │ │ │ │ │ ├── Matrix.h │ │ │ │ │ │ │ ├── MatrixBase.h │ │ │ │ │ │ │ ├── NestByValue.h │ │ │ │ │ │ │ ├── NoAlias.h │ │ │ │ │ │ │ ├── NumTraits.h │ │ │ │ │ │ │ ├── PermutationMatrix.h │ │ │ │ │ │ │ ├── PlainObjectBase.h │ │ │ │ │ │ │ ├── Product.h │ │ │ │ │ │ │ ├── ProductEvaluators.h │ │ │ │ │ │ │ ├── Random.h │ │ │ │ │ │ │ ├── Redux.h │ │ │ │ │ │ │ ├── Ref.h │ │ │ │ │ │ │ ├── Replicate.h │ │ │ │ │ │ │ ├── ReturnByValue.h │ │ │ │ │ │ │ ├── Reverse.h │ │ │ │ │ │ │ ├── Select.h │ │ │ │ │ │ │ ├── SelfAdjointView.h │ │ │ │ │ │ │ ├── SelfCwiseBinaryOp.h │ │ │ │ │ │ │ ├── Solve.h │ │ │ │ │ │ │ ├── SolveTriangular.h │ │ │ │ │ │ │ ├── SolverBase.h │ │ │ │ │ │ │ ├── StableNorm.h │ │ │ │ │ │ │ ├── Stride.h │ │ │ │ │ │ │ ├── Swap.h │ │ │ │ │ │ │ ├── Transpose.h │ │ │ │ │ │ │ ├── Transpositions.h │ │ │ │ │ │ │ ├── TriangularMatrix.h │ │ │ │ │ │ │ ├── VectorBlock.h │ │ │ │ │ │ │ ├── VectorwiseOp.h │ │ │ │ │ │ │ ├── Visitor.h │ │ │ │ │ │ │ ├── arch/ │ │ │ │ │ │ │ │ ├── AVX/ │ │ │ │ │ │ │ │ │ ├── Complex.h │ │ │ │ │ │ │ │ │ ├── MathFunctions.h │ │ │ │ │ │ │ │ │ ├── PacketMath.h │ │ │ │ │ │ │ │ │ └── TypeCasting.h │ │ │ │ │ │ │ │ ├── AVX512/ │ │ │ │ │ │ │ │ │ ├── MathFunctions.h │ │ │ │ │ │ │ │ │ └── PacketMath.h │ │ │ │ │ │ │ │ ├── AltiVec/ │ │ │ │ │ │ │ │ │ ├── Complex.h │ │ │ │ │ │ │ │ │ ├── MathFunctions.h │ │ │ │ │ │ │ │ │ └── PacketMath.h │ │ │ │ │ │ │ │ ├── CUDA/ │ │ │ │ │ │ │ │ │ ├── Complex.h │ │ │ │ │ │ │ │ │ ├── Half.h │ │ │ │ │ │ │ │ │ ├── MathFunctions.h │ │ │ │ │ │ │ │ │ ├── PacketMath.h │ │ │ │ │ │ │ │ │ ├── PacketMathHalf.h │ │ │ │ │ │ │ │ │ └── TypeCasting.h │ │ │ │ │ │ │ │ ├── Default/ │ │ │ │ │ │ │ │ │ └── Settings.h │ │ │ │ │ │ │ │ ├── NEON/ │ │ │ │ │ │ │ │ │ ├── Complex.h │ │ │ │ │ │ │ │ │ ├── MathFunctions.h │ │ │ │ │ │ │ │ │ └── PacketMath.h │ │ │ │ │ │ │ │ ├── SSE/ │ │ │ │ │ │ │ │ │ ├── Complex.h │ │ │ │ │ │ │ │ │ ├── MathFunctions.h │ │ │ │ │ │ │ │ │ ├── PacketMath.h │ │ │ │ │ │ │ │ │ └── TypeCasting.h │ │ │ │ │ │ │ │ └── ZVector/ │ │ │ │ │ │ │ │ ├── Complex.h │ │ │ │ │ │ │ │ ├── MathFunctions.h │ │ │ │ │ │ │ │ └── PacketMath.h │ │ │ │ │ │ │ ├── functors/ │ │ │ │ │ │ │ │ ├── AssignmentFunctors.h │ │ │ │ │ │ │ │ ├── BinaryFunctors.h │ │ │ │ │ │ │ │ ├── NullaryFunctors.h │ │ │ │ │ │ │ │ ├── StlFunctors.h │ │ │ │ │ │ │ │ ├── TernaryFunctors.h │ │ │ │ │ │ │ │ └── UnaryFunctors.h │ │ │ │ │ │ │ ├── products/ │ │ │ │ │ │ │ │ ├── GeneralBlockPanelKernel.h │ │ │ │ │ │ │ │ ├── GeneralMatrixMatrix.h │ │ │ │ │ │ │ │ ├── GeneralMatrixMatrixTriangular.h │ │ │ │ │ │ │ │ ├── GeneralMatrixMatrixTriangular_BLAS.h │ │ │ │ │ │ │ │ ├── GeneralMatrixMatrix_BLAS.h │ │ │ │ │ │ │ │ ├── GeneralMatrixVector.h │ │ │ │ │ │ │ │ ├── GeneralMatrixVector_BLAS.h │ │ │ │ │ │ │ │ ├── Parallelizer.h │ │ │ │ │ │ │ │ ├── SelfadjointMatrixMatrix.h │ │ │ │ │ │ │ │ ├── SelfadjointMatrixMatrix_BLAS.h │ │ │ │ │ │ │ │ ├── SelfadjointMatrixVector.h │ │ │ │ │ │ │ │ ├── SelfadjointMatrixVector_BLAS.h │ │ │ │ │ │ │ │ ├── SelfadjointProduct.h │ │ │ │ │ │ │ │ ├── SelfadjointRank2Update.h │ │ │ │ │ │ │ │ ├── TriangularMatrixMatrix.h │ │ │ │ │ │ │ │ ├── TriangularMatrixMatrix_BLAS.h │ │ │ │ │ │ │ │ ├── TriangularMatrixVector.h │ │ │ │ │ │ │ │ ├── TriangularMatrixVector_BLAS.h │ │ │ │ │ │ │ │ ├── TriangularSolverMatrix.h │ │ │ │ │ │ │ │ ├── TriangularSolverMatrix_BLAS.h │ │ │ │ │ │ │ │ └── TriangularSolverVector.h │ │ │ │ │ │ │ └── util/ │ │ │ │ │ │ │ ├── BlasUtil.h │ │ │ │ │ │ │ ├── Constants.h │ │ │ │ │ │ │ ├── DisableStupidWarnings.h │ │ │ │ │ │ │ ├── ForwardDeclarations.h │ │ │ │ │ │ │ ├── MKL_support.h │ │ │ │ │ │ │ ├── Macros.h │ │ │ │ │ │ │ ├── Memory.h │ │ │ │ │ │ │ ├── Meta.h │ │ │ │ │ │ │ ├── NonMPL2.h │ │ │ │ │ │ │ ├── ReenableStupidWarnings.h │ │ │ │ │ │ │ ├── StaticAssert.h │ │ │ │ │ │ │ └── XprHelper.h │ │ │ │ │ │ ├── Eigenvalues/ │ │ │ │ │ │ │ ├── ComplexEigenSolver.h │ │ │ │ │ │ │ ├── ComplexSchur.h │ │ │ │ │ │ │ ├── ComplexSchur_LAPACKE.h │ │ │ │ │ │ │ ├── EigenSolver.h │ │ │ │ │ │ │ ├── GeneralizedEigenSolver.h │ │ │ │ │ │ │ ├── GeneralizedSelfAdjointEigenSolver.h │ │ │ │ │ │ │ ├── HessenbergDecomposition.h │ │ │ │ │ │ │ ├── MatrixBaseEigenvalues.h │ │ │ │ │ │ │ ├── RealQZ.h │ │ │ │ │ │ │ ├── RealSchur.h │ │ │ │ │ │ │ ├── RealSchur_LAPACKE.h │ │ │ │ │ │ │ ├── SelfAdjointEigenSolver.h │ │ │ │ │ │ │ ├── SelfAdjointEigenSolver_LAPACKE.h │ │ │ │ │ │ │ └── Tridiagonalization.h │ │ │ │ │ │ ├── Geometry/ │ │ │ │ │ │ │ ├── AlignedBox.h │ │ │ │ │ │ │ ├── AngleAxis.h │ │ │ │ │ │ │ ├── EulerAngles.h │ │ │ │ │ │ │ ├── Homogeneous.h │ │ │ │ │ │ │ ├── Hyperplane.h │ │ │ │ │ │ │ ├── OrthoMethods.h │ │ │ │ │ │ │ ├── ParametrizedLine.h │ │ │ │ │ │ │ ├── Quaternion.h │ │ │ │ │ │ │ ├── Rotation2D.h │ │ │ │ │ │ │ ├── RotationBase.h │ │ │ │ │ │ │ ├── Scaling.h │ │ │ │ │ │ │ ├── Transform.h │ │ │ │ │ │ │ ├── Translation.h │ │ │ │ │ │ │ ├── Umeyama.h │ │ │ │ │ │ │ └── arch/ │ │ │ │ │ │ │ └── Geometry_SSE.h │ │ │ │ │ │ ├── Householder/ │ │ │ │ │ │ │ ├── BlockHouseholder.h │ │ │ │ │ │ │ ├── Householder.h │ │ │ │ │ │ │ └── HouseholderSequence.h │ │ │ │ │ │ ├── IterativeLinearSolvers/ │ │ │ │ │ │ │ ├── BasicPreconditioners.h │ │ │ │ │ │ │ ├── BiCGSTAB.h │ │ │ │ │ │ │ ├── ConjugateGradient.h │ │ │ │ │ │ │ ├── IncompleteCholesky.h │ │ │ │ │ │ │ ├── IncompleteLUT.h │ │ │ │ │ │ │ ├── IterativeSolverBase.h │ │ │ │ │ │ │ ├── LeastSquareConjugateGradient.h │ │ │ │ │ │ │ └── SolveWithGuess.h │ │ │ │ │ │ ├── Jacobi/ │ │ │ │ │ │ │ └── Jacobi.h │ │ │ │ │ │ ├── LU/ │ │ │ │ │ │ │ ├── Determinant.h │ │ │ │ │ │ │ ├── FullPivLU.h │ │ │ │ │ │ │ ├── InverseImpl.h │ │ │ │ │ │ │ ├── PartialPivLU.h │ │ │ │ │ │ │ ├── PartialPivLU_LAPACKE.h │ │ │ │ │ │ │ └── arch/ │ │ │ │ │ │ │ └── Inverse_SSE.h │ │ │ │ │ │ ├── MetisSupport/ │ │ │ │ │ │ │ └── MetisSupport.h │ │ │ │ │ │ ├── OrderingMethods/ │ │ │ │ │ │ │ ├── Amd.h │ │ │ │ │ │ │ ├── Eigen_Colamd.h │ │ │ │ │ │ │ └── Ordering.h │ │ │ │ │ │ ├── PaStiXSupport/ │ │ │ │ │ │ │ └── PaStiXSupport.h │ │ │ │ │ │ ├── PardisoSupport/ │ │ │ │ │ │ │ └── PardisoSupport.h │ │ │ │ │ │ ├── QR/ │ │ │ │ │ │ │ ├── ColPivHouseholderQR.h │ │ │ │ │ │ │ ├── ColPivHouseholderQR_LAPACKE.h │ │ │ │ │ │ │ ├── CompleteOrthogonalDecomposition.h │ │ │ │ │ │ │ ├── FullPivHouseholderQR.h │ │ │ │ │ │ │ ├── HouseholderQR.h │ │ │ │ │ │ │ └── HouseholderQR_LAPACKE.h │ │ │ │ │ │ ├── SPQRSupport/ │ │ │ │ │ │ │ └── SuiteSparseQRSupport.h │ │ │ │ │ │ ├── SVD/ │ │ │ │ │ │ │ ├── BDCSVD.h │ │ │ │ │ │ │ ├── JacobiSVD.h │ │ │ │ │ │ │ ├── JacobiSVD_LAPACKE.h │ │ │ │ │ │ │ ├── SVDBase.h │ │ │ │ │ │ │ └── UpperBidiagonalization.h │ │ │ │ │ │ ├── SparseCholesky/ │ │ │ │ │ │ │ ├── SimplicialCholesky.h │ │ │ │ │ │ │ └── SimplicialCholesky_impl.h │ │ │ │ │ │ ├── SparseCore/ │ │ │ │ │ │ │ ├── AmbiVector.h │ │ │ │ │ │ │ ├── CompressedStorage.h │ │ │ │ │ │ │ ├── ConservativeSparseSparseProduct.h │ │ │ │ │ │ │ ├── MappedSparseMatrix.h │ │ │ │ │ │ │ ├── SparseAssign.h │ │ │ │ │ │ │ ├── SparseBlock.h │ │ │ │ │ │ │ ├── SparseColEtree.h │ │ │ │ │ │ │ ├── SparseCompressedBase.h │ │ │ │ │ │ │ ├── SparseCwiseBinaryOp.h │ │ │ │ │ │ │ ├── SparseCwiseUnaryOp.h │ │ │ │ │ │ │ ├── SparseDenseProduct.h │ │ │ │ │ │ │ ├── SparseDiagonalProduct.h │ │ │ │ │ │ │ ├── SparseDot.h │ │ │ │ │ │ │ ├── SparseFuzzy.h │ │ │ │ │ │ │ ├── SparseMap.h │ │ │ │ │ │ │ ├── SparseMatrix.h │ │ │ │ │ │ │ ├── SparseMatrixBase.h │ │ │ │ │ │ │ ├── SparsePermutation.h │ │ │ │ │ │ │ ├── SparseProduct.h │ │ │ │ │ │ │ ├── SparseRedux.h │ │ │ │ │ │ │ ├── SparseRef.h │ │ │ │ │ │ │ ├── SparseSelfAdjointView.h │ │ │ │ │ │ │ ├── SparseSolverBase.h │ │ │ │ │ │ │ ├── SparseSparseProductWithPruning.h │ │ │ │ │ │ │ ├── SparseTranspose.h │ │ │ │ │ │ │ ├── SparseTriangularView.h │ │ │ │ │ │ │ ├── SparseUtil.h │ │ │ │ │ │ │ ├── SparseVector.h │ │ │ │ │ │ │ ├── SparseView.h │ │ │ │ │ │ │ └── TriangularSolver.h │ │ │ │ │ │ ├── SparseLU/ │ │ │ │ │ │ │ ├── SparseLU.h │ │ │ │ │ │ │ ├── SparseLUImpl.h │ │ │ │ │ │ │ ├── SparseLU_Memory.h │ │ │ │ │ │ │ ├── SparseLU_Structs.h │ │ │ │ │ │ │ ├── SparseLU_SupernodalMatrix.h │ │ │ │ │ │ │ ├── SparseLU_Utils.h │ │ │ │ │ │ │ ├── SparseLU_column_bmod.h │ │ │ │ │ │ │ ├── SparseLU_column_dfs.h │ │ │ │ │ │ │ ├── SparseLU_copy_to_ucol.h │ │ │ │ │ │ │ ├── SparseLU_gemm_kernel.h │ │ │ │ │ │ │ ├── SparseLU_heap_relax_snode.h │ │ │ │ │ │ │ ├── SparseLU_kernel_bmod.h │ │ │ │ │ │ │ ├── SparseLU_panel_bmod.h │ │ │ │ │ │ │ ├── SparseLU_panel_dfs.h │ │ │ │ │ │ │ ├── SparseLU_pivotL.h │ │ │ │ │ │ │ ├── SparseLU_pruneL.h │ │ │ │ │ │ │ └── SparseLU_relax_snode.h │ │ │ │ │ │ ├── SparseQR/ │ │ │ │ │ │ │ └── SparseQR.h │ │ │ │ │ │ ├── StlSupport/ │ │ │ │ │ │ │ ├── StdDeque.h │ │ │ │ │ │ │ ├── StdList.h │ │ │ │ │ │ │ ├── StdVector.h │ │ │ │ │ │ │ └── details.h │ │ │ │ │ │ ├── SuperLUSupport/ │ │ │ │ │ │ │ └── SuperLUSupport.h │ │ │ │ │ │ ├── UmfPackSupport/ │ │ │ │ │ │ │ └── UmfPackSupport.h │ │ │ │ │ │ ├── misc/ │ │ │ │ │ │ │ ├── Image.h │ │ │ │ │ │ │ ├── Kernel.h │ │ │ │ │ │ │ ├── RealSvd2x2.h │ │ │ │ │ │ │ ├── blas.h │ │ │ │ │ │ │ ├── lapack.h │ │ │ │ │ │ │ ├── lapacke.h │ │ │ │ │ │ │ └── lapacke_mangling.h │ │ │ │ │ │ └── plugins/ │ │ │ │ │ │ ├── ArrayCwiseBinaryOps.h │ │ │ │ │ │ ├── ArrayCwiseUnaryOps.h │ │ │ │ │ │ ├── BlockMethods.h │ │ │ │ │ │ ├── CommonCwiseBinaryOps.h │ │ │ │ │ │ ├── CommonCwiseUnaryOps.h │ │ │ │ │ │ ├── MatrixCwiseBinaryOps.h │ │ │ │ │ │ └── MatrixCwiseUnaryOps.h │ │ │ │ │ └── Eigen.h │ │ │ │ ├── HX8347D/ │ │ │ │ │ ├── LCD.cpp │ │ │ │ │ ├── LCD.h │ │ │ │ │ ├── font.c │ │ │ │ │ └── font.h │ │ │ │ ├── I2Cdev/ │ │ │ │ │ ├── I2Cdev.cpp │ │ │ │ │ ├── I2Cdev.h │ │ │ │ │ ├── keywords.txt │ │ │ │ │ └── library.json │ │ │ │ ├── IMU/ │ │ │ │ │ ├── Define.h │ │ │ │ │ ├── ICM20648.cpp │ │ │ │ │ ├── ICM20648.h │ │ │ │ │ ├── ICM20648_REGS.h │ │ │ │ │ ├── IMU.cpp │ │ │ │ │ ├── IMU.h │ │ │ │ │ ├── MPU9250.cpp │ │ │ │ │ ├── MPU9250.h │ │ │ │ │ ├── MPU9250_REGS.h │ │ │ │ │ ├── MadgwickAHRS.cpp │ │ │ │ │ ├── MadgwickAHRS.h │ │ │ │ │ ├── imu_selector.cpp │ │ │ │ │ ├── imu_selector.h │ │ │ │ │ ├── imu_spi.cpp │ │ │ │ │ ├── imu_spi.h │ │ │ │ │ └── keywords.txt │ │ │ │ ├── LcdTouchPanel/ │ │ │ │ │ ├── LcdTouchPanel.cpp │ │ │ │ │ ├── LcdTouchPanel.h │ │ │ │ │ └── library.properties │ │ │ │ ├── OLLO/ │ │ │ │ │ ├── OLLO.cpp │ │ │ │ │ ├── OLLO.h │ │ │ │ │ └── keywords.txt │ │ │ │ ├── OP3/ │ │ │ │ │ ├── OP3.cpp │ │ │ │ │ ├── OP3.h │ │ │ │ │ └── examples/ │ │ │ │ │ └── opencr_op3/ │ │ │ │ │ ├── dxl.cpp │ │ │ │ │ ├── dxl.h │ │ │ │ │ ├── dxl_debug.cpp │ │ │ │ │ ├── dxl_debug.h │ │ │ │ │ ├── dxl_def.h │ │ │ │ │ ├── dxl_hw.cpp │ │ │ │ │ ├── dxl_hw.h │ │ │ │ │ ├── dxl_hw_op3.cpp │ │ │ │ │ ├── dxl_hw_op3.h │ │ │ │ │ ├── dxl_node_op3.cpp │ │ │ │ │ ├── dxl_node_op3.h │ │ │ │ │ └── opencr_op3.ino │ │ │ │ ├── OpenCR/ │ │ │ │ │ ├── OpenCR.cpp │ │ │ │ │ ├── OpenCR.h │ │ │ │ │ └── examples/ │ │ │ │ │ ├── 01. Basics/ │ │ │ │ │ │ ├── a_Bare_Minimum/ │ │ │ │ │ │ │ └── a_Bare_Minimum.ino │ │ │ │ │ │ ├── b_Blink_LED/ │ │ │ │ │ │ │ └── b_Blink_LED.ino │ │ │ │ │ │ ├── c_Digital_Read_Serial/ │ │ │ │ │ │ │ └── c_Digital_Read_Serial.ino │ │ │ │ │ │ ├── d_Analog_Read_Serial/ │ │ │ │ │ │ │ └── d_Analog_Read_Serial.ino │ │ │ │ │ │ ├── e_Read_Analog_Voltage/ │ │ │ │ │ │ │ └── e_Read_Analog_Voltage.ino │ │ │ │ │ │ └── f_Gpio_Write_Speed_Test/ │ │ │ │ │ │ └── f_Gpio_Write_Speed_Test.ino │ │ │ │ │ ├── 02. Digital/ │ │ │ │ │ │ ├── a_toneMelody/ │ │ │ │ │ │ │ ├── a_toneMelody.ino │ │ │ │ │ │ │ └── pitches.h │ │ │ │ │ │ └── b_PWM/ │ │ │ │ │ │ └── b_PWM.ino │ │ │ │ │ ├── 03. Communication/ │ │ │ │ │ │ └── a_Serial_HelloWorld/ │ │ │ │ │ │ └── a_Serial_HelloWorld.ino │ │ │ │ │ ├── 04. Interrupt/ │ │ │ │ │ │ ├── a_EXIT_Interrupt_Serial/ │ │ │ │ │ │ │ └── a_EXIT_Interrupt_Serial.ino │ │ │ │ │ │ └── d_Timer_Interrupt_LED/ │ │ │ │ │ │ └── d_Timer_Interrupt_LED.ino │ │ │ │ │ ├── 05. Sensors/ │ │ │ │ │ │ ├── OLLO_COLOR_Read/ │ │ │ │ │ │ │ └── OLLO_COLOR_Read.ino │ │ │ │ │ │ ├── OLLO_DMS_Read/ │ │ │ │ │ │ │ └── OLLO_DMS_Read.ino │ │ │ │ │ │ ├── OLLO_IR_Read/ │ │ │ │ │ │ │ └── OLLO_IR_Read.ino │ │ │ │ │ │ ├── OLLO_TOUCH_Read/ │ │ │ │ │ │ │ └── OLLO_TOUCH_Read.ino │ │ │ │ │ │ └── OLLO_TPS_READ/ │ │ │ │ │ │ └── OLLO_TPS_READ.ino │ │ │ │ │ ├── 06. RC100/ │ │ │ │ │ │ └── RC100/ │ │ │ │ │ │ └── RC100.ino │ │ │ │ │ ├── 07. DynamixelSDK/ │ │ │ │ │ │ ├── dxl_monitor/ │ │ │ │ │ │ │ └── dxl_monitor.ino │ │ │ │ │ │ ├── protocol1.0/ │ │ │ │ │ │ │ ├── bulk_read/ │ │ │ │ │ │ │ │ └── bulk_read.ino │ │ │ │ │ │ │ ├── ping/ │ │ │ │ │ │ │ │ └── ping.ino │ │ │ │ │ │ │ ├── read_write/ │ │ │ │ │ │ │ │ └── read_write.ino │ │ │ │ │ │ │ ├── reset/ │ │ │ │ │ │ │ │ └── reset.ino │ │ │ │ │ │ │ └── sync_write/ │ │ │ │ │ │ │ └── sync_write.ino │ │ │ │ │ │ ├── protocol2.0/ │ │ │ │ │ │ │ ├── broadcast_ping/ │ │ │ │ │ │ │ │ └── broadcast_ping.ino │ │ │ │ │ │ │ ├── bulk_read_write/ │ │ │ │ │ │ │ │ └── bulk_read_write.ino │ │ │ │ │ │ │ ├── factory_reset/ │ │ │ │ │ │ │ │ └── factory_reset.ino │ │ │ │ │ │ │ ├── indirect_address/ │ │ │ │ │ │ │ │ └── indirect_address.ino │ │ │ │ │ │ │ ├── ping/ │ │ │ │ │ │ │ │ └── ping.ino │ │ │ │ │ │ │ ├── read_write/ │ │ │ │ │ │ │ │ └── read_write.ino │ │ │ │ │ │ │ ├── reboot/ │ │ │ │ │ │ │ │ └── reboot.ino │ │ │ │ │ │ │ └── sync_read_write/ │ │ │ │ │ │ │ └── sync_read_write.ino │ │ │ │ │ │ └── protocol_combined/ │ │ │ │ │ │ └── protocol_combined.ino │ │ │ │ │ ├── 08. DynamixelWorkbench/ │ │ │ │ │ │ ├── a_Model_Scan/ │ │ │ │ │ │ │ └── a_Model_Scan.ino │ │ │ │ │ │ ├── b_Ping/ │ │ │ │ │ │ │ └── b_Ping.ino │ │ │ │ │ │ ├── c_ID_Change/ │ │ │ │ │ │ │ └── c_ID_Change.ino │ │ │ │ │ │ ├── d_BPS_Change/ │ │ │ │ │ │ │ └── d_BPS_Change.ino │ │ │ │ │ │ ├── e_Mode_Change/ │ │ │ │ │ │ │ └── e_Mode_Change.ino │ │ │ │ │ │ ├── f_Reboot/ │ │ │ │ │ │ │ └── f_Reboot.ino │ │ │ │ │ │ ├── g_Reset/ │ │ │ │ │ │ │ └── g_Reset.ino │ │ │ │ │ │ ├── h_Position/ │ │ │ │ │ │ │ └── h_Position.ino │ │ │ │ │ │ ├── i_Velocity/ │ │ │ │ │ │ │ └── i_Velocity.ino │ │ │ │ │ │ ├── j_Current_Based_Position/ │ │ │ │ │ │ │ └── j_Current_Based_Position.ino │ │ │ │ │ │ ├── k_Read_Write/ │ │ │ │ │ │ │ └── k_Read_Write.ino │ │ │ │ │ │ ├── l_Sync_Write/ │ │ │ │ │ │ │ └── l_Sync_Write.ino │ │ │ │ │ │ ├── m_Sync_Read_Write/ │ │ │ │ │ │ │ └── m_Sync_Read_Write.ino │ │ │ │ │ │ ├── n_Bulk_Read_Write/ │ │ │ │ │ │ │ └── n_Bulk_Read_Write.ino │ │ │ │ │ │ ├── o_Find_Dynamixel/ │ │ │ │ │ │ │ └── o_Find_Dynamixel.ino │ │ │ │ │ │ └── p_Monitor/ │ │ │ │ │ │ └── p_Monitor.ino │ │ │ │ │ ├── 09. IMU/ │ │ │ │ │ │ ├── IMU_Read_AccRAW/ │ │ │ │ │ │ │ └── IMU_Read_AccRAW.ino │ │ │ │ │ │ ├── IMU_Read_GyroRAW/ │ │ │ │ │ │ │ └── IMU_Read_GyroRAW.ino │ │ │ │ │ │ └── IMU_Read_RollPitchYaw/ │ │ │ │ │ │ └── IMU_Read_RollPitchYaw.ino │ │ │ │ │ └── 10. Etc/ │ │ │ │ │ ├── CAMERA/ │ │ │ │ │ │ └── ov7725_al422b/ │ │ │ │ │ │ ├── ov7725_al422b.cpp │ │ │ │ │ │ ├── ov7725_al422b.h │ │ │ │ │ │ ├── ov7725_al422b.ino │ │ │ │ │ │ ├── settings.h │ │ │ │ │ │ └── src/ │ │ │ │ │ │ ├── OV7725/ │ │ │ │ │ │ │ ├── OV7725.cpp │ │ │ │ │ │ │ └── OV7725.h │ │ │ │ │ │ ├── sccb/ │ │ │ │ │ │ │ ├── sccb.c │ │ │ │ │ │ │ └── sccb.h │ │ │ │ │ │ ├── tftLcd.cpp │ │ │ │ │ │ └── tftLcd.h │ │ │ │ │ ├── CAN/ │ │ │ │ │ │ ├── canMaskFilter/ │ │ │ │ │ │ │ └── canMaskFilter.ino │ │ │ │ │ │ ├── canRxInterrupt/ │ │ │ │ │ │ │ └── canRxInterrupt.ino │ │ │ │ │ │ ├── canTxRxByte/ │ │ │ │ │ │ │ └── canTxRxByte.ino │ │ │ │ │ │ └── canTxRxMessage/ │ │ │ │ │ │ └── canTxRxMessage.ino │ │ │ │ │ ├── EEPROM/ │ │ │ │ │ │ ├── eeprom_clear/ │ │ │ │ │ │ │ └── eeprom_clear.ino │ │ │ │ │ │ ├── eeprom_crc/ │ │ │ │ │ │ │ └── eeprom_crc.ino │ │ │ │ │ │ ├── eeprom_get/ │ │ │ │ │ │ │ └── eeprom_get.ino │ │ │ │ │ │ ├── eeprom_iteration/ │ │ │ │ │ │ │ └── eeprom_iteration.ino │ │ │ │ │ │ ├── eeprom_put/ │ │ │ │ │ │ │ └── eeprom_put.ino │ │ │ │ │ │ ├── eeprom_read/ │ │ │ │ │ │ │ └── eeprom_read.ino │ │ │ │ │ │ ├── eeprom_update/ │ │ │ │ │ │ │ └── eeprom_update.ino │ │ │ │ │ │ └── eeprom_write/ │ │ │ │ │ │ └── eeprom_write.ino │ │ │ │ │ ├── Eigen/ │ │ │ │ │ │ └── eigen_test/ │ │ │ │ │ │ └── eigen_test.ino │ │ │ │ │ ├── FreeRTOS/ │ │ │ │ │ │ └── thread_led/ │ │ │ │ │ │ └── thread_led.ino │ │ │ │ │ ├── LDS/ │ │ │ │ │ │ └── drawLDS/ │ │ │ │ │ │ ├── drawLDS.ino │ │ │ │ │ │ ├── lds.cpp │ │ │ │ │ │ └── lds.h │ │ │ │ │ ├── SPI/ │ │ │ │ │ │ └── using_SPI_ports/ │ │ │ │ │ │ └── using_SPI_ports.ino │ │ │ │ │ ├── Servo/ │ │ │ │ │ │ ├── Knob/ │ │ │ │ │ │ │ └── Knob.ino │ │ │ │ │ │ └── Sweep/ │ │ │ │ │ │ └── Sweep.ino │ │ │ │ │ ├── TFT/ │ │ │ │ │ │ ├── tft_shape/ │ │ │ │ │ │ │ └── tft_shape/ │ │ │ │ │ │ │ └── tft_shape.ino │ │ │ │ │ │ ├── tft_text/ │ │ │ │ │ │ │ └── tft_text/ │ │ │ │ │ │ │ └── tft_text.ino │ │ │ │ │ │ └── tft_touch/ │ │ │ │ │ │ └── tft_touch/ │ │ │ │ │ │ └── tft_touch.ino │ │ │ │ │ ├── Waveshare/ │ │ │ │ │ │ ├── breakouttouchpaint/ │ │ │ │ │ │ │ └── breakouttouchpaint.ino │ │ │ │ │ │ ├── graphicstest/ │ │ │ │ │ │ │ └── graphicstest.ino │ │ │ │ │ │ ├── lcd_logo/ │ │ │ │ │ │ │ ├── lcd_logo.ino │ │ │ │ │ │ │ ├── logo.cpp │ │ │ │ │ │ │ └── logo.h │ │ │ │ │ │ ├── spitftbitmap/ │ │ │ │ │ │ │ └── spitftbitmap.ino │ │ │ │ │ │ └── tft_box/ │ │ │ │ │ │ └── tft_box.ino │ │ │ │ │ ├── rtc_time/ │ │ │ │ │ │ └── rtc_time.ino │ │ │ │ │ └── usb_to_dxl/ │ │ │ │ │ └── usb_to_dxl.ino │ │ │ │ ├── OpenManipulator/ │ │ │ │ │ ├── example/ │ │ │ │ │ │ ├── Chain/ │ │ │ │ │ │ │ ├── open_manipulator_chain/ │ │ │ │ │ │ │ │ ├── demo.h │ │ │ │ │ │ │ │ ├── open_manipulator_chain.ino │ │ │ │ │ │ │ │ ├── processing.h │ │ │ │ │ │ │ │ └── remote_controller.h │ │ │ │ │ │ │ ├── open_manipulator_chain_ROS/ │ │ │ │ │ │ │ │ ├── open_manipulator_chain_ROS.h │ │ │ │ │ │ │ │ └── open_manipulator_chain_ROS.ino │ │ │ │ │ │ │ ├── open_manipulator_chain_pen/ │ │ │ │ │ │ │ │ ├── open_manipulator_chain_pen.ino │ │ │ │ │ │ │ │ ├── open_manipulator_pen.h │ │ │ │ │ │ │ │ ├── open_manipulator_pen_drawing.cpp │ │ │ │ │ │ │ │ ├── open_manipulator_pen_drawing.h │ │ │ │ │ │ │ │ ├── open_manipulator_pen_motion.h │ │ │ │ │ │ │ │ └── processing.h │ │ │ │ │ │ │ ├── open_manipulator_chain_teaching/ │ │ │ │ │ │ │ │ └── open_manipulator_chain_teaching.ino │ │ │ │ │ │ │ └── open_manipulator_chain_vacuum/ │ │ │ │ │ │ │ ├── actuator.h │ │ │ │ │ │ │ ├── open_manipulator_chain_vacuum.ino │ │ │ │ │ │ │ ├── open_manipulator_vacuum.h │ │ │ │ │ │ │ ├── open_manipulator_vacuum_motion.h │ │ │ │ │ │ │ └── processing.h │ │ │ │ │ │ ├── Delta/ │ │ │ │ │ │ │ └── open_manipulator_delta/ │ │ │ │ │ │ │ ├── demo.h │ │ │ │ │ │ │ ├── open_manipulator_delta.ino │ │ │ │ │ │ │ ├── processing.h │ │ │ │ │ │ │ └── remotecontroller100.h │ │ │ │ │ │ ├── Linear/ │ │ │ │ │ │ │ └── open_manipulator_linear/ │ │ │ │ │ │ │ ├── demo.h │ │ │ │ │ │ │ ├── open_manipulator_linear.ino │ │ │ │ │ │ │ ├── processing.h │ │ │ │ │ │ │ └── remotecontroller100.h │ │ │ │ │ │ ├── Link/ │ │ │ │ │ │ │ └── open_manipulator_link/ │ │ │ │ │ │ │ ├── link.h │ │ │ │ │ │ │ ├── link_kinematics.h │ │ │ │ │ │ │ ├── motion.h │ │ │ │ │ │ │ ├── open_manipulator_link.ino │ │ │ │ │ │ │ ├── processing.h │ │ │ │ │ │ │ ├── remote_controller.h │ │ │ │ │ │ │ └── vacuum_actuator.h │ │ │ │ │ │ ├── Planar/ │ │ │ │ │ │ │ └── open_manipulator_planar/ │ │ │ │ │ │ │ ├── demo.h │ │ │ │ │ │ │ ├── open_manipulator_planar.ino │ │ │ │ │ │ │ ├── processing.h │ │ │ │ │ │ │ └── remotecontroller100.h │ │ │ │ │ │ ├── Scara/ │ │ │ │ │ │ │ └── open_manipulator_scara/ │ │ │ │ │ │ │ ├── demo.h │ │ │ │ │ │ │ ├── open_manipulator_scara.ino │ │ │ │ │ │ │ ├── processing.h │ │ │ │ │ │ │ └── remotecontroller100.h │ │ │ │ │ │ └── Stewart/ │ │ │ │ │ │ └── open_manipulator_stewart/ │ │ │ │ │ │ ├── demo.h │ │ │ │ │ │ ├── demo2.h │ │ │ │ │ │ ├── open_manipulator_stewart.ino │ │ │ │ │ │ ├── processing.h │ │ │ │ │ │ └── remotecontroller100.h │ │ │ │ │ ├── library.properties │ │ │ │ │ └── src/ │ │ │ │ │ ├── delta_libs/ │ │ │ │ │ │ ├── include/ │ │ │ │ │ │ │ └── delta_libs/ │ │ │ │ │ │ │ ├── delta.h │ │ │ │ │ │ │ ├── delta_custom_trajectory.h │ │ │ │ │ │ │ ├── delta_dynamixel.h │ │ │ │ │ │ │ └── delta_kinematics.h │ │ │ │ │ │ └── src/ │ │ │ │ │ │ ├── delta.cpp │ │ │ │ │ │ ├── delta_custom_trajectory.cpp │ │ │ │ │ │ ├── delta_dynamixel.cpp │ │ │ │ │ │ └── delta_kinematics.cpp │ │ │ │ │ ├── delta_libs.h │ │ │ │ │ ├── linear_libs/ │ │ │ │ │ │ ├── include/ │ │ │ │ │ │ │ └── linear_libs/ │ │ │ │ │ │ │ ├── linear.h │ │ │ │ │ │ │ ├── linear_custom_trajectory.h │ │ │ │ │ │ │ ├── linear_dynamixel.h │ │ │ │ │ │ │ └── linear_kinematics.h │ │ │ │ │ │ └── src/ │ │ │ │ │ │ ├── linear.cpp │ │ │ │ │ │ ├── linear_custom_trajectory.cpp │ │ │ │ │ │ ├── linear_dynamixel.cpp │ │ │ │ │ │ └── linear_kinematics.cpp │ │ │ │ │ ├── linear_libs.h │ │ │ │ │ ├── open_manipulator_libs/ │ │ │ │ │ │ ├── include/ │ │ │ │ │ │ │ └── open_manipulator_libs/ │ │ │ │ │ │ │ ├── custom_trajectory.h │ │ │ │ │ │ │ ├── dynamixel.h │ │ │ │ │ │ │ ├── kinematics.h │ │ │ │ │ │ │ └── open_manipulator.h │ │ │ │ │ │ └── src/ │ │ │ │ │ │ ├── custom_trajectory.cpp │ │ │ │ │ │ ├── dynamixel.cpp │ │ │ │ │ │ ├── kinematics.cpp │ │ │ │ │ │ └── open_manipulator.cpp │ │ │ │ │ ├── open_manipulator_libs.h │ │ │ │ │ ├── open_manipulator_msgs/ │ │ │ │ │ │ ├── GetJointPosition.h │ │ │ │ │ │ ├── GetKinematicsPose.h │ │ │ │ │ │ ├── JointPosition.h │ │ │ │ │ │ ├── KinematicsPose.h │ │ │ │ │ │ ├── OpenManipulatorState.h │ │ │ │ │ │ ├── SetActuatorState.h │ │ │ │ │ │ ├── SetDrawingTrajectory.h │ │ │ │ │ │ ├── SetJointPosition.h │ │ │ │ │ │ └── SetKinematicsPose.h │ │ │ │ │ ├── planar_libs/ │ │ │ │ │ │ ├── include/ │ │ │ │ │ │ │ └── planar_libs/ │ │ │ │ │ │ │ ├── planar.h │ │ │ │ │ │ │ ├── planar_custom_trajectory.h │ │ │ │ │ │ │ ├── planar_dynamixel.h │ │ │ │ │ │ │ └── planar_kinematics.h │ │ │ │ │ │ └── src/ │ │ │ │ │ │ ├── planar.cpp │ │ │ │ │ │ ├── planar_custom_trajectory.cpp │ │ │ │ │ │ ├── planar_dynamixel.cpp │ │ │ │ │ │ └── planar_kinematics.cpp │ │ │ │ │ ├── planar_libs.h │ │ │ │ │ ├── scara_libs/ │ │ │ │ │ │ ├── include/ │ │ │ │ │ │ │ └── scara_libs/ │ │ │ │ │ │ │ ├── scara.h │ │ │ │ │ │ │ ├── scara_custom_trajectory.h │ │ │ │ │ │ │ ├── scara_dynamixel.h │ │ │ │ │ │ │ └── scara_kinematics.h │ │ │ │ │ │ └── src/ │ │ │ │ │ │ ├── scara.cpp │ │ │ │ │ │ ├── scara_custom_trajectory.cpp │ │ │ │ │ │ ├── scara_dynamixel.cpp │ │ │ │ │ │ └── scara_kinematics.cpp │ │ │ │ │ ├── scara_libs.h │ │ │ │ │ ├── stewart_libs/ │ │ │ │ │ │ ├── include/ │ │ │ │ │ │ │ └── stewart_libs/ │ │ │ │ │ │ │ ├── stewart.h │ │ │ │ │ │ │ ├── stewart_custom_trajectory.h │ │ │ │ │ │ │ ├── stewart_dynamixel.h │ │ │ │ │ │ │ └── stewart_kinematics.h │ │ │ │ │ │ └── src/ │ │ │ │ │ │ ├── stewart.cpp │ │ │ │ │ │ ├── stewart_custom_trajectory.cpp │ │ │ │ │ │ ├── stewart_dynamixel.cpp │ │ │ │ │ │ └── stewart_kinematics.cpp │ │ │ │ │ └── stewart_libs.h │ │ │ │ ├── RC100/ │ │ │ │ │ ├── RC100.cpp │ │ │ │ │ └── RC100.h │ │ │ │ ├── ROS/ │ │ │ │ │ ├── OpenCR_ROS.cpp │ │ │ │ │ ├── OpenCR_ROS.h │ │ │ │ │ └── examples/ │ │ │ │ │ ├── 01. Basics/ │ │ │ │ │ │ ├── a_LED/ │ │ │ │ │ │ │ └── a_LED.ino │ │ │ │ │ │ ├── b_Button/ │ │ │ │ │ │ │ └── b_Button.ino │ │ │ │ │ │ ├── c_Voltage/ │ │ │ │ │ │ │ └── c_Voltage.ino │ │ │ │ │ │ └── d_IMU/ │ │ │ │ │ │ └── d_IMU.ino │ │ │ │ │ └── 02. Sensors/ │ │ │ │ │ ├── a_bumper/ │ │ │ │ │ │ └── a_bumper.ino │ │ │ │ │ ├── b_cliff/ │ │ │ │ │ │ └── b_cliff.ino │ │ │ │ │ ├── c_Ultrasonic/ │ │ │ │ │ │ └── c_Ultrasonic.ino │ │ │ │ │ └── d_Illumination/ │ │ │ │ │ └── d_Illumination.ino │ │ │ │ ├── RTOS/ │ │ │ │ │ ├── library.properties │ │ │ │ │ └── src/ │ │ │ │ │ ├── FreeRTOS.h │ │ │ │ │ ├── FreeRTOSConfig.h │ │ │ │ │ ├── RTOS.cpp │ │ │ │ │ ├── RTOS.h │ │ │ │ │ ├── StackMacros.h │ │ │ │ │ ├── cmsis_os.c │ │ │ │ │ ├── cmsis_os.h │ │ │ │ │ ├── croutine.c │ │ │ │ │ ├── croutine.h │ │ │ │ │ ├── deprecated_definitions.h │ │ │ │ │ ├── event_groups.c │ │ │ │ │ ├── event_groups.h │ │ │ │ │ ├── heap_3.c │ │ │ │ │ ├── list.c │ │ │ │ │ ├── list.h │ │ │ │ │ ├── mpu_wrappers.h │ │ │ │ │ ├── port.c │ │ │ │ │ ├── portable.h │ │ │ │ │ ├── portmacro.h │ │ │ │ │ ├── projdefs.h │ │ │ │ │ ├── queue.c │ │ │ │ │ ├── queue.h │ │ │ │ │ ├── readme.txt │ │ │ │ │ ├── semphr.h │ │ │ │ │ ├── st_readme.txt │ │ │ │ │ ├── stdint.readme │ │ │ │ │ ├── task.h │ │ │ │ │ ├── tasks.c │ │ │ │ │ ├── timers.c │ │ │ │ │ └── timers.h │ │ │ │ ├── RobotisManipulator/ │ │ │ │ │ ├── include/ │ │ │ │ │ │ └── robotis_manipulator/ │ │ │ │ │ │ ├── robotis_manipulator.h │ │ │ │ │ │ ├── robotis_manipulator_common.h │ │ │ │ │ │ ├── robotis_manipulator_log.h │ │ │ │ │ │ ├── robotis_manipulator_manager.h │ │ │ │ │ │ ├── robotis_manipulator_math.h │ │ │ │ │ │ └── robotis_manipulator_trajectory_generator.h │ │ │ │ │ ├── library.properties │ │ │ │ │ └── src/ │ │ │ │ │ ├── RobotisManipulator.h │ │ │ │ │ └── robotis_manipulator/ │ │ │ │ │ ├── robotis_manipulator.cpp │ │ │ │ │ ├── robotis_manipulator_common.cpp │ │ │ │ │ ├── robotis_manipulator_log.cpp │ │ │ │ │ ├── robotis_manipulator_manager.cpp │ │ │ │ │ ├── robotis_manipulator_math.cpp │ │ │ │ │ └── robotis_manipulator_trajectory_generator.cpp │ │ │ │ ├── SPI/ │ │ │ │ │ ├── EventResponder.cpp │ │ │ │ │ ├── EventResponder.h │ │ │ │ │ ├── SPI.cpp │ │ │ │ │ ├── SPI.h │ │ │ │ │ └── keywords.txt │ │ │ │ ├── Servo/ │ │ │ │ │ ├── README.adoc │ │ │ │ │ ├── keywords.txt │ │ │ │ │ ├── library.properties │ │ │ │ │ └── src/ │ │ │ │ │ ├── Servo.cpp │ │ │ │ │ └── Servo.h │ │ │ │ ├── Touch/ │ │ │ │ │ ├── Touch.cpp │ │ │ │ │ └── Touch.h │ │ │ │ ├── Waveshare_HX8347D/ │ │ │ │ │ ├── README.txt │ │ │ │ │ ├── Waveshare_HX8347D.cpp │ │ │ │ │ ├── Waveshare_HX8347D.h │ │ │ │ │ └── library.properties │ │ │ │ ├── Wire/ │ │ │ │ │ ├── README │ │ │ │ │ ├── SlowSoftI2CMaster.cpp │ │ │ │ │ ├── SlowSoftI2CMaster.h │ │ │ │ │ ├── Wire.cpp │ │ │ │ │ ├── Wire.h │ │ │ │ │ └── keywords.txt │ │ │ │ ├── XPT2046/ │ │ │ │ │ ├── XPT2046.cpp │ │ │ │ │ └── XPT2046.h │ │ │ │ ├── turtlebot3/ │ │ │ │ │ ├── examples/ │ │ │ │ │ │ ├── turtlebot3_burger/ │ │ │ │ │ │ │ └── turtlebot3_core/ │ │ │ │ │ │ │ ├── turtlebot3_burger.h │ │ │ │ │ │ │ ├── turtlebot3_core.ino │ │ │ │ │ │ │ └── turtlebot3_core_config.h │ │ │ │ │ │ ├── turtlebot3_friends/ │ │ │ │ │ │ │ ├── turtlebot3_bike/ │ │ │ │ │ │ │ │ ├── turtlebot3_bike.h │ │ │ │ │ │ │ │ ├── turtlebot3_bike.ino │ │ │ │ │ │ │ │ ├── turtlebot3_bike_motor_driver.cpp │ │ │ │ │ │ │ │ └── turtlebot3_bike_motor_driver.h │ │ │ │ │ │ │ ├── turtlebot3_car/ │ │ │ │ │ │ │ │ ├── turtlebot3_car.h │ │ │ │ │ │ │ │ ├── turtlebot3_car.ino │ │ │ │ │ │ │ │ ├── turtlebot3_car_motor_driver.cpp │ │ │ │ │ │ │ │ └── turtlebot3_car_motor_driver.h │ │ │ │ │ │ │ ├── turtlebot3_conveyor/ │ │ │ │ │ │ │ │ ├── turtlebot3_conveyor.h │ │ │ │ │ │ │ │ ├── turtlebot3_conveyor.ino │ │ │ │ │ │ │ │ ├── turtlebot3_conveyor_motor_driver.cpp │ │ │ │ │ │ │ │ └── turtlebot3_conveyor_motor_driver.h │ │ │ │ │ │ │ ├── turtlebot3_mecanum/ │ │ │ │ │ │ │ │ ├── turtlebot3_mecanum.h │ │ │ │ │ │ │ │ ├── turtlebot3_mecanum.ino │ │ │ │ │ │ │ │ ├── turtlebot3_mecanum_motor_driver.cpp │ │ │ │ │ │ │ │ └── turtlebot3_mecanum_motor_driver.h │ │ │ │ │ │ │ ├── turtlebot3_monster/ │ │ │ │ │ │ │ │ ├── turtlebot3_monster.h │ │ │ │ │ │ │ │ ├── turtlebot3_monster.ino │ │ │ │ │ │ │ │ ├── turtlebot3_monster_motor_driver.cpp │ │ │ │ │ │ │ │ └── turtlebot3_monster_motor_driver.h │ │ │ │ │ │ │ ├── turtlebot3_omni/ │ │ │ │ │ │ │ │ ├── turtlebot3_omni.h │ │ │ │ │ │ │ │ ├── turtlebot3_omni.ino │ │ │ │ │ │ │ │ ├── turtlebot3_omni_motor_driver.cpp │ │ │ │ │ │ │ │ └── turtlebot3_omni_motor_driver.h │ │ │ │ │ │ │ ├── turtlebot3_realturtlebot/ │ │ │ │ │ │ │ │ ├── turtlebot3_realturtlebot.h │ │ │ │ │ │ │ │ ├── turtlebot3_realturtlebot.ino │ │ │ │ │ │ │ │ ├── turtlebot3_realturtlebot_motion.h │ │ │ │ │ │ │ │ ├── turtlebot3_realturtlebot_motor_driver.cpp │ │ │ │ │ │ │ │ └── turtlebot3_realturtlebot_motor_driver.h │ │ │ │ │ │ │ ├── turtlebot3_road_train/ │ │ │ │ │ │ │ │ ├── turtlebot3_road_train.h │ │ │ │ │ │ │ │ ├── turtlebot3_road_train.ino │ │ │ │ │ │ │ │ ├── turtlebot3_road_train_motor_driver.cpp │ │ │ │ │ │ │ │ └── turtlebot3_road_train_motor_driver.h │ │ │ │ │ │ │ ├── turtlebot3_segway/ │ │ │ │ │ │ │ │ ├── turtlebot3_segway.h │ │ │ │ │ │ │ │ ├── turtlebot3_segway.ino │ │ │ │ │ │ │ │ ├── turtlebot3_segway_motor_driver.cpp │ │ │ │ │ │ │ │ └── turtlebot3_segway_motor_driver.h │ │ │ │ │ │ │ └── turtlebot3_tank/ │ │ │ │ │ │ │ ├── turtlebot3_tank.h │ │ │ │ │ │ │ ├── turtlebot3_tank.ino │ │ │ │ │ │ │ ├── turtlebot3_tank_motor_driver.cpp │ │ │ │ │ │ │ └── turtlebot3_tank_motor_driver.h │ │ │ │ │ │ ├── turtlebot3_setup/ │ │ │ │ │ │ │ └── turtlebot3_setup_motor/ │ │ │ │ │ │ │ └── turtlebot3_setup_motor.ino │ │ │ │ │ │ ├── turtlebot3_waffle/ │ │ │ │ │ │ │ └── turtlebot3_core/ │ │ │ │ │ │ │ ├── turtlebot3_core.ino │ │ │ │ │ │ │ ├── turtlebot3_core_config.h │ │ │ │ │ │ │ └── turtlebot3_waffle.h │ │ │ │ │ │ └── turtlebot3_with_open_manipulator/ │ │ │ │ │ │ └── turtlebot3_with_open_manipulator_core/ │ │ │ │ │ │ ├── open_manipulator_driver.cpp │ │ │ │ │ │ ├── open_manipulator_driver.h │ │ │ │ │ │ ├── turtlebot3_with_open_manipulator.h │ │ │ │ │ │ ├── turtlebot3_with_open_manipulator_core.ino │ │ │ │ │ │ └── turtlebot3_with_open_manipulator_core_config.h │ │ │ │ │ ├── include/ │ │ │ │ │ │ └── turtlebot3/ │ │ │ │ │ │ ├── turtlebot3.h │ │ │ │ │ │ ├── turtlebot3_controller.h │ │ │ │ │ │ ├── turtlebot3_diagnosis.h │ │ │ │ │ │ ├── turtlebot3_motor_driver.h │ │ │ │ │ │ └── turtlebot3_sensor.h │ │ │ │ │ ├── library.properties │ │ │ │ │ └── src/ │ │ │ │ │ ├── TurtleBot3.h │ │ │ │ │ └── turtlebot3/ │ │ │ │ │ ├── turtlebot3_controller.cpp │ │ │ │ │ ├── turtlebot3_diagnosis.cpp │ │ │ │ │ ├── turtlebot3_motor_driver.cpp │ │ │ │ │ └── turtlebot3_sensor.cpp │ │ │ │ ├── turtlebot3_ros2/ │ │ │ │ │ ├── examples/ │ │ │ │ │ │ ├── turtlebot3_burger/ │ │ │ │ │ │ │ └── turtlebot3_burger.ino │ │ │ │ │ │ ├── turtlebot3_manipulation/ │ │ │ │ │ │ │ └── turtlebot3_manipulation.ino │ │ │ │ │ │ └── turtlebot3_waffle/ │ │ │ │ │ │ └── turtlebot3_waffle.ino │ │ │ │ │ ├── include/ │ │ │ │ │ │ └── turtlebot3/ │ │ │ │ │ │ ├── open_manipulator_driver.h │ │ │ │ │ │ ├── turtlebot3.h │ │ │ │ │ │ ├── turtlebot3_controller.h │ │ │ │ │ │ ├── turtlebot3_diagnosis.h │ │ │ │ │ │ ├── turtlebot3_motor_driver.h │ │ │ │ │ │ └── turtlebot3_sensor.h │ │ │ │ │ ├── library.properties │ │ │ │ │ └── src/ │ │ │ │ │ ├── TurtleBot3_ROS2.h │ │ │ │ │ └── turtlebot3/ │ │ │ │ │ ├── open_manipulator_driver.cpp │ │ │ │ │ ├── turtlebot3.cpp │ │ │ │ │ ├── turtlebot3_controller.cpp │ │ │ │ │ ├── turtlebot3_diagnosis.cpp │ │ │ │ │ ├── turtlebot3_motor_driver.cpp │ │ │ │ │ └── turtlebot3_sensor.cpp │ │ │ │ └── turtlebot3_ros_lib/ │ │ │ │ ├── ArduinoHardware.h │ │ │ │ ├── duration.cpp │ │ │ │ ├── geometry_msgs/ │ │ │ │ │ ├── Accel.h │ │ │ │ │ ├── AccelStamped.h │ │ │ │ │ ├── AccelWithCovariance.h │ │ │ │ │ ├── AccelWithCovarianceStamped.h │ │ │ │ │ ├── Inertia.h │ │ │ │ │ ├── InertiaStamped.h │ │ │ │ │ ├── Point.h │ │ │ │ │ ├── Point32.h │ │ │ │ │ ├── PointStamped.h │ │ │ │ │ ├── Polygon.h │ │ │ │ │ ├── PolygonStamped.h │ │ │ │ │ ├── Pose.h │ │ │ │ │ ├── Pose2D.h │ │ │ │ │ ├── PoseArray.h │ │ │ │ │ ├── PoseStamped.h │ │ │ │ │ ├── PoseWithCovariance.h │ │ │ │ │ ├── PoseWithCovarianceStamped.h │ │ │ │ │ ├── Quaternion.h │ │ │ │ │ ├── QuaternionStamped.h │ │ │ │ │ ├── Transform.h │ │ │ │ │ ├── TransformStamped.h │ │ │ │ │ ├── Twist.h │ │ │ │ │ ├── TwistStamped.h │ │ │ │ │ ├── TwistWithCovariance.h │ │ │ │ │ ├── TwistWithCovarianceStamped.h │ │ │ │ │ ├── Vector3.h │ │ │ │ │ ├── Vector3Stamped.h │ │ │ │ │ ├── Wrench.h │ │ │ │ │ └── WrenchStamped.h │ │ │ │ ├── nav_msgs/ │ │ │ │ │ ├── GetMap.h │ │ │ │ │ ├── GetMapAction.h │ │ │ │ │ ├── GetMapActionFeedback.h │ │ │ │ │ ├── GetMapActionGoal.h │ │ │ │ │ ├── GetMapActionResult.h │ │ │ │ │ ├── GetMapFeedback.h │ │ │ │ │ ├── GetMapGoal.h │ │ │ │ │ ├── GetMapResult.h │ │ │ │ │ ├── GetPlan.h │ │ │ │ │ ├── GridCells.h │ │ │ │ │ ├── MapMetaData.h │ │ │ │ │ ├── OccupancyGrid.h │ │ │ │ │ ├── Odometry.h │ │ │ │ │ ├── Path.h │ │ │ │ │ └── SetMap.h │ │ │ │ ├── ros/ │ │ │ │ │ ├── duration.h │ │ │ │ │ ├── msg.h │ │ │ │ │ ├── node_handle.h │ │ │ │ │ ├── publisher.h │ │ │ │ │ ├── service_client.h │ │ │ │ │ ├── service_server.h │ │ │ │ │ ├── subscriber.h │ │ │ │ │ └── time.h │ │ │ │ ├── ros.h │ │ │ │ ├── roscpp/ │ │ │ │ │ ├── Empty.h │ │ │ │ │ ├── GetLoggers.h │ │ │ │ │ ├── Logger.h │ │ │ │ │ └── SetLoggerLevel.h │ │ │ │ ├── rosserial_arduino/ │ │ │ │ │ ├── Adc.h │ │ │ │ │ └── Test.h │ │ │ │ ├── rosserial_msgs/ │ │ │ │ │ ├── Log.h │ │ │ │ │ ├── RequestMessageInfo.h │ │ │ │ │ ├── RequestParam.h │ │ │ │ │ ├── RequestServiceInfo.h │ │ │ │ │ └── TopicInfo.h │ │ │ │ ├── sensor_msgs/ │ │ │ │ │ ├── BatteryState.h │ │ │ │ │ ├── BatteryStateNoetic.h │ │ │ │ │ ├── CameraInfo.h │ │ │ │ │ ├── ChannelFloat32.h │ │ │ │ │ ├── CompressedImage.h │ │ │ │ │ ├── FluidPressure.h │ │ │ │ │ ├── Illuminance.h │ │ │ │ │ ├── Image.h │ │ │ │ │ ├── Imu.h │ │ │ │ │ ├── JointState.h │ │ │ │ │ ├── Joy.h │ │ │ │ │ ├── JoyFeedback.h │ │ │ │ │ ├── JoyFeedbackArray.h │ │ │ │ │ ├── LaserEcho.h │ │ │ │ │ ├── LaserScan.h │ │ │ │ │ ├── MagneticField.h │ │ │ │ │ ├── MultiDOFJointState.h │ │ │ │ │ ├── MultiEchoLaserScan.h │ │ │ │ │ ├── NavSatFix.h │ │ │ │ │ ├── NavSatStatus.h │ │ │ │ │ ├── PointCloud.h │ │ │ │ │ ├── PointCloud2.h │ │ │ │ │ ├── PointField.h │ │ │ │ │ ├── Range.h │ │ │ │ │ ├── RegionOfInterest.h │ │ │ │ │ ├── RelativeHumidity.h │ │ │ │ │ ├── SetCameraInfo.h │ │ │ │ │ ├── Temperature.h │ │ │ │ │ └── TimeReference.h │ │ │ │ ├── std_msgs/ │ │ │ │ │ ├── Bool.h │ │ │ │ │ ├── Byte.h │ │ │ │ │ ├── ByteMultiArray.h │ │ │ │ │ ├── Char.h │ │ │ │ │ ├── ColorRGBA.h │ │ │ │ │ ├── Duration.h │ │ │ │ │ ├── Empty.h │ │ │ │ │ ├── Float32.h │ │ │ │ │ ├── Float32MultiArray.h │ │ │ │ │ ├── Float64.h │ │ │ │ │ ├── Float64MultiArray.h │ │ │ │ │ ├── Header.h │ │ │ │ │ ├── Int16.h │ │ │ │ │ ├── Int16MultiArray.h │ │ │ │ │ ├── Int32.h │ │ │ │ │ ├── Int32MultiArray.h │ │ │ │ │ ├── Int64.h │ │ │ │ │ ├── Int64MultiArray.h │ │ │ │ │ ├── Int8.h │ │ │ │ │ ├── Int8MultiArray.h │ │ │ │ │ ├── MultiArrayDimension.h │ │ │ │ │ ├── MultiArrayLayout.h │ │ │ │ │ ├── String.h │ │ │ │ │ ├── Time.h │ │ │ │ │ ├── UInt16.h │ │ │ │ │ ├── UInt16MultiArray.h │ │ │ │ │ ├── UInt32.h │ │ │ │ │ ├── UInt32MultiArray.h │ │ │ │ │ ├── UInt64.h │ │ │ │ │ ├── UInt64MultiArray.h │ │ │ │ │ ├── UInt8.h │ │ │ │ │ └── UInt8MultiArray.h │ │ │ │ ├── std_srvs/ │ │ │ │ │ ├── Empty.h │ │ │ │ │ ├── SetBool.h │ │ │ │ │ └── Trigger.h │ │ │ │ ├── tf/ │ │ │ │ │ ├── FrameGraph.h │ │ │ │ │ ├── tf.h │ │ │ │ │ ├── tfMessage.h │ │ │ │ │ └── transform_broadcaster.h │ │ │ │ ├── tf2_msgs/ │ │ │ │ │ ├── FrameGraph.h │ │ │ │ │ ├── LookupTransformAction.h │ │ │ │ │ ├── LookupTransformActionFeedback.h │ │ │ │ │ ├── LookupTransformActionGoal.h │ │ │ │ │ ├── LookupTransformActionResult.h │ │ │ │ │ ├── LookupTransformFeedback.h │ │ │ │ │ ├── LookupTransformGoal.h │ │ │ │ │ ├── LookupTransformResult.h │ │ │ │ │ ├── TF2Error.h │ │ │ │ │ └── TFMessage.h │ │ │ │ ├── time.cpp │ │ │ │ ├── trajectory_msgs/ │ │ │ │ │ ├── JointTrajectory.h │ │ │ │ │ ├── JointTrajectoryPoint.h │ │ │ │ │ ├── MultiDOFJointTrajectory.h │ │ │ │ │ └── MultiDOFJointTrajectoryPoint.h │ │ │ │ └── turtlebot3_msgs/ │ │ │ │ ├── SensorState.h │ │ │ │ ├── Sound.h │ │ │ │ └── VersionInfo.h │ │ │ ├── platform.txt │ │ │ ├── programmers.txt │ │ │ └── variants/ │ │ │ └── OpenCR/ │ │ │ ├── bsp/ │ │ │ │ └── opencr/ │ │ │ │ ├── bsp.c │ │ │ │ ├── bsp.h │ │ │ │ ├── include/ │ │ │ │ │ ├── arm_common_tables.h │ │ │ │ │ ├── arm_const_structs.h │ │ │ │ │ ├── arm_math.h │ │ │ │ │ ├── cmsis_armcc.h │ │ │ │ │ ├── cmsis_armcc_V6.h │ │ │ │ │ ├── cmsis_gcc.h │ │ │ │ │ ├── core_cm0.h │ │ │ │ │ ├── core_cm0plus.h │ │ │ │ │ ├── core_cm3.h │ │ │ │ │ ├── core_cm4.h │ │ │ │ │ ├── core_cm7.h │ │ │ │ │ ├── core_cmFunc.h │ │ │ │ │ ├── core_cmInstr.h │ │ │ │ │ ├── core_cmSimd.h │ │ │ │ │ ├── core_sc000.h │ │ │ │ │ └── core_sc300.h │ │ │ │ ├── ldscript/ │ │ │ │ │ └── opencr_flash.ld │ │ │ │ ├── startup/ │ │ │ │ │ └── startup_stm32f746xx.S │ │ │ │ ├── stm32f746xx.h │ │ │ │ ├── stm32f7xx.h │ │ │ │ ├── stm32f7xx_hal_conf.h │ │ │ │ ├── stm32f7xx_it.c │ │ │ │ ├── stm32f7xx_it.h │ │ │ │ ├── syscalls.c │ │ │ │ ├── system_clock.c │ │ │ │ ├── system_clock.h │ │ │ │ ├── system_stm32f7xx.c │ │ │ │ └── system_stm32f7xx.h │ │ │ ├── chip.h │ │ │ ├── hw/ │ │ │ │ ├── def.h │ │ │ │ ├── def_err.h │ │ │ │ ├── driver/ │ │ │ │ │ ├── delay.c │ │ │ │ │ ├── delay.h │ │ │ │ │ ├── dma_stream_handlers.c │ │ │ │ │ ├── dma_stream_handlers.h │ │ │ │ │ ├── drv_adc.c │ │ │ │ │ ├── drv_adc.h │ │ │ │ │ ├── drv_can.c │ │ │ │ │ ├── drv_can.h │ │ │ │ │ ├── drv_dxl.c │ │ │ │ │ ├── drv_dxl.h │ │ │ │ │ ├── drv_eeprom.c │ │ │ │ │ ├── drv_eeprom.h │ │ │ │ │ ├── drv_exti.c │ │ │ │ │ ├── drv_exti.h │ │ │ │ │ ├── drv_i2c.c │ │ │ │ │ ├── drv_i2c.h │ │ │ │ │ ├── drv_micros.c │ │ │ │ │ ├── drv_micros.h │ │ │ │ │ ├── drv_pwm.c │ │ │ │ │ ├── drv_pwm.h │ │ │ │ │ ├── drv_rtc.c │ │ │ │ │ ├── drv_rtc.h │ │ │ │ │ ├── drv_spi.c │ │ │ │ │ ├── drv_spi.h │ │ │ │ │ ├── drv_timer.c │ │ │ │ │ ├── drv_timer.h │ │ │ │ │ ├── drv_uart.c │ │ │ │ │ ├── drv_uart.h │ │ │ │ │ ├── flash.c │ │ │ │ │ ├── flash.h │ │ │ │ │ ├── ring.c │ │ │ │ │ ├── ring.h │ │ │ │ │ ├── vcp.c │ │ │ │ │ ├── vcp.h │ │ │ │ │ ├── wdg.c │ │ │ │ │ └── wdg.h │ │ │ │ ├── hw.c │ │ │ │ ├── hw.h │ │ │ │ └── usb_cdc/ │ │ │ │ ├── usbd_cdc.c │ │ │ │ ├── usbd_cdc.h │ │ │ │ ├── usbd_cdc_interface.c │ │ │ │ ├── usbd_cdc_interface.h │ │ │ │ ├── usbd_conf.c │ │ │ │ ├── usbd_conf.h │ │ │ │ ├── usbd_core.c │ │ │ │ ├── usbd_core.h │ │ │ │ ├── usbd_ctlreq.c │ │ │ │ ├── usbd_ctlreq.h │ │ │ │ ├── usbd_def.h │ │ │ │ ├── usbd_desc.c │ │ │ │ ├── usbd_desc.h │ │ │ │ ├── usbd_ioreq.c │ │ │ │ └── usbd_ioreq.h │ │ │ ├── lib/ │ │ │ │ └── STM32F7xx_HAL_Driver/ │ │ │ │ ├── Inc/ │ │ │ │ │ ├── Legacy/ │ │ │ │ │ │ └── stm32_hal_legacy.h │ │ │ │ │ ├── stm32f7xx_hal.h │ │ │ │ │ ├── stm32f7xx_hal_adc.h │ │ │ │ │ ├── stm32f7xx_hal_adc_ex.h │ │ │ │ │ ├── stm32f7xx_hal_can.h │ │ │ │ │ ├── stm32f7xx_hal_cec.h │ │ │ │ │ ├── stm32f7xx_hal_cortex.h │ │ │ │ │ ├── stm32f7xx_hal_crc.h │ │ │ │ │ ├── stm32f7xx_hal_crc_ex.h │ │ │ │ │ ├── stm32f7xx_hal_cryp.h │ │ │ │ │ ├── stm32f7xx_hal_cryp_ex.h │ │ │ │ │ ├── stm32f7xx_hal_dac.h │ │ │ │ │ ├── stm32f7xx_hal_dac_ex.h │ │ │ │ │ ├── stm32f7xx_hal_dcmi.h │ │ │ │ │ ├── stm32f7xx_hal_dcmi_ex.h │ │ │ │ │ ├── stm32f7xx_hal_def.h │ │ │ │ │ ├── stm32f7xx_hal_dma.h │ │ │ │ │ ├── stm32f7xx_hal_dma2d.h │ │ │ │ │ ├── stm32f7xx_hal_dma_ex.h │ │ │ │ │ ├── stm32f7xx_hal_eth.h │ │ │ │ │ ├── stm32f7xx_hal_flash.h │ │ │ │ │ ├── stm32f7xx_hal_flash_ex.h │ │ │ │ │ ├── stm32f7xx_hal_gpio.h │ │ │ │ │ ├── stm32f7xx_hal_gpio_ex.h │ │ │ │ │ ├── stm32f7xx_hal_hash.h │ │ │ │ │ ├── stm32f7xx_hal_hash_ex.h │ │ │ │ │ ├── stm32f7xx_hal_hcd.h │ │ │ │ │ ├── stm32f7xx_hal_i2c.h │ │ │ │ │ ├── stm32f7xx_hal_i2c_ex.h │ │ │ │ │ ├── stm32f7xx_hal_i2s.h │ │ │ │ │ ├── stm32f7xx_hal_irda.h │ │ │ │ │ ├── stm32f7xx_hal_irda_ex.h │ │ │ │ │ ├── stm32f7xx_hal_iwdg.h │ │ │ │ │ ├── stm32f7xx_hal_lptim.h │ │ │ │ │ ├── stm32f7xx_hal_ltdc.h │ │ │ │ │ ├── stm32f7xx_hal_nand.h │ │ │ │ │ ├── stm32f7xx_hal_nor.h │ │ │ │ │ ├── stm32f7xx_hal_pcd.h │ │ │ │ │ ├── stm32f7xx_hal_pcd_ex.h │ │ │ │ │ ├── stm32f7xx_hal_pwr.h │ │ │ │ │ ├── stm32f7xx_hal_pwr_ex.h │ │ │ │ │ ├── stm32f7xx_hal_qspi.h │ │ │ │ │ ├── stm32f7xx_hal_rcc.h │ │ │ │ │ ├── stm32f7xx_hal_rcc_ex.h │ │ │ │ │ ├── stm32f7xx_hal_rng.h │ │ │ │ │ ├── stm32f7xx_hal_rtc.h │ │ │ │ │ ├── stm32f7xx_hal_rtc_ex.h │ │ │ │ │ ├── stm32f7xx_hal_sai.h │ │ │ │ │ ├── stm32f7xx_hal_sai_ex.h │ │ │ │ │ ├── stm32f7xx_hal_sd.h │ │ │ │ │ ├── stm32f7xx_hal_sdram.h │ │ │ │ │ ├── stm32f7xx_hal_smartcard.h │ │ │ │ │ ├── stm32f7xx_hal_smartcard_ex.h │ │ │ │ │ ├── stm32f7xx_hal_spdifrx.h │ │ │ │ │ ├── stm32f7xx_hal_spi.h │ │ │ │ │ ├── stm32f7xx_hal_sram.h │ │ │ │ │ ├── stm32f7xx_hal_tim.h │ │ │ │ │ ├── stm32f7xx_hal_tim_ex.h │ │ │ │ │ ├── stm32f7xx_hal_uart.h │ │ │ │ │ ├── stm32f7xx_hal_uart_ex.h │ │ │ │ │ ├── stm32f7xx_hal_usart.h │ │ │ │ │ ├── stm32f7xx_hal_usart_ex.h │ │ │ │ │ ├── stm32f7xx_hal_wwdg.h │ │ │ │ │ ├── stm32f7xx_ll_fmc.h │ │ │ │ │ ├── stm32f7xx_ll_sdmmc.h │ │ │ │ │ └── stm32f7xx_ll_usb.h │ │ │ │ ├── Release_Notes.html │ │ │ │ └── Src/ │ │ │ │ ├── stm32f7xx_hal.c │ │ │ │ ├── stm32f7xx_hal_adc.c │ │ │ │ ├── stm32f7xx_hal_adc_ex.c │ │ │ │ ├── stm32f7xx_hal_can.c │ │ │ │ ├── stm32f7xx_hal_cec.c │ │ │ │ ├── stm32f7xx_hal_cortex.c │ │ │ │ ├── stm32f7xx_hal_crc.c │ │ │ │ ├── stm32f7xx_hal_crc_ex.c │ │ │ │ ├── stm32f7xx_hal_cryp.c │ │ │ │ ├── stm32f7xx_hal_cryp_ex.c │ │ │ │ ├── stm32f7xx_hal_dma.c │ │ │ │ ├── stm32f7xx_hal_dma2d.c │ │ │ │ ├── stm32f7xx_hal_dma_ex.c │ │ │ │ ├── stm32f7xx_hal_flash.c │ │ │ │ ├── stm32f7xx_hal_flash_ex.c │ │ │ │ ├── stm32f7xx_hal_gpio.c │ │ │ │ ├── stm32f7xx_hal_hash.c │ │ │ │ ├── stm32f7xx_hal_hash_ex.c │ │ │ │ ├── stm32f7xx_hal_hcd.c │ │ │ │ ├── stm32f7xx_hal_i2c.c │ │ │ │ ├── stm32f7xx_hal_i2c_ex.c │ │ │ │ ├── stm32f7xx_hal_i2s.c │ │ │ │ ├── stm32f7xx_hal_iwdg.c │ │ │ │ ├── stm32f7xx_hal_lptim.c │ │ │ │ ├── stm32f7xx_hal_ltdc.c │ │ │ │ ├── stm32f7xx_hal_pcd.c │ │ │ │ ├── stm32f7xx_hal_pcd_ex.c │ │ │ │ ├── stm32f7xx_hal_pwr.c │ │ │ │ ├── stm32f7xx_hal_pwr_ex.c │ │ │ │ ├── stm32f7xx_hal_rcc.c │ │ │ │ ├── stm32f7xx_hal_rcc_ex.c │ │ │ │ ├── stm32f7xx_hal_rng.c │ │ │ │ ├── stm32f7xx_hal_rtc.c │ │ │ │ ├── stm32f7xx_hal_rtc_ex.c │ │ │ │ ├── stm32f7xx_hal_sd.c │ │ │ │ ├── stm32f7xx_hal_spi.c │ │ │ │ ├── stm32f7xx_hal_tim.c │ │ │ │ ├── stm32f7xx_hal_uart.c │ │ │ │ ├── stm32f7xx_hal_usart.c │ │ │ │ ├── stm32f7xx_hal_wwdg.c │ │ │ │ ├── stm32f7xx_ll_sdmmc.c │ │ │ │ └── stm32f7xx_ll_usb.c │ │ │ ├── main.cpp │ │ │ ├── pins_arduino.h │ │ │ ├── variant.cpp │ │ │ └── variant.h │ │ └── tools/ │ │ └── opencr_tools_1.0.0/ │ │ ├── linux/ │ │ │ ├── dfu-util/ │ │ │ │ ├── dfu-prefix │ │ │ │ ├── dfu-suffix │ │ │ │ └── dfu-util │ │ │ └── opencr_ld │ │ ├── linux64/ │ │ │ ├── dfu-util/ │ │ │ │ ├── dfu-prefix │ │ │ │ ├── dfu-suffix │ │ │ │ └── dfu-util │ │ │ └── opencr_ld │ │ └── macosx/ │ │ ├── dfu-util/ │ │ │ ├── dfu-prefix │ │ │ ├── dfu-suffix │ │ │ └── dfu-util │ │ └── opencr_ld │ ├── opencr_develop/ │ │ ├── opencr_bootloader/ │ │ │ ├── .cproject │ │ │ ├── .gitignore │ │ │ ├── .project │ │ │ ├── Makefile │ │ │ ├── bin/ │ │ │ │ └── obj/ │ │ │ │ └── README │ │ │ ├── common/ │ │ │ │ ├── bsp/ │ │ │ │ │ └── opencr/ │ │ │ │ │ ├── bsp.c │ │ │ │ │ ├── bsp.h │ │ │ │ │ ├── button.c │ │ │ │ │ ├── button.h │ │ │ │ │ ├── cfg/ │ │ │ │ │ │ ├── startup_stm32f746xx.s │ │ │ │ │ │ ├── stm32f746xx.h │ │ │ │ │ │ ├── stm32f7xx.h │ │ │ │ │ │ ├── stm32f7xx_hal_conf.h │ │ │ │ │ │ ├── stm32f7xx_it.c │ │ │ │ │ │ ├── stm32f7xx_it.h │ │ │ │ │ │ ├── syscalls.c │ │ │ │ │ │ ├── system_clock.c │ │ │ │ │ │ ├── system_clock.h │ │ │ │ │ │ ├── system_stm32f7xx.c │ │ │ │ │ │ └── system_stm32f7xx.h │ │ │ │ │ ├── include/ │ │ │ │ │ │ ├── arm_common_tables.h │ │ │ │ │ │ ├── arm_const_structs.h │ │ │ │ │ │ ├── arm_math.h │ │ │ │ │ │ ├── cmsis_armcc.h │ │ │ │ │ │ ├── cmsis_armcc_V6.h │ │ │ │ │ │ ├── cmsis_gcc.h │ │ │ │ │ │ ├── core_cm0.h │ │ │ │ │ │ ├── core_cm0plus.h │ │ │ │ │ │ ├── core_cm3.h │ │ │ │ │ │ ├── core_cm4.h │ │ │ │ │ │ ├── core_cm7.h │ │ │ │ │ │ ├── core_cmFunc.h │ │ │ │ │ │ ├── core_cmInstr.h │ │ │ │ │ │ ├── core_cmSimd.h │ │ │ │ │ │ ├── core_sc000.h │ │ │ │ │ │ └── core_sc300.h │ │ │ │ │ ├── ld/ │ │ │ │ │ │ └── opencr_flash.ld │ │ │ │ │ ├── led.c │ │ │ │ │ ├── led.h │ │ │ │ │ ├── usbd_cdc.c │ │ │ │ │ ├── usbd_cdc.h │ │ │ │ │ ├── usbd_cdc_interface.c │ │ │ │ │ ├── usbd_cdc_interface.h │ │ │ │ │ ├── usbd_conf.c │ │ │ │ │ ├── usbd_conf.h │ │ │ │ │ ├── usbd_desc.c │ │ │ │ │ ├── usbd_desc.h │ │ │ │ │ ├── wdg.c │ │ │ │ │ └── wdg.h │ │ │ │ ├── hal/ │ │ │ │ │ ├── def.h │ │ │ │ │ ├── def_err.h │ │ │ │ │ ├── delay.c │ │ │ │ │ ├── delay.h │ │ │ │ │ ├── flash.c │ │ │ │ │ ├── flash.h │ │ │ │ │ ├── hal.c │ │ │ │ │ ├── hal.h │ │ │ │ │ ├── msg.c │ │ │ │ │ ├── msg.h │ │ │ │ │ ├── util.c │ │ │ │ │ ├── util.h │ │ │ │ │ ├── vcp.c │ │ │ │ │ └── vcp.h │ │ │ │ ├── lib/ │ │ │ │ │ ├── STM32F7xx_HAL_Driver/ │ │ │ │ │ │ ├── Inc/ │ │ │ │ │ │ │ ├── Legacy/ │ │ │ │ │ │ │ │ └── stm32_hal_legacy.h │ │ │ │ │ │ │ ├── stm32f7xx_hal.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_adc.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_adc_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_can.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_cec.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_conf_template.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_cortex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_crc.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_crc_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_cryp.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_cryp_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_dac.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_dac_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_dcmi.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_dcmi_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_def.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_dfsdm.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_dma.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_dma2d.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_dma_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_dsi.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_eth.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_flash.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_flash_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_gpio.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_gpio_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_hash.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_hash_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_hcd.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_i2c.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_i2c_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_i2s.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_irda.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_irda_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_iwdg.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_jpeg.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_lptim.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_ltdc.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_ltdc_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_mdios.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_nand.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_nor.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_pcd.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_pcd_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_pwr.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_pwr_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_qspi.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_rcc.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_rcc_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_rng.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_rtc.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_rtc_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_sai.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_sai_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_sd.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_sdram.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_smartcard.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_smartcard_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_spdifrx.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_spi.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_sram.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_tim.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_tim_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_uart.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_uart_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_usart.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_usart_ex.h │ │ │ │ │ │ │ ├── stm32f7xx_hal_wwdg.h │ │ │ │ │ │ │ ├── stm32f7xx_ll_fmc.h │ │ │ │ │ │ │ ├── stm32f7xx_ll_sdmmc.h │ │ │ │ │ │ │ └── stm32f7xx_ll_usb.h │ │ │ │ │ │ ├── Release_Notes.html │ │ │ │ │ │ └── Src/ │ │ │ │ │ │ ├── stm32f7xx_hal.c │ │ │ │ │ │ ├── stm32f7xx_hal_adc.c │ │ │ │ │ │ ├── stm32f7xx_hal_adc_ex.c │ │ │ │ │ │ ├── stm32f7xx_hal_can.c │ │ │ │ │ │ ├── stm32f7xx_hal_cec.c │ │ │ │ │ │ ├── stm32f7xx_hal_cortex.c │ │ │ │ │ │ ├── stm32f7xx_hal_crc.c │ │ │ │ │ │ ├── stm32f7xx_hal_crc_ex.c │ │ │ │ │ │ ├── stm32f7xx_hal_cryp.c │ │ │ │ │ │ ├── stm32f7xx_hal_cryp_ex.c │ │ │ │ │ │ ├── stm32f7xx_hal_dac.c │ │ │ │ │ │ ├── stm32f7xx_hal_dac_ex.c │ │ │ │ │ │ ├── stm32f7xx_hal_dcmi.c │ │ │ │ │ │ ├── stm32f7xx_hal_dcmi_ex.c │ │ │ │ │ │ ├── stm32f7xx_hal_dfsdm.c │ │ │ │ │ │ ├── stm32f7xx_hal_dma.c │ │ │ │ │ │ ├── stm32f7xx_hal_dma2d.c │ │ │ │ │ │ ├── stm32f7xx_hal_dma_ex.c │ │ │ │ │ │ ├── stm32f7xx_hal_dsi.c │ │ │ │ │ │ ├── stm32f7xx_hal_eth.c │ │ │ │ │ │ ├── stm32f7xx_hal_flash.c │ │ │ │ │ │ ├── stm32f7xx_hal_flash_ex.c │ │ │ │ │ │ ├── stm32f7xx_hal_gpio.c │ │ │ │ │ │ ├── stm32f7xx_hal_hash.c │ │ │ │ │ │ ├── stm32f7xx_hal_hash_ex.c │ │ │ │ │ │ ├── stm32f7xx_hal_hcd.c │ │ │ │ │ │ ├── stm32f7xx_hal_i2c.c │ │ │ │ │ │ ├── stm32f7xx_hal_i2c_ex.c │ │ │ │ │ │ ├── stm32f7xx_hal_i2s.c │ │ │ │ │ │ ├── stm32f7xx_hal_irda.c │ │ │ │ │ │ ├── stm32f7xx_hal_iwdg.c │ │ │ │ │ │ ├── stm32f7xx_hal_jpeg.c │ │ │ │ │ │ ├── stm32f7xx_hal_lptim.c │ │ │ │ │ │ ├── stm32f7xx_hal_ltdc.c │ │ │ │ │ │ ├── stm32f7xx_hal_ltdc_ex.c │ │ │ │ │ │ ├── stm32f7xx_hal_mdios.c │ │ │ │ │ │ ├── stm32f7xx_hal_msp_template.c │ │ │ │ │ │ ├── stm32f7xx_hal_nand.c │ │ │ │ │ │ ├── stm32f7xx_hal_nor.c │ │ │ │ │ │ ├── stm32f7xx_hal_pcd.c │ │ │ │ │ │ ├── stm32f7xx_hal_pcd_ex.c │ │ │ │ │ │ ├── stm32f7xx_hal_pwr.c │ │ │ │ │ │ ├── stm32f7xx_hal_pwr_ex.c │ │ │ │ │ │ ├── stm32f7xx_hal_qspi.c │ │ │ │ │ │ ├── stm32f7xx_hal_rcc.c │ │ │ │ │ │ ├── stm32f7xx_hal_rcc_ex.c │ │ │ │ │ │ ├── stm32f7xx_hal_rng.c │ │ │ │ │ │ ├── stm32f7xx_hal_rtc.c │ │ │ │ │ │ ├── stm32f7xx_hal_rtc_ex.c │ │ │ │ │ │ ├── stm32f7xx_hal_sai.c │ │ │ │ │ │ ├── stm32f7xx_hal_sai_ex.c │ │ │ │ │ │ ├── stm32f7xx_hal_sd.c │ │ │ │ │ │ ├── stm32f7xx_hal_sdram.c │ │ │ │ │ │ ├── stm32f7xx_hal_smartcard.c │ │ │ │ │ │ ├── stm32f7xx_hal_smartcard_ex.c │ │ │ │ │ │ ├── stm32f7xx_hal_spdifrx.c │ │ │ │ │ │ ├── stm32f7xx_hal_spi.c │ │ │ │ │ │ ├── stm32f7xx_hal_sram.c │ │ │ │ │ │ ├── stm32f7xx_hal_tim.c │ │ │ │ │ │ ├── stm32f7xx_hal_tim_ex.c │ │ │ │ │ │ ├── stm32f7xx_hal_timebase_tim_template.c │ │ │ │ │ │ ├── stm32f7xx_hal_uart.c │ │ │ │ │ │ ├── stm32f7xx_hal_usart.c │ │ │ │ │ │ ├── stm32f7xx_hal_wwdg.c │ │ │ │ │ │ ├── stm32f7xx_ll_fmc.c │ │ │ │ │ │ ├── stm32f7xx_ll_sdmmc.c │ │ │ │ │ │ └── stm32f7xx_ll_usb.c │ │ │ │ │ └── STM32_USB_Device_Library/ │ │ │ │ │ ├── Class/ │ │ │ │ │ │ ├── AUDIO/ │ │ │ │ │ │ │ ├── Inc/ │ │ │ │ │ │ │ │ ├── usbd_audio.h │ │ │ │ │ │ │ │ └── usbd_audio_if_template.h │ │ │ │ │ │ │ └── Src/ │ │ │ │ │ │ │ ├── usbd_audio.c │ │ │ │ │ │ │ └── usbd_audio_if_template.c │ │ │ │ │ │ ├── CDC/ │ │ │ │ │ │ │ ├── Inc/ │ │ │ │ │ │ │ │ ├── usbd_cdc.h │ │ │ │ │ │ │ │ └── usbd_cdc_if_template.h │ │ │ │ │ │ │ └── Src/ │ │ │ │ │ │ │ └── usbd_cdc.c │ │ │ │ │ │ ├── CustomHID/ │ │ │ │ │ │ │ ├── Inc/ │ │ │ │ │ │ │ │ ├── usbd_customhid.h │ │ │ │ │ │ │ │ └── usbd_customhid_if_template.h │ │ │ │ │ │ │ └── Src/ │ │ │ │ │ │ │ ├── usbd_customhid.c │ │ │ │ │ │ │ └── usbd_customhid_if_template.c │ │ │ │ │ │ ├── DFU/ │ │ │ │ │ │ │ ├── Inc/ │ │ │ │ │ │ │ │ ├── usbd_dfu.h │ │ │ │ │ │ │ │ └── usbd_dfu_media_template.h │ │ │ │ │ │ │ └── Src/ │ │ │ │ │ │ │ ├── usbd_dfu.c │ │ │ │ │ │ │ └── usbd_dfu_media_template.c │ │ │ │ │ │ ├── HID/ │ │ │ │ │ │ │ ├── Inc/ │ │ │ │ │ │ │ │ └── usbd_hid.h │ │ │ │ │ │ │ └── Src/ │ │ │ │ │ │ │ └── usbd_hid.c │ │ │ │ │ │ ├── MSC/ │ │ │ │ │ │ │ ├── Inc/ │ │ │ │ │ │ │ │ ├── usbd_msc.h │ │ │ │ │ │ │ │ ├── usbd_msc_bot.h │ │ │ │ │ │ │ │ ├── usbd_msc_data.h │ │ │ │ │ │ │ │ ├── usbd_msc_scsi.h │ │ │ │ │ │ │ │ └── usbd_msc_storage_template.h │ │ │ │ │ │ │ └── Src/ │ │ │ │ │ │ │ ├── usbd_msc.c │ │ │ │ │ │ │ ├── usbd_msc_bot.c │ │ │ │ │ │ │ ├── usbd_msc_data.c │ │ │ │ │ │ │ ├── usbd_msc_scsi.c │ │ │ │ │ │ │ └── usbd_msc_storage_template.c │ │ │ │ │ │ └── Template/ │ │ │ │ │ │ ├── Inc/ │ │ │ │ │ │ │ └── usbd_template.h │ │ │ │ │ │ └── Src/ │ │ │ │ │ │ └── usbd_template.c │ │ │ │ │ ├── Core/ │ │ │ │ │ │ ├── Inc/ │ │ │ │ │ │ │ ├── usbd_conf_template.h │ │ │ │ │ │ │ ├── usbd_core.h │ │ │ │ │ │ │ ├── usbd_ctlreq.h │ │ │ │ │ │ │ ├── usbd_def.h │ │ │ │ │ │ │ └── usbd_ioreq.h │ │ │ │ │ │ └── Src/ │ │ │ │ │ │ ├── usbd_core.c │ │ │ │ │ │ ├── usbd_ctlreq.c │ │ │ │ │ │ └── usbd_ioreq.c │ │ │ │ │ └── Release_Notes.html │ │ │ │ └── msg/ │ │ │ │ ├── mavlink/ │ │ │ │ │ ├── checksum.h │ │ │ │ │ ├── mavlink_conversions.h │ │ │ │ │ ├── mavlink_helpers.h │ │ │ │ │ ├── mavlink_types.h │ │ │ │ │ ├── opencr_msg/ │ │ │ │ │ │ ├── mavlink.h │ │ │ │ │ │ ├── mavlink_msg_ack.h │ │ │ │ │ │ ├── mavlink_msg_flash_fw_erase.h │ │ │ │ │ │ ├── mavlink_msg_flash_fw_read_block.h │ │ │ │ │ │ ├── mavlink_msg_flash_fw_read_packet.h │ │ │ │ │ │ ├── mavlink_msg_flash_fw_verify.h │ │ │ │ │ │ ├── mavlink_msg_flash_fw_write_begin.h │ │ │ │ │ │ ├── mavlink_msg_flash_fw_write_block.h │ │ │ │ │ │ ├── mavlink_msg_flash_fw_write_end.h │ │ │ │ │ │ ├── mavlink_msg_flash_fw_write_packet.h │ │ │ │ │ │ ├── mavlink_msg_jump_to_fw.h │ │ │ │ │ │ ├── mavlink_msg_read_board_name.h │ │ │ │ │ │ ├── mavlink_msg_read_tag.h │ │ │ │ │ │ ├── mavlink_msg_read_version.h │ │ │ │ │ │ ├── opencr_msg.h │ │ │ │ │ │ ├── testsuite.h │ │ │ │ │ │ └── version.h │ │ │ │ │ └── protocol.h │ │ │ │ └── xml/ │ │ │ │ └── opencr_msg │ │ │ ├── main.c │ │ │ ├── main.h │ │ │ ├── opencr_flash.cfg │ │ │ ├── opencr_openocd.cfg │ │ │ └── src/ │ │ │ ├── cmd.c │ │ │ ├── cmd.h │ │ │ ├── crc.c │ │ │ └── crc.h │ │ ├── opencr_ld/ │ │ │ ├── .cproject │ │ │ ├── .gitignore │ │ │ ├── .project │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── gcc_win/ │ │ │ │ ├── .cproject │ │ │ │ ├── .gitignore │ │ │ │ └── .project │ │ │ ├── images/ │ │ │ │ └── linux_180529/ │ │ │ │ └── opencr_ld.tar.bz2 │ │ │ ├── main.c │ │ │ ├── msg/ │ │ │ │ ├── def.h │ │ │ │ ├── def_err.h │ │ │ │ ├── mavlink/ │ │ │ │ │ ├── checksum.h │ │ │ │ │ ├── mavlink_conversions.h │ │ │ │ │ ├── mavlink_helpers.h │ │ │ │ │ ├── mavlink_types.h │ │ │ │ │ ├── opencr_msg/ │ │ │ │ │ │ ├── mavlink.h │ │ │ │ │ │ ├── mavlink_msg_ack.h │ │ │ │ │ │ ├── mavlink_msg_flash_fw_erase.h │ │ │ │ │ │ ├── mavlink_msg_flash_fw_read_block.h │ │ │ │ │ │ ├── mavlink_msg_flash_fw_read_packet.h │ │ │ │ │ │ ├── mavlink_msg_flash_fw_verify.h │ │ │ │ │ │ ├── mavlink_msg_flash_fw_write_begin.h │ │ │ │ │ │ ├── mavlink_msg_flash_fw_write_block.h │ │ │ │ │ │ ├── mavlink_msg_flash_fw_write_end.h │ │ │ │ │ │ ├── mavlink_msg_flash_fw_write_packet.h │ │ │ │ │ │ ├── mavlink_msg_jump_to_fw.h │ │ │ │ │ │ ├── mavlink_msg_read_board_name.h │ │ │ │ │ │ ├── mavlink_msg_read_tag.h │ │ │ │ │ │ ├── mavlink_msg_read_version.h │ │ │ │ │ │ ├── opencr_msg.h │ │ │ │ │ │ ├── testsuite.h │ │ │ │ │ │ └── version.h │ │ │ │ │ └── protocol.h │ │ │ │ ├── msg.c │ │ │ │ ├── msg.h │ │ │ │ └── xml/ │ │ │ │ └── opencr_msg │ │ │ ├── opencr_ld.c │ │ │ ├── opencr_ld.h │ │ │ ├── qt_win/ │ │ │ │ └── opencr_ld_win/ │ │ │ │ └── opencr_ld/ │ │ │ │ ├── main.c │ │ │ │ └── opencr_ld.pro │ │ │ ├── serial.h │ │ │ ├── serial_posix.c │ │ │ ├── serial_win32.c │ │ │ └── type.h │ │ └── opencr_ld_shell/ │ │ ├── .cproject │ │ ├── .gitignore │ │ ├── .project │ │ ├── Makefile │ │ ├── README.md │ │ ├── install_opencr.sh │ │ ├── main.c │ │ ├── msg/ │ │ │ ├── def.h │ │ │ ├── def_err.h │ │ │ ├── mavlink/ │ │ │ │ ├── checksum.h │ │ │ │ ├── mavlink_conversions.h │ │ │ │ ├── mavlink_helpers.h │ │ │ │ ├── mavlink_types.h │ │ │ │ ├── opencr_msg/ │ │ │ │ │ ├── mavlink.h │ │ │ │ │ ├── mavlink_msg_ack.h │ │ │ │ │ ├── mavlink_msg_flash_fw_erase.h │ │ │ │ │ ├── mavlink_msg_flash_fw_read_block.h │ │ │ │ │ ├── mavlink_msg_flash_fw_read_packet.h │ │ │ │ │ ├── mavlink_msg_flash_fw_verify.h │ │ │ │ │ ├── mavlink_msg_flash_fw_write_begin.h │ │ │ │ │ ├── mavlink_msg_flash_fw_write_block.h │ │ │ │ │ ├── mavlink_msg_flash_fw_write_end.h │ │ │ │ │ ├── mavlink_msg_flash_fw_write_packet.h │ │ │ │ │ ├── mavlink_msg_jump_to_fw.h │ │ │ │ │ ├── mavlink_msg_read_board_name.h │ │ │ │ │ ├── mavlink_msg_read_tag.h │ │ │ │ │ ├── mavlink_msg_read_version.h │ │ │ │ │ ├── opencr_msg.h │ │ │ │ │ ├── testsuite.h │ │ │ │ │ └── version.h │ │ │ │ └── protocol.h │ │ │ ├── msg.c │ │ │ ├── msg.h │ │ │ └── xml/ │ │ │ └── opencr_msg │ │ ├── opencr_ld.c │ │ ├── opencr_ld.h │ │ ├── opencr_ld_shell_arm │ │ ├── opencr_ld_shell_x86 │ │ ├── qt_win/ │ │ │ └── opencr_ld_win/ │ │ │ └── opencr_ld/ │ │ │ ├── .gitignore │ │ │ ├── main.c │ │ │ ├── opencr_ld.pro │ │ │ └── opencr_ld.pro.user │ │ ├── serial.h │ │ ├── serial_posix.c │ │ ├── serial_win32.c │ │ ├── type.h │ │ └── update.sh │ └── opencr_release/ │ └── package_opencr_index.json └── install.sh