Skip to content

Releases: PhobGCC/PhobGCC-SW

v0.29

11 May 23:55
1ff160c
Compare
Choose a tag to compare

This is a major update with many new features and some fixes, and one deprecation.

If you were on v0.28, you should be fine to update and not reset. When you upgrade, you must soft reset.

Phob 1 update guide: https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Users/Phob_Programming_Guide.md

Phob 2 update guide: https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Users/Phob2_Programming_Guide.md

Deprecated:

  • We have removed C-stick offset, since its only purpose was for angled smashes in Melee and it was strictly worse than notch adjustment for that.

New features:

  • Analog stick cardinal snapping adjustment: if you decide you don't like the 1.0 cardinal snapping, you can reduce its effect or even prevent 1.0 cardinals even in UCF 0.84+. Command: RA(Z) + D-Pad up or down.
  • Analog stick scaling: by default the rim of the stick is calibrated to a radius of 100 units, but this can now be adjusted in a range from 82 to 125. Command: LA(Z) + D-Pad up or down.
  • New (alternate) left stick Smart Snapback filter: this has a smaller effect on rise time and can be useful if you were accidentally getting smashes when you wanted tilts or tap jumps instead of uptilts. Set the Smart Snapback value negative for this: more negative is stronger suppression.
  • Tournament button lockouts: you can delay or disable up on the D-Pad and delay the Start button to prevent misinputs from interfering with play. Command: Z+Start
  • PhobVision: PhobScope now has 1000 Hz data recording and graphing capabilities, similar to SmashScope but with expanded capabilities. Most importantly, you can view the stick position both before and after filtering is applied.
    • Stickmap Plots: you can record 100ms of stick motion in 2D and view it overlaid upon various stickmaps relevant to the game. Use this to train DBOOC, ledgedashing, c-stick ledge dropping, and more.
    • Value vs Time Plots: you can record and graph 200ms of 1 stick axis and view the chance a snapback will register, the chance of successfully dashing back on vanilla Melee, and the probability of each outcome of an attempted empty pivot (no turn, empty pivot, dash back). In addition, you can record and graph the trigger analog value as well as digital press state and view the probability of a digital powershield, an ADT powershield, and no powershield.
    • Button Timing Viewer: you can record and graph 200 ms of every button (except start and dpad) and digitized values (selectable thresholds) for all 6 analog axes in relation to the first press or analog rising edge. These are plotted in a bar graph, labeled with the release time (in frames) of the first-pressed button and the press time of every other button pressed. You can use this to train wavedash timing, jump cancel grabs, frame 1 aerials, and more.
    • Reaction Time Test: press any button or move any stick (adjustable analog thresholds) after the white square appears, and see your reaction time in milliseconds and frames.
  • PhobVision: you can now adjust the interlacing offset for more even interlacing field spacing on some CRTs (such as Sony PVMs).

Improvements and bugfixes:

  • Settings writes when holding a button combo are deferred until the buttons are released, which greatly improves changing settings on Phob 2.
  • Firefox notches now have a somewhat wider adjustment range. Diagonals are unchanged.
  • PhobVision's settings menu is slightly reorganized: stick calibration and filter settings (and the new geometry settings) are now located under a new top-level menu item, Stick Configuration.
  • PhobVision's stick debug info now shows the rounded values that would be sent over the wire.
  • PhobVision's input viewer now displays the current stick coordinates both in controller units and Melee units.
  • Fast settings changes in Phobvision now occur as rapid 1-unit steps instead of slow 10-unit steps.
  • Font adjusted (a changed to be less heavy, k changed from loop style to line style, and ~ flipped vertically)

Calibration/Configuration Guide: https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Users/Phob_Calibration_Guide_Latest.md

PhobVision/PhobScope Guide: https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Users/Phobvision_Guide_Latest.md

Errata: migration from 0.28 was improperly implemented and so you must soft reset unless you have a Phob 2 and use v0.29.1.

v0.28

09 Jan 04:35
e256791
Compare
Choose a tag to compare

This is the first release supporting the PhobGCC 2.0 motherboard, with PhobVision for configuration and calibration!

For PhobGCC 1 users, we do recommend updating; there is a feature that will prevent the need to reset after future upgrades. You must reset your controller after updating for this version, though.

Bugfixes:

  • Mode 7 on the L trigger now properly uses the L offset.
  • When the stick is grossly miscalibrated, this no longer impacts future proper calibrations. You should no longer ever need to hard reset (though the command still exists).
  • The PM/P+ salty runback command no longer accidentally triggers the Safe Mode toggle.
  • Internally (doesn't affect play in practice) the controller more precisely runs at 1000 Hz.

New features:

  • PhobVision, which is a feature strictly for PhobGCC 2, outputs composite video directly from the controller, providing menus for configuration and calibration. Hold the Z button while you plug the controller into a console or GCC-USB adapter to have it output video (it won't communicate with the console or adapter).
  • 1.0 cardinal snapping is now more lenient, 1 unit wider on either side (6 instead of 5) and now snapping anywhere outside the Melee unit circle (>80 instead of >95). This is in line with an upcoming version of UCF.
  • The rumble strength settings go weaker now. To convert from the old setting to the new setting, add 4. What used to be 5 is now 9. The range is 0 to 11.
  • Not usable yet, but there is now a framework in place to migrate to newer firmware versions, as long as you start with v0.28. When you install a newer firmware version, it'll automatically migrate all your settings with no need to perform a reset.

Configuration document here: https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Users/Phob_Calibration_Guide_v0.28.md
Phob 1 programming guide here: https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Users/Phob_Programming_Guide.md

For Phob 2, to install the firmware, simply hold the button on the PCB while connecting to your computer using USB, and drag and drop the .uf2 firmware file into the USB Mass Storage device.

v0.27

17 Oct 02:18
1b744ae
Compare
Choose a tag to compare

This is a minor release with one main bugfix, two extremely minor bugfixes, and several quality of life changes.

Bugfixes:

  • Fix C-Stick notch angle calibration recall from memory; this was a bug introduced in 0.26.
  • Make the ENABLE_LED option work. This is now located above the board-version-specific #include lines. This was a bug introduced in 0.26.
  • Make the C-stick work properly on PhobGCC 1.0 controllers with potentiometer C-sticks. (Don't use potentiometer c-sticks! get them replaced with hall sensor ones!)

New features:

  • Trigger Mode 7: this is a "hairtrigger" analog mode that lets you amplify the analog output by up to 3x. This is particularly useful for Smash Ultimate.
  • For Phob makers, you can modify the factory defaults for the stick filters that apply only on the initial flashing, separate from resetting. They're the variables labeled Factory in the ControlConfig at the top of common/phobGCC.h.
  • Hard Reset now requires a roughly one second button press. We're still not publicizing this command because it's unhelpful 99% of the time.

Configuration document here: https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Users/Phob_Calibration_Guide_v0.27.md
Programming guide here: https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Users/Phob_Programming_Guide.md

Errata:

  • Trigger Mode 7 on the L trigger erroneously uses the R trigger offset to control its multiplier.

v0.26

14 Oct 03:00
eab852b
Compare
Choose a tag to compare

This is a major update that may make all the difference for some users but be completely unnecessary for others.

Be aware that because of the new features, there's a largely new control scheme for configuring. Some things are the same, but some are very different.

New features:

  • New filter called Waveshaping, that in particular makes pivots that behave more like good-OEM-controller pivots (And maybe more stuff? Help us experiment!)
  • Wider notch adjustment range inside the deadzone to help rescue heavily worn Firefox/wavedash notches
  • L/R Jump (swap one of L or R with X or Y) as an alternative to Z jump
  • Trigger Mode 5 lockouts for illegal trigger mode pairings (per SWT ruleset)
  • Extras: a new framework for compile-time add-ons that are not included in standard firmware builds
  • Extra: Extended Super Slide stick remapping for Ocarina of Time speedrunning in the Wii Virtual Console version

Bugfixes:

  • Trigger origin poll is now zero so mode 5 and such should work slightly better (especially if the slider was glued all the way down)

This also includes a massive code refactor that will help us move to different microcontrollers for new versions of the PhobGCC.

Configuration document here: https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Users/Phob_Calibration_Guide_v0.26.md
Programming guide here: https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Users/Phob_Programming_Guide.md

Errata:

  • C-stick angles are loaded from the left stick angles.
  • The ENABLE_LED option does not work.
  • Potentiometer C-Sticks (not recommended!) on Phob 1.0 can be badly centered depending on supply voltage.

v0.25

06 Sep 03:14
cf1047a
Compare
Choose a tag to compare

This is a small update that slightly improves reliability but is a big quality of life change when configuring the controller.

Fixes:

  • The controller stores a separate origin response so if a packet is lost, when the controller reconnects, the proper zeroing is not lost. This fixes a bug when configuring on console, where writing a setting occasionally would drop a packet and cause the sticks to rezero improperly. Thus it simplifies the initial setup; gone is the unplugging and replugging! This also means that on console, if you have the B press disabled, you don't have to have the sticks centered while the controller initializes.
  • There are minor fixes to stored setting validation. This should affect nothing.
  • The LRA+Start override to trigger settings now works even in configuration mode.

Configuration document here: https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Users/Phob_Calibration_Guide_v0.25.md

Errata:

  • Potentiometer C-Sticks (not recommended!) on Phob 1.0 can be badly centered depending on supply voltage.

v0.24

18 Aug 03:01
21fe32e
Compare
Choose a tag to compare

This is a release that fixes a communication bug and adds some new quality-of-life features.

Fix:

  • Teensy 4 communications now run at 252 kHz baudrate instead of 266 (0.23) or 240 (0.22 and prior) and have a much faster response time, making it work with both Smashscope's 2000 Hz polling and picky OEM adapters.

New features:

  • You no longer need to reset the controller when you first make it.
  • The hard reset command is now a soft reset, which doesn't erase the stick calibration.
  • There is a new hidden hard reset command. It's only hidden because it causes users more trouble than it's worth, but it still needs to exist.
  • You can now view the version number by pressing A+Z+Dpad up
  • You can now lower the snapback suppression below the previous minimum. 1 before is now 4, and 1-3 is weaker snapback suppression. 0 still turns the filter completely off.
  • If you're confident in your stick calibration, you can now make the controller automatically initialize without having to press B. This gets disabled whenever you reset or recalibrate the stick, though, in case you screw it up.
  • The serial output now gives higher precision on the calibration parameters.

Configuration document here: https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Users/Phob_Calibration_Guide_v0.24.md

Errata:

  • On Teensy 4 Phobs, the controller can briefly disconnect and reconnect with a wrong origin after changing a setting. This doesn't affect gameplay but does make configuration annoying.
  • Potentiometer C-Sticks (not recommended!) on Phob 1.0 can be badly centered depending on supply voltage.

v0.23

19 Jul 03:55
c2acb51
Compare
Choose a tag to compare

This is most importantly a bugfix release, but it has some quality of life changes as well.

New features:

  • Disabling safe mode now requires holding the command for about a second, to prevent accidental activation. Returning to safe mode still is instant.
  • Repeating the command to swap Z and X or Y will cause them to swap back.
  • Triggers are now debounced during calibration so mouse switch triggers won't skip calibration steps.
  • The LED is now off by default on Teensy 4. There's a line #define ENABLE_LED in the code you can uncomment if you want the LED to be on.
  • Teensy 4 PhobGCCs are also forced to run at 150 MHz to reduce power consumption.

Bugfixes:

  • Baudrate (signal clockspeed) on Teensy 4 is upped a bit in order to fix polling on Wiis, particularly with Smashscope's oscilloscope view, though it also improves consistency in Melee.
  • The stick angle calculations are slightly tweaked, though this is almost entirely inconsequential for gameplay.
  • Rumble activation no longer overlaps with rumble braking, which was causing disconnects on at least some Gamecubes and possibly also some Smash Ultimate setups.

Errata:

  • The increased communication baudrate on Teensy 4 can be too fast for certain consoles and adapters.
  • On Teensy 4 Phobs, the controller can briefly disconnect and reconnect with a wrong origin after changing a setting. This doesn't affect gameplay but does make configuration annoying.
  • Potentiometer C-Sticks (not recommended!) on Phob 1.0 can be badly centered depending on supply voltage.

v0.22

08 Jul 01:43
f2855d2
Compare
Choose a tag to compare

New features:

  • The smart snapback filter on the left stick can now be disabled completely, making the stick behave like a vanilla controller.
  • The diode short mod is now supported for Teensy 3.2 boards. This can fix communication issues with certain consoles. Short the third and fourth pins from the left on the top row of the Teensy 3.2 and select the appropriate header file when programming the firmware.

Bugs fixed:

  • Triggers used to skip roughly 10 analog values in the midshield range on Teensy 4 boards. This also prevented the use of DRV5055A2 Hall sensors on 1.2 boards.

Errata:

  • The baudrate on Teensy 4 is too slow for console Smashscope, causing the graphs to be inconsistent.
  • On Teensy 4 Phobs, the controller can briefly disconnect and reconnect with a wrong origin after changing a setting. This doesn't affect gameplay but does make configuration annoying.
  • Potentiometer C-Sticks (not recommended!) on Phob 1.0 can be badly centered depending on supply voltage.

v0.21

10 Jun 22:39
0476b01
Compare
Choose a tag to compare

Includes:

  • Support for v1.1 Teensy 4.0 Diode Mod
  • Support for v1.2 and Rumble Configuration
  • 3 New Trigger Modes
  • Origin Snapping
  • Undo Calibration Step Mid-notch

Errata:

  • Triggers skip about 10 analog values around 100.
  • The baudrate on Teensy 4 is too slow for console Smashscope, causing the graphs to be inconsistent.
  • On Teensy 4 Phobs, the controller can briefly disconnect and reconnect with a wrong origin after changing a setting. This doesn't affect gameplay but does make configuration annoying.
  • Rumble can cause the controller to restart, requiring youeto reinitialize it.