Skip to content

Releases: PsychoDuckTech/PsychOS

PsychOS v0.4.16b

25 Apr 16:34

Choose a tag to compare

PsychOS v0.4.16b Pre-release
Pre-release

🎉 PsychOS Alpha Release v0.4.16b

✨ Changes

  • 096dee1 ⚠️ The hid handling code becomes a bigger mess from here. This enabled F1 through F12 and Caps lock keys, while normal letters and numbers still work. The module keys support is half broken now. The inconsistent hid codes should be further studied, or would need a whole firmware port to ESP-IDF. I hate this code with my life, but it fixes F keys which is what matters for users rn and for the final presentation.
  • f9d9070 🔧 Update LED count and adjust color mappings for RGB effects
  • 7b293da ✨ Update documentation
  • 8fc0855 🔧 Centralize settings menu actions and update menu item structure for improved maintainability
  • 63c6783 ✨ Add settings menu items and update navigation for improved user experience
  • 693854c Refactor display modules screen and pixel flush screen for improved performance and readability
  • 42241d4 🔧 Disable benchmarking and enhance debug logging for key events in matrix scanning
  • d5f0d73 🔧 Optimize string handling and calculations in display functions for improved performance and reduced memory usage.
  • fc1c8f9 🔧 Optimize command processing by replacing String with C-style strings for improved performance and memory efficiency.
  • 00da093 ✨ Implement gamma correction lookup tables for improved performance in RGB color processing.
  • 20e1f66 🔧 Optimize LED color setting by replacing pixel-by-pixel updates with fill method for 60x improved performance.
  • c8a890b ✨ Re-implemented double press detection for knob button to toggle caps lock status and enhance user interaction.
  • 6e8673c 🔧 Optimize display logic to reduce unnecessary redraws by tracking previous states and only updating when changes occur.
  • f0078bc 🔧 Optimize WPM display logic to reduce unnecessary redraws by tracking previous values and only updating when changes occur.
  • 76a024a 🔧 Optimize frame drawing and BLE icon rendering logic to reduce unnecessary redraws and improve performance.
  • 1acd5cb ✨ Enhance pixel flushing display by implementing a progress bar with smooth updates and maintaining animation area during transitions.
  • c51a0fa ✨ Optimize vertical stripes rendering by drawing 2-pixel wide bars instead of individual lines for improved performance.
  • 8e6afcd 🔧 Improve refresh logic in displayRGBSubmenu to check for state changes and trigger redraws accordingly.
  • c52ade0 ⚙️ Implement power-saving feature in updateBrightness to turn off LED power line when brightness is low.
  • ff50f9f ✨ Refactor knobHandler to implement ISR for button events, optimize debounce timing, and improve event handling logic. Adjusted task delays in matrixScan and rgbHandler for better performance and potentially lower power consumption.
  • f257558 ⚙️ Enabled previously commented tasks in setup and adjusted RGB brightness and colors.
  • f41ab1a ⚙️ Reversing position for the first 10 LEDs, due to incorrect PCB design.
  • 99a68f9 ⚙️ Ported the Underglow code from the APA102 leds onto the WS2812. IO3 is the rgb data pin; IO46 is the power enable pin.
  • b6dcebc ✨ Refactor to use constexpr for configuration constants in hostCommunicationBridge, knobHandler, and matrixScan for improved readability and maintainability.
  • 5a1dc82 Refactor display handler functions for improved readability and maintainability
  • 0ffc8a6 ✨ Optimize memory usage by replacing dynamic allocation with stack allocation for pollRates in benchmarking.
  • ad91ed8 Reintroduced BLE and module connectivity.

📥 Installation

Prerequisites

Install esptool on Windows
  1. Install Python from python.org.
  2. Open Command Prompt and run:
    pip install esptool
Install esptool on Linux
  1. Open Terminal and run:
    sudo apt-get install python3-pip
    pip3 install esptool

Flashing the Firmware

Download psychos-0.4.16b .bin and flash using:

For Windows:
python -m esptool --chip esp32s3 --port COM[X] write_flash 0x0 psychos-0.4.16b .bin
For Linux/macOS:
esptool.py --chip esp32s3 --port /dev/ttyUSB0 write_flash 0x0 psychos-0.4.16b .bin

⚠️ Known Issues

  • Matrix scanning in development
  • Configuration system pending

🛠️ Next Steps

  • Complete matrix scanning implementation
  • Add configuration interface
  • Implement layer system

PsychOS v0.4.15b

24 Apr 06:21

Choose a tag to compare

PsychOS v0.4.15b Pre-release
Pre-release

🎉 PsychOS Alpha Release v0.4.15b

✨ Changes

  • aec24fe ✨ Implement encoder acceleration for better volume control adjustments. Disabled BleTask due to issues on our testing unit.
  • cb9717c ✨ Add warning message for flashing patterns in pixel flush screen
  • dfc25c8 ✨ Now it's possible to use the knob while flushing the screen.
  • 2560a0b ✨ Improved Encoder sensibility. Inverted encoder pins, so now rotations perform the correct actions, because SOMEONE wired it wrongly... iykyk :)

📥 Installation

Prerequisites

Install esptool on Windows
  1. Install Python from python.org.
  2. Open Command Prompt and run:
    pip install esptool
Install esptool on Linux
  1. Open Terminal and run:
    sudo apt-get install python3-pip
    pip3 install esptool

Flashing the Firmware

Download psychos-0.4.15b .bin and flash using:

For Windows:
python -m esptool --chip esp32s3 --port COM[X] write_flash 0x0 psychos-0.4.15b .bin
For Linux/macOS:
esptool.py --chip esp32s3 --port /dev/ttyUSB0 write_flash 0x0 psychos-0.4.15b .bin

⚠️ Known Issues

  • Matrix scanning in development
  • Configuration system pending

🛠️ Next Steps

  • Complete matrix scanning implementation
  • Add configuration interface
  • Implement layer system

PsychOS v0.4.14b

23 Apr 19:12

Choose a tag to compare

PsychOS v0.4.14b Pre-release
Pre-release

🎉 PsychOS Alpha Release v0.4.14b

✨ Changes

$COMMITS

📥 Installation

Prerequisites

Install esptool on Windows
  1. Install Python from python.org.
  2. Open Command Prompt and run:
    pip install esptool
Install esptool on Linux
  1. Open Terminal and run:
    sudo apt-get install python3-pip
    pip3 install esptool

Flashing the Firmware

Download psychos-0.4.14b .bin and flash using:

For Windows:
python -m esptool --chip esp32s3 --port COM[X] write_flash 0x0 psychos-0.4.14b .bin
For Linux/macOS:
esptool.py --chip esp32s3 --port /dev/ttyUSB0 write_flash 0x0 psychos-0.4.14b .bin

⚠️ Known Issues

  • Matrix scanning in development
  • Configuration system pending

🛠️ Next Steps

  • Complete matrix scanning implementation
  • Add configuration interface
  • Implement layer system

PsychOS v0.4.13-beta

22 Apr 20:21

Choose a tag to compare

PsychOS v0.4.13-beta Pre-release
Pre-release

🎉 PsychOS Alpha Release v0.4.13-beta

✨ New Features

  • USB HID Communication Bridge
  • Volume Control System
    • Smooth increment/decrement with direction lock
    • Configurable polling rate (1000Hz)
  • FreeRTOS Task Management

📥 Installation

Download psychos-0.4.13-beta.bin and flash using:

# Windows
esptool.py --chip esp32s3 --port COM[X] write_flash 0x0 psychos-0.4.13-beta.bin

# Linux/macOS
esptool.py --chip esp32s3 --port /dev/ttyUSB0 write_flash 0x0 psychos-0.4.13-beta.bin

⚠️ Known Issues

  • Matrix scanning in development
  • Configuration system pending

🛠️ Next Steps

  • Complete matrix scanning implementation
  • Add configuration interface
  • Implement layer system

PsychOS v0.4.12-beta

21 Apr 15:45

Choose a tag to compare

PsychOS v0.4.12-beta Pre-release
Pre-release

🎉 PsychOS Alpha Release v0.4.12-beta

✨ New Features

  • USB HID Communication Bridge
  • Volume Control System
    • Smooth increment/decrement with direction lock
    • Configurable polling rate (1000Hz)
  • FreeRTOS Task Management

📥 Installation

Download psychos-0.4.12-beta.bin and flash using:

# Windows
esptool.py --chip esp32s3 --port COM[X] write_flash 0x0 psychos-0.4.12-beta.bin

# Linux/macOS
esptool.py --chip esp32s3 --port /dev/ttyUSB0 write_flash 0x0 psychos-0.4.12-beta.bin

⚠️ Known Issues

  • Matrix scanning in development
  • Configuration system pending

🛠️ Next Steps

  • Complete matrix scanning implementation
  • Add configuration interface
  • Implement layer system

PsychOS v0.4.11-beta

21 Apr 13:47

Choose a tag to compare

PsychOS v0.4.11-beta Pre-release
Pre-release

🎉 PsychOS Alpha Release v0.4.11-beta

✨ New Features

  • USB HID Communication Bridge
  • Volume Control System
    • Smooth increment/decrement with direction lock
    • Configurable polling rate (1000Hz)
  • FreeRTOS Task Management

📥 Installation

Download psychos-0.4.11-beta.bin and flash using:

# Windows
esptool.py --chip esp32s3 --port COM[X] write_flash 0x0 psychos-0.4.11-beta.bin

# Linux/macOS
esptool.py --chip esp32s3 --port /dev/ttyUSB0 write_flash 0x0 psychos-0.4.11-beta.bin

⚠️ Known Issues

  • Matrix scanning in development
  • Configuration system pending

🛠️ Next Steps

  • Complete matrix scanning implementation
  • Add configuration interface
  • Implement layer system

PsychOS v0.4.10-beta

21 Apr 12:39

Choose a tag to compare

PsychOS v0.4.10-beta Pre-release
Pre-release

🎉 PsychOS Alpha Release v0.4.10-beta

✨ New Features

  • USB HID Communication Bridge
  • Volume Control System
    • Smooth increment/decrement with direction lock
    • Configurable polling rate (1000Hz)
  • FreeRTOS Task Management

📥 Installation

Download psychos-0.4.10-beta.bin and flash using:

# Windows
esptool.py --chip esp32s3 --port COM[X] write_flash 0x0 psychos-0.4.10-beta.bin

# Linux/macOS
esptool.py --chip esp32s3 --port /dev/ttyUSB0 write_flash 0x0 psychos-0.4.10-beta.bin

⚠️ Known Issues

  • Matrix scanning in development
  • Configuration system pending

🛠️ Next Steps

  • Complete matrix scanning implementation
  • Add configuration interface
  • Implement layer system

PsychOS v0.4.9-beta

20 Apr 22:49

Choose a tag to compare

PsychOS v0.4.9-beta Pre-release
Pre-release

🎉 PsychOS Alpha Release v0.4.9-beta

✨ New Features

  • USB HID Communication Bridge
  • Volume Control System
    • Smooth increment/decrement with direction lock
    • Configurable polling rate (1000Hz)
  • FreeRTOS Task Management

📥 Installation

Download psychos-0.4.9-beta.bin and flash using:

# Windows
esptool.py --chip esp32s3 --port COM[X] write_flash 0x0 psychos-0.4.9-beta.bin

# Linux/macOS
esptool.py --chip esp32s3 --port /dev/ttyUSB0 write_flash 0x0 psychos-0.4.9-beta.bin

⚠️ Known Issues

  • Matrix scanning in development
  • Configuration system pending

🛠️ Next Steps

  • Complete matrix scanning implementation
  • Add configuration interface
  • Implement layer system

PsychOS v0.4.8-beta

20 Apr 22:34

Choose a tag to compare

PsychOS v0.4.8-beta Pre-release
Pre-release

🎉 PsychOS Alpha Release v0.4.8-beta

✨ New Features

  • USB HID Communication Bridge
  • Volume Control System
    • Smooth increment/decrement with direction lock
    • Configurable polling rate (1000Hz)
  • FreeRTOS Task Management

📥 Installation

Download psychos-0.4.8-beta.bin and flash using:

# Windows
esptool.py --chip esp32s3 --port COM[X] write_flash 0x0 psychos-0.4.8-beta.bin

# Linux/macOS
esptool.py --chip esp32s3 --port /dev/ttyUSB0 write_flash 0x0 psychos-0.4.8-beta.bin

⚠️ Known Issues

  • Matrix scanning in development
  • Configuration system pending

🛠️ Next Steps

  • Complete matrix scanning implementation
  • Add configuration interface
  • Implement layer system

PsychOS v0.4.7-beta

20 Apr 21:05

Choose a tag to compare

PsychOS v0.4.7-beta Pre-release
Pre-release

🎉 PsychOS Alpha Release v0.4.7-beta

✨ New Features

  • USB HID Communication Bridge
  • Volume Control System
    • Smooth increment/decrement with direction lock
    • Configurable polling rate (1000Hz)
  • FreeRTOS Task Management

📥 Installation

Download psychos-0.4.7-beta.bin and flash using:

# Windows
esptool.py --chip esp32s3 --port COM[X] write_flash 0x0 psychos-0.4.7-beta.bin

# Linux/macOS
esptool.py --chip esp32s3 --port /dev/ttyUSB0 write_flash 0x0 psychos-0.4.7-beta.bin

⚠️ Known Issues

  • Matrix scanning in development
  • Configuration system pending

🛠️ Next Steps

  • Complete matrix scanning implementation
  • Add configuration interface
  • Implement layer system