Skip to content

A cross-platform app that allows for building and simulating FRC electronics in real time

License

Notifications You must be signed in to change notification settings

MittyRobotics/tko-electronics-sim

Repository files navigation

TKO Circuit Simulator

FRC circuit simulator for electronics diagramming and rookie training.
Created by TKO Programming (Rohan Bansal and Andy Li).

Winner of the 2021 KLA Software Engineering Award!

tkosim.mp4

Features

  • Circuit diagramming with FRC parts (see subsection below for list)
  • Creating, moving, connecting devices with cables
  • Saving/importing circuits as shareable files
  • Simulation for wiring errors
  • Simple LED simulation
  • 2D CAD-inspired GUI
  • Keybinds, help menu, options menu, and other QOL features
  • Packages for easy installation (support for Windows, MacOS, Linux)

diagram

Future Updates

  • Enable resizing
  • Future hardware (limelight, RSL, sensors, servos, etc.)
  • Twisted cables and groups of three cables for RoboRIO
  • Accurate scaling of parts on a blocks-per-inch grid for E-Plate diagramming
  • Cleaner code

Installation

Official Packaging

Head over to the releases page and download the binary for your platform. Directions for installation can also be found there.

Building from Source

We constantly commit partially finished new features or bug fixes, so we suggest that you use the latest stable release instead. Proceed at your own risk.

  1. Clone the repository using git
  2. Run gradlew build and then gradlew run in a console in the top directory

If you use Linux/Mac OS, run ./gradlew build and then ./gradlew run in a console in the top directory.
If it says permission denied, do chmod +x gradlew.

Due to compatibility issues with LWJGL3 and the M1 chipset, the mac version pf the simulator still uses LWJGL2. Functionality should be close to identical. Mac OS only: switch to the lwjgl2-macs branch to run. Otherwise, app may freeze during usage.

Device/Component List

Hardware

  • Battery
  • Breaker
  • Compressor
  • Double WAGO
  • Falcon
  • Manifold (with double solenoids attached)
  • 775 Motor
  • NEO
  • Pneumatics Control Module (PCM)
  • Power Distribution Panel (PDP)
  • Voltage Regulator Module (VRM)
  • Piston
  • Pressure Switch
  • Radio
  • RoboRIO
  • Regulator + Gauge
  • Relief Valve Complex
  • Spark
  • Talon
  • Tank
  • T-Connector

Cables

  • Regular cables (4, 12, 18, 22 AWG)
  • Crimped cables (4, 12, 18, 22 AWG)
  • Ethernet
  • Pneumatics tubing