diff --git a/src/pug/alpakka.pug b/src/pug/alpakka.pug index e84be52..6083675 100644 --- a/src/pug/alpakka.pug +++ b/src/pug/alpakka.pug @@ -27,7 +27,7 @@ block page h2 No bloat software p: i "Gaming peripherals and bloatware apps, name a more iconic duo" p No drivers, no overlays, no bloat. The Alpakka firmware emulates as a standard keyboard, mouse, and Xinput gamepad at hardware level; so it just works out of the box in Windows and Linux, and every game launcher. - p Instead of having per-game configurations, the firmware includes #[+a('alpakka/manual/profiles') per-genre profiles], which are also editable in an optional configuration app: #[+a('alpakka/manual/ctrl_app') Ctrl app] (Work in progress). + p Instead of having per-game configurations, the firmware includes #[+a('alpakka/manual/profiles') per-genre profiles], which are also editable in an optional configuration app: #[+a('alpakka/manual/ctrl_app') Ctrl app]. div.box.image.colored(style='border-radius:10px') @@ -55,7 +55,7 @@ block page li #[+done(1)] 3D-printed prototypes. li #[+done(1)] Closed alpha testing (5 testers). li #[+done(1)] Reference designs. - li #[+done(0)] More built-in profiles / Edit profiles. + li #[+done(1)] Edit profiles. li #[+done(0)] Wireless. li #[+done(0)] Vibration. diff --git a/src/pug/alpakka/components.pug b/src/pug/alpakka/components.pug index 630ca41..791dfcd 100644 --- a/src/pug/alpakka/components.pug +++ b/src/pug/alpakka/components.pug @@ -31,8 +31,11 @@ block page td Alpakka PCB ready-to-order files td: +ax('https://github.com/inputlabs/alpakka_pcb/releases/latest') GitHub tr - td Alpakka PCB with soldered SMD components. + td Alpakka PCB (Partially soldered) td: +ax('https://inputlabs.squarespace.com/everyone/p/alpakka-pcb') Input Labs shop + tr + td Alpakka PCB (Fully soldered) + td: +ax('https://inputlabs.squarespace.com/everyone/p/alpakka-pcb-soldered') Input Labs shop div.box h2 Case and buttons @@ -70,7 +73,6 @@ block page td Protopasta PLA Conductive td: +ax('https://www.proto-pasta.com/collections/conductive/products/conductive-pla') Protopasta shop - div.box h2 Electronics p This includes the micro-controller, as well as through-hole components. Those are usually not soldered by the PCB manufacturer, so you may want to solder them yourself, and later you may even want to to replace worn components. See #[+a('manual/specs') specs]. diff --git a/src/pug/alpakka/manual/_manual.pug b/src/pug/alpakka/manual/_manual.pug index 11a70d7..945f1de 100644 --- a/src/pug/alpakka/manual/_manual.pug +++ b/src/pug/alpakka/manual/_manual.pug @@ -63,7 +63,6 @@ block page +wikilink('dev') Firmware development +wikilink('dev_unix') Setup in Linux +wikilink('dev_windows') Setup in Windows - +wikilink('dev_profiles') Modify profiles div.inactive PCB development #[i (soon)] div.inactive Case mods #[i (soon)] diff --git a/src/pug/alpakka/manual/calibrate.pug b/src/pug/alpakka/manual/calibrate.pug index 19df621..9cf8bb0 100644 --- a/src/pug/alpakka/manual/calibrate.pug +++ b/src/pug/alpakka/manual/calibrate.pug @@ -5,12 +5,12 @@ block append title block content h2 Calibrate - hr + hr h3 What is calibration p The thumbstick X/Y axis potentiometers, and the angular rate sensor (gyro), are components that require calibration at least once to be #[em perfectly centered and accurate]. Otherwise its analog electrical signal could be misinterpreted and assigned wrong values. - hr + hr h3 When to calibrate ul li The very first time the controller is used. @@ -18,9 +18,14 @@ block content li If the thumbstick output is not centered (eg: your character keeps moving when you are not touching the thumbstick). li If the gyro output is not centered (eg: mouse cursor keeps moving in a particular direction when the controller is held still). li Approximately each 1000 hours of use. + hr + h3 How to calibrate in the Ctrl app + + img.wm.mr.mt(src='/static/manual/ctrl_app_calibrate.png') - h3 To start the calibration procedure + hr + h3 How to calibrate directly in the controller ul li Leave the thumbstick in its most natural centered position. li Put the controller resting on a flat surface. diff --git a/src/pug/alpakka/manual/ctrl_app.pug b/src/pug/alpakka/manual/ctrl_app.pug index a923e17..5124516 100644 --- a/src/pug/alpakka/manual/ctrl_app.pug +++ b/src/pug/alpakka/manual/ctrl_app.pug @@ -7,11 +7,10 @@ block content h2 Ctrl app hr p An #[em optional] app for Input Labs devices, able to run diagnostics, configure the controller settings, and modify profile mappings. - p The app is hosted at #[+ax('http://ctrl.inputlabs.io') ctrl.inputlabs.io] and it is compatible with Windows, Linux and the Steam Deck; without the need to install any additional software in your computer. + p The app is hosted at #[+ax('http://ctrl.inputlabs.io') ctrl.inputlabs.io] and it is compatible with Windows, Linux and the Steam Deck; without the need to install any additional software in your computer (but it must be used with a WebUSB compatible browser). + p The source code is available at #[+ax(org.repo+'ctrl') GitHub] and it is open source. p Some features are missing since the application is still under active development. - p   - - img.wm.mr(src='/static/manual/ctrl_app_screenshot_1.png') - img.wm.mr(src='/static/manual/ctrl_app_screenshot_2.png') + img.wm.mr.mt(src='/static/manual/ctrl_app_logs.png') + img.wm.mr.mt(src='/static/manual/ctrl_app_profiles.png') diff --git a/src/pug/alpakka/manual/dev_profiles.pug b/src/pug/alpakka/manual/dev_profiles.pug deleted file mode 100644 index d9cd923..0000000 --- a/src/pug/alpakka/manual/dev_profiles.pug +++ /dev/null @@ -1,102 +0,0 @@ -extends _manual.pug - -block append title - | Modify profiles - -block content - h2 Modify profiles - hr - - p We are working in a simple method to modify profile on the #[+a('ctrl_app') Ctrl app], without the need to recompile the firmware, but at the moment the only way to edit profiles is to change the source code. - p Meanwhile profiles are just C code located in the #[+ax('https://github.com/inputlabs/alpakka_firmware/tree/main/src/profiles') profiles/] folder, each profile in a single file containing a #[em Profile] object. And the profile having its buttons defined, a #[em Button] object for each button. - p The parameters of the #[em Button] object are: - ul - li The #[+ax('https://github.com/inputlabs/alpakka_firmware/blob/main/src/headers/pin.h') pin identifier] of the physical button. - li The desired #[em behavior] of the button. (See below). - li A list of #[+ax('https://github.com/inputlabs/alpakka_firmware/blob/main/src/headers/hid.h') actions] to be performed, grouped with the #[em ACTIONS] macro for convenience. - - p Actions are either keyboard keys, mouse buttons, gamepad buttons, or special functions (procedures). - hr - - +h3id('button_mode') Button modes - p Depending on the mode there may be primary and secondary actions. The possible behaviors are: - - table.manual.hdiv.col3 - tr - td: b NORMAL - th Actions triggered - th Actions released - tr - th Primary actions - td When the button is pressed - td When the button is released - tr - th Secondary actions - td - - td - - - table.manual.hdiv.col3 - tr - td: b HOLD_EXCLUSIVE #[br] HOLD_EXCLUSIVE_LONG - th Actions triggered - th Actions released - tr - th Primary actions - td When the button is released before the time threshold - td Immediately - tr - th Secondary actions - td When the button is pressed for longer than the time threshold - td When the button is released - - table.manual.hdiv.col3 - tr - td: b HOLD_OVERLAP #[br] HOLD_OVERLAP_LONG - th Actions triggered - th Actions released - tr - th Primary actions - td When the button is pressed - td When the button is released - tr - th Secondary actions - td When the button is pressed for longer than the time threshold - td When the button is released - - table.manual.hdiv.col3 - tr - td: b HOLD_DOUBLE_PRESS #[br] (eg: Home button) - th Actions triggered - th Actions released - tr - th Primary actions - td When the button is pressed only once within the time threshold - td When the button is released - tr - th Secondary actions - td When the button is pressed twice within the time threshold - td When the button is released - - table.manual.hdiv.col3 - tr - td: b STICKY #[br] (eg: Alt-tabbing) - th Actions triggered - th Actions released - tr - th Primary actions - td When the button is pressed - td When the profile is changed - tr - th Secondary actions - td When the button is pressed - td When the button is released - - hr - h3 Behavior timing - p Also for now, Button behavior time thresholds are defined as config constants: - ul - li: em CFG_PRESS_DEBOUNCE - li: em CFG_DOUBLE_PRESS - li: em CFG_HOLD_EXCLUSIVE_TIME - li: em CFG_HOLD_EXCLUSIVE_LONG_TIME - li: em CFG_HOLD_OVERLAP_TIME diff --git a/src/pug/alpakka/manual/profiles.pug b/src/pug/alpakka/manual/profiles.pug index 42d8ea5..04cd2c9 100644 --- a/src/pug/alpakka/manual/profiles.pug +++ b/src/pug/alpakka/manual/profiles.pug @@ -82,8 +82,5 @@ block content hr h3 Create or edit profiles - p While most of people won't need to tinker with profiles, we understand that some players will have to, either because physical constrains or because very specific niche games. - p We are still developing the #[+a('ctrl_app') Ctrl app] in which profiles can be modified. Meanwhile another way to tweak profiles is to edit and compile the firmware yourself. See #[+a('dev_profiles') Modify Profiles] page. - p Also please remember you can #[+a('/contribute') Contribute] with Input Labs, and help us developing these. - p Alternatively, the Steam input configurator UI can also be used to remap controls. + p While most of people won't need to tinker with profiles, we understand that some players will have to, either because physical constrains or because very specific niche games. So we made possible to edit profiles directly in the #[+a('ctrl_app') Ctrl app]. diff --git a/src/pug/alpakka/manual/tune.pug b/src/pug/alpakka/manual/tune.pug index 6f53f81..1380ab1 100644 --- a/src/pug/alpakka/manual/tune.pug +++ b/src/pug/alpakka/manual/tune.pug @@ -8,7 +8,19 @@ block content hr p Tune settings define how the controller works at a fundamental level, independently from the operative system. these settings are applied to all profiles, and will be stored in the controller memory even if the controller is powered off. - p Tune settings are configurable by the user directly on the controller: + p Tune settings are configurable directly on the controller, or also in the Ctrl app. + + hr + h3 In the Ctrl app + + ul + li Settings tab in the header. + + img.wm.mr.mt(src='/static/manual/ctrl_app_settings.png') + + hr + h3 In the controller + ul li Hold the #[em Home #[+home]] button. li Hold the #[em Directional Hat #[+hat]] either up, down, left or right. Each direction tune a different option (see below). @@ -53,16 +65,19 @@ block content div + hold Hat left #[+hat]← td.center img(src='/static/manual/led_tune_left_0.png' width='50px') - div 5% + div Low + div 8% i (Default) td td.center img(src='/static/manual/led_tune_left_1.png' width='50px') - div 10% + div Mid + div 12% td td.center img(src='/static/manual/led_tune_left_2.png' width='50px') - div 15% + div High + div 20% tr td.middle h3 Touch sensitivity @@ -106,21 +121,20 @@ block content div 4K hr - h3 Protocol mode + h3 Settings description + + h4 Protocol mode p Defines how the controller communicates with the computer operating system, XInput for either Windows or Linux are the most recommended, but in some cases the generic gamepad mode can also be useful (eg. Retro games and simulators). - hr - h3 Thumbstick deadzone + h4 Thumbstick deadzone p Defines how much of the inner movement of the thumbstick will be ignored, increase this according to your thumbstick wear (thumbstick centering spring will get softer over time). Please check #[+a('calibrate') Calibration] instructions before tweaking this parameter. - hr - h3 Touch sensitivity + h4 Touch sensitivity p Defines how sensitive the touch surface is. Depending on which conductive material was used on the touch surface you may want to tweak this parameter: ul li The automatic setting will adjust the sensitivity dynamically. li Set a higher fixed sensitivity if the detection is not registered consistently. li Set a lower fixed sensitivity if the detection is taking too long to be released after the finger is lifted. - hr - h3 Mouse sensitivity + h4 Mouse sensitivity p Defines how sensitive the mouse emulation is, using recommended values for different display resolution with the default OS sensitivity. This is similar to changing the DPI on a traditional mouse. Check #[+a('setup') OS setup] and #[+a('mouse') Mouse] for more details. diff --git a/src/pug/blog/report_17.pug b/src/pug/blog/report_17.pug index 34abf52..f1c3b23 100644 --- a/src/pug/blog/report_17.pug +++ b/src/pug/blog/report_17.pug @@ -23,8 +23,8 @@ block content p The app is accessible at #[+ax('https://ctrl.inputlabs.io') ctrl.inputlabs.io] and it is compatible with #[em Windows], #[em Linux], and the #[em Steam Deck]. (Requires an internet browser with WebUSB support). - img.wm.mr.mt(src='/static/manual/ctrl_app_screenshot_1.png') - img.wm.mr.mt(src='/static/manual/ctrl_app_screenshot_2.png') + img.wm.mr.mt(src='/static/manual/ctrl_app_logs_old.png') + img.wm.mr.mt(src='/static/manual/ctrl_app_profiles_old.png') hr h3 Research with Pico-W Bluetooth continues diff --git a/src/pug/blog/report_19.pug b/src/pug/blog/report_19.pug index 9e5752b..1a7370e 100644 --- a/src/pug/blog/report_19.pug +++ b/src/pug/blog/report_19.pug @@ -21,7 +21,7 @@ block content p In addition to some minor improvements and fixes, this version provides the ability to #[em edit profiles conveniently in the app] and have changes immediately stored and reflected in the Alpakka. br - img(src='/static/manual/ctrl_app_screenshot_3.png').wm + img(src='/static/manual/ctrl_app_profiles.png').wm hr h3 Wireless communication progress @@ -37,7 +37,7 @@ block content hr h3 Bug tracking - p Something we have not been exercising consistently is the tracking of pending tasks and bugs at individual repositories level. So now we are now doing a bit better: + p Something we have not been exercising consistently is the tracking of pending tasks and bugs at individual repositories level. So now we are doing a bit better: ul li: +ax('https://github.com/inputlabs/alpakka_firmware/issues') Alpakka firmware open issues li: +ax('https://github.com/inputlabs/ctrl/issues') Ctrl app open issues @@ -45,6 +45,6 @@ block content p This is not only making our lifes easier (so we do not have to rememeber all of that), but makes the project much more transparent, and easy for anyone to check the status of features and bugs, to comment, or even to contribute. hr - p Enjoy the winter solstice celebrations! + p Enjoy the solstice celebrations! p - Marcos and Michael <3 diff --git a/src/pug/contribute/open_source.pug b/src/pug/contribute/open_source.pug index c6c2a1f..06f7da8 100644 --- a/src/pug/contribute/open_source.pug +++ b/src/pug/contribute/open_source.pug @@ -36,10 +36,13 @@ block page true ) - div.box - h2 Feedback - p Input Labs is a #[em community-driven] effort, so you make us all better by simply using our stuff, and sharing your feedback and ideas with the other members. - p Join our #[+ax(org.discord) Discord] server and take part in technical or casual discussions. + +boximglink( + '/static/community/repo_ctrl.png', + org.repo+'ctrl', + 'Ctrl app', + true, + true + ) div.box h2 Become a tester diff --git a/src/static/community/repo_ctrl.png b/src/static/community/repo_ctrl.png new file mode 100644 index 0000000..42b4dd7 Binary files /dev/null and b/src/static/community/repo_ctrl.png differ diff --git a/src/static/manual/ctrl_app_calibrate.png b/src/static/manual/ctrl_app_calibrate.png new file mode 100644 index 0000000..bf2bcc6 Binary files /dev/null and b/src/static/manual/ctrl_app_calibrate.png differ diff --git a/src/static/manual/ctrl_app_logs.png b/src/static/manual/ctrl_app_logs.png new file mode 100644 index 0000000..72a922c Binary files /dev/null and b/src/static/manual/ctrl_app_logs.png differ diff --git a/src/static/manual/ctrl_app_screenshot_1.png b/src/static/manual/ctrl_app_logs_old.png similarity index 100% rename from src/static/manual/ctrl_app_screenshot_1.png rename to src/static/manual/ctrl_app_logs_old.png diff --git a/src/static/manual/ctrl_app_profiles.png b/src/static/manual/ctrl_app_profiles.png new file mode 100644 index 0000000..549b1be Binary files /dev/null and b/src/static/manual/ctrl_app_profiles.png differ diff --git a/src/static/manual/ctrl_app_screenshot_2.png b/src/static/manual/ctrl_app_profiles_old.png similarity index 100% rename from src/static/manual/ctrl_app_screenshot_2.png rename to src/static/manual/ctrl_app_profiles_old.png diff --git a/src/static/manual/ctrl_app_screenshot_3.png b/src/static/manual/ctrl_app_screenshot_3.png deleted file mode 100644 index ed479bf..0000000 Binary files a/src/static/manual/ctrl_app_screenshot_3.png and /dev/null differ diff --git a/src/static/manual/ctrl_app_settings.png b/src/static/manual/ctrl_app_settings.png new file mode 100644 index 0000000..17a6be2 Binary files /dev/null and b/src/static/manual/ctrl_app_settings.png differ