Giter Site home page Giter Site logo

robinsound / smartsetapps Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kinesiscorporation/smartsetapps

0.0 0.0 0.0 128.89 MB

SmartSet apps for keyboards, foots pedals and more

License: GNU General Public License v3.0

Pascal 76.47% Batchfile 0.02% PHP 0.01% Shell 0.03% C# 0.03% Java 0.01% XSLT 0.01% VBScript 0.01% Rich Text Format 2.73% HTML 7.91% CSS 0.02% JavaScript 0.03% Makefile 0.01% Pawn 0.03% NASL 11.03% POV-Ray SDL 1.67%

smartsetapps's Introduction

SmartSetApps

This repository is for SmartSet apps used for Kinesis Corporation keyboards and foot pedals. All apps are build using Lazarus IDE (pascal programming language): https://www.lazarus-ide.org/. These apps currently support Windows 32-bit and MacOS 32-bit/64-bit.

You can get compiled versions of the Apps and detailed installation and usage instructions on these websites:

SmartSet Apps are designed as a lightweight GUI to read and write to the simple .txt configuration files stored on virtual flash drive (aka the "v-Drive") of each (programmable) Kinesis and Kinesis Gaming keyboard and foot pedal. At present, each device has its own unique version of the SmartSet App which reflects unique drive names, folder structures, programming syntax, firmware features, and App functionality.

Windows and/or Mac Apps are pre-loaded on to most devices and were originally intended to be run directly from the v-Drive for maximum convenience and portability. New versions of the SmartSet App are designed to run from the "desktop" with the v-Drive simply "connected" to your PC.

Getting started

Install the latest version of Lazarus IDE for your computer. Windows 32-bit version and Mac 64-bit for Catalina/Big Sur. Go to the lazarus-ide website: https://www.lazarus-ide.org/

Windows

You must download the 32-bit version of the IDE for Windows, download and run the setup. NOTE: keep default settings for all installation steps.

Mac

Do all these steps on your Mac computer.

If you have any issues please look at this documentation: https://wiki.freepascal.org/Installing_Lazarus_on_macOS

Configuration for Mac

  • (Catalina Only) Click on Tools -> Options -> Debugger, select LLDB debugger (with fpdebug) (Beta).
    Path should be: /Library/Developer/CommandLineTools/usr/bin/lldb
  • If you receive a "Can't find unit Interfaces used by Project1" error on trying to compile a blank form, check the following settings in Lazarus (should be set by default):
  • (Catalina Only) Tools -> Options -> Environment Options
    • Lazarus directory: /Developer/lazarus
    • Compiler path: /usr/local/bin/fpc
    • FPC Source: /usr/local/share/fpcsrc (note: don’t change on Catalina)
  • (Catalina Only) Tool -> Configure Lazarus:
    • LCL widget type: cocoa
    • Target CPU: x86_64
    • Save Settings / Build

See Known issues section if you have issues with your installation.

Installation

Source folders

Here is a description of what each folder contains.

  • Common: contain common code shared amongst all apps.
  • Components: third-party and custom components used in apps, some third party components have been modified / fixed.
  • SmartSetAdv2: Advantage2 keyboard app.
  • SmartSetFSEdgePro: Freestyle Pro and Freestyle Edge app (same app customized depending on keyboard version).
  • SmartSetRGB: (Deprecated) Freestyle Edge RGB app.
  • SmartSetTKO: (Deprecated) TKO RGB app.
  • SmartSetMaster: All-in-one app for Kinesis Gaming apps
  • SmartSetSavantElite: Savant Elite foot pedal app.
  • Utilities: some utilities used for the apps.

Install third party packages

Install all the following 3rd party controls (no need to rebuild after each install, only after the last one):

  • \Components\bgrabitmap-master\bgrabitmap\bgrabitmappack.lpk (just compile it).
  • \Components\bgracontrols-master\bgracontrols.lpk
  • \Components\ecc_0-9-6-10_16-06-15\EC_Controls\eccontrols.lpk
  • \Components\TGIFViewer-master\TGIFViewer-master\package\gifviewer_pkg.lpk
  • \Components\HSButton0.9\HSButton\installpkg.lpk
  • \Components\mbColorLib-2.2.1\mbColorLib\mbcolorliblaz.lpk
  • \Components\mdsliderbarslaz-2\package\mdsliderbarslaz.lpk
  • \Components\richmemo\richmemopackage.lpk
  • \Components\ueControls_v6.0\uecontrols.lpk
  • \Components\CreoSource\creosource.lpk

Configure project

Note for MacOS: If third party components are not shown when you start Lazarus, see this thread: https://forum.lazarus.freepascal.org/index.php?topic=47711.0 You might have to give Read/Write priviledges in /Library/Lazarus

  • Open Terminal
  • Go to root, then run cd Library THEN cd Lazarus
  • Run this: sudo chown -R $(whoami)
  • Go back one folde: cd ..
  • Then run this: chmod -R +rw Lazarus
  • Start lazarus app If that doesn't work try starting Lazarus from /Library/Lazarus, startlazarus shortcut.

Configure the following settings for each project depending on what OS you are working on. Windows and Mac OSX are supported, Linux might work with some tweaks to source code.

  • Open project options (Project | Project Options…).
  • Under Compiler Options, select Paths.
    • In Target file name at the end between round brackets ( ) enter the following:
      • For Mac OSX: Mac
      • For Windows: PC
      • E.g.: SmartSet App-Freestyle (PC)
  • Under Compiler Options, select Config and Target.
  • Target CPU family:
    • For Mac OSX: select x86_64.
    • For Windows: select i386.
  • Additions and Overrides:
    • For Mac OSX: IDE Macro select cocoa.
    • For Windows: IDE Macro select nothing.
  • Debugger popup: Enable Dwarf with sets.

Known issues

List of known issues, settings that work with Mac Lazarus.

  • When building project, you get Error while linking
    • Solution: reinstall fpc and fpc-src.
  • Mac when compiling you get error Error: Internal error 200609171.
    • Solution: disable this option Project->Project Options->Generate info for the debugger.
  • In Tools->Options that "Compiler Executable" is set to "/usr/local/bin/fpc" to get 64 bit apps.
  • Lazarus 2.0.8 on Mac OSX error: cocoascrollers.pas(53,15) Error: There is no method in an ancestor class to be overridden: "setDocumentView(id);"

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.