From 5af64d048c5626326b5458a76be04194f62207be Mon Sep 17 00:00:00 2001 From: "Ben V. Brown" Date: Fri, 30 Dec 2022 22:27:18 +1100 Subject: [PATCH] Update README.md --- README.md | 49 ++++++++++++++++++++++++++++++++++++++++--------- download.sh | 16 ++++++++++++---- 2 files changed, 52 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 9ef3a58..7dfd0d8 100644 --- a/README.md +++ b/README.md @@ -18,19 +18,50 @@ In order to program the buds from inside of the docker container; privileged mod ./build.sh # This will run make and build the output program. If you have weird build errors try running clean.sh or rm -rf'ing the out folder first # Now that the firmware has finished building; if there are no errors you can load it to your buds +# You may need to take the buds out of the case, wait three seconds, place them back. This wakes them up and the programmer needs to catch this reboot. + +# You can try the helper script by running +./download.sh + +# Or do it manually by : + # Assuming that your serial ports are 0 and 1, run the following to commands to program each bud in series. -# You may need to take the buds out of the case, wait three seconds, place them back. This wakes them up. bestool write-image out/open_source/open_source.bin --port /dev/ttyACM0 bestool write-image out/open_source/open_source.bin --port /dev/ttyACM1 ``` - ## Changelist from stock opeen source SDK -+ Long hold (5 ish seconds) the button on the back when buds are in the case to force a device reboot (so it can be programmed) -+ Use the resistor in the buds to pick Left/Right rather than TWS master/slave pairing -+ Pressing the button on the back while in the case no longer triggers DFU mode -+ Debugging baud rate raised to 200000 to match stock firmware -+ Fixed TWS operation such that putting either bud into the case correctly switches to the other bud -+ Working (mostly) audio controls using the touch button on the buds -+ Turned off showing up as a HID keyboard, as not sure _why_ you would; but it stops android nagging me about a new keyboard +- Long hold (5 ish seconds) the button on the back when buds are in the case to force a device reboot (so it can be programmed) +- Use the resistor in the buds to pick Left/Right rather than TWS master/slave pairing +- Pressing the button on the back while in the case no longer triggers DFU mode +- Debugging baud rate raised to 200000 to match stock firmware +- Fixed TWS operation such that putting either bud into the case correctly switches to the other bud +- Working (mostly) audio controls using the touch button on the buds +- Turned off showing up as a HID keyboard, as not sure _why_ you would; but it stops android nagging me about a new keyboard + +## Current bud tap codes + +### Both pods active + +#### Right Ear: + +- Single tap : Play/Pause +- Double tap : Next track +- Hold : Fast-Forward (Currently non functional, WIP) +- Triple tap : Volume Up + +#### Left Ear: + +- Single tap : Play/Pause +- Double tap : Previous track +- Hold : Rewind (Currently non functional, WIP) +- Triple tap : Volume Down + +### Single pod active + +- Single tap : Play/Pause +- Double tap : Next track +- Hold : Previous track +- Triple tap : Volume Up +- Quad tap : Volume Down diff --git a/download.sh b/download.sh index f439920..4b91953 100755 --- a/download.sh +++ b/download.sh @@ -1,7 +1,15 @@ #! /bin/bash -num=$(ls -l /dev/ttyUSB* | rev | cut -c 1) -#num=3 +num=$(ls -l /dev/ttyACM* | rev | cut -c 1) echo com is:$num -sudo -S dldtool -c $num -f out/open_source/open_source.bin -sudo minicom port$num +splitPorts=($num) +echo "This tool assumes your buds are the only thing connected and are enumerated {right,left} order. YMMV" +echo "Right bud is at ${splitPorts[0]}" +echo "Left bud is at ${splitPorts[1]}" + +echo "Please disconnect and reconnect the bud on the right" + +bestool write-image out/open_source/open_source.bin --port /dev/ttyACM${splitPorts[0]} + +echo "Please disconnect and reconnect the bud on the left" +bestool write-image out/open_source/open_source.bin --port /dev/ttyACM${splitPorts[1]}