diff --git a/docs/designs/tstick-4gw/build-guide-2018.md b/docs/designs/tstick-4gw/build-guide-2018.md deleted file mode 100644 index baed2ab..0000000 --- a/docs/designs/tstick-4gw/build-guide-2018.md +++ /dev/null @@ -1,159 +0,0 @@ -# Building a Sopranino T-Stick (v1.1) - -![building_Sopranino image](./Images/building_Sopranino.jpg "Building a Sopranino T-Stick") - - -## Bill of Materials: - -Qty | Type | Description -------|---------------------|----------------------------------------------------------------------------------- -01 | sensor | [Capsense](https://www.cypress.com/le/127221/download) breakout board (CY8CMBR3116) -01 | sensor | [IMU breakout board LSM9DS](https://www.sparkfun.com/products/13284) -01 | sensor | [FSR 408](https://www.robotshop.com/ca/en/interlink-24-long-fsr.html) -01 | sensor | [buzz elem. piezo STD](https://www.digikey.ca/product-detail/en/cui-inc/CEB-20D64/102-1126-ND/412385) -01 | electronics | [microcontroller Lolin D32 Pro](https://wiki.wemos.cc/products:d32:d32_pro) -01 | electronics | [0.1uF capacitor](https://www.digikey.ca/product-detail/en/kemet/C320C104J5R5TA7301/399-9867-1-ND/3726105) -01 | electronics | 1K resistor -01 | electronics | [10K resistor](https://www.digikey.ca/product-detail/en/CFM12JT10K0/S10KHCT-ND/2617547/?itemSeq=307630589) -01 | electronics | [2M resistor](https://www.digikey.ca/product-detail/en/CFM12JT2M00/S2MHCT-ND/2617413/?itemSeq=307631009) -01 | electronics | [Diode 1N4004](https://www.digikey.ca/product-detail/en/1N4004-TP/1N4004-TPMSCT-ND/773691/?itemSeq=307634719) -01 | electronics | [10K potentiometer](https://www.digikey.com/products/en?mpart=PV36W103C01B00&v=118) -01 | electronics | [LM358P Opamp](https://www.digikey.ca/products/en?keywords=296-1395-5-ND) -01 | electronics | [button](https://www.digikey.ca/product-detail/en/c-k/PTS125SM43-2-LFS/CKN9100-ND/1146743) -02 | electronics | [SH1.0 cables](https://www.aliexpress.com/item/32877217306.html) -02 | electronics | [Breadboards](https://www.digikey.ca/product-detail/en/sparkfun-electronics/PRT-08808/1568-1652-ND/7387401) -30cm | manufacturing parts | PVC Tube split in 2 lenghtwise -~85cm | manufacturing parts | Copper adhesive tape -01 | manufacturing parts | Li-Po Battery (min 1000mA) -01 | manufacturing parts | [ON-OFF rocker switch](https://www.digikey.ca/product-detail/en/RA1113112R/EG5619-ND/3778055/?itemSeq=307636370) -~35cm | manufacturing parts | Heat shrink tube -01 | manufacturing parts | end-cup with microcontroller base -01 | manufacturing parts | end-cup with for the ON-OFF switch and hold battery -02 | manufacturing parts | 3D printed bases for Capsense -02 | manufacturing parts | [3D printed bases for IMU](./Images/SopraninoIMUparts.jpg) -11 | manufacturing parts | [M2 Mounting Screws](https://www.digikey.ca/product-detail/en/MPMS+002+0008+PH/H739-ND/274950/?itemSeq=307635387) -11 | manufacturing parts | [M2 bolts](https://www.digikey.ca/product-detail/en/MHNZ+002+4/H761-ND/274972/?itemSeq=307635458) -01 | manufacturing parts | [foam sheet](https://www.amazon.ca/Craft-Foam-Sheets-Assorted-Colours/dp/B005EQPRM6) - - -## Schematic: - -![T-Stick Sopranino schematics](./Images/Sopranino2GW_schematics.png "T-Stick Sopranino schematics") - -This schematic is outdated. Use for FSR and Piezo Electronics reference only. - -## Instructions: - -#### Building the Frame: - -Cut the PVC in half as in the picture and tape the conductive tape 1.5cm apart.  -Length of holes assembly is 1.5 * 15 for 16 strips. That is 22.5cm. You need aprox. 8 cm of copper tape per strip. - -!!! tip - - Before start assembling the T-Stick, pay attention to the position of the components. Plan yourself to place the components for them to not "overlap" each other (check image below). Also, make sure the cables are long enough to allow the tube and caps to be opened and closed properly. - - -![building_Sopranino 2nd image](./Images/building_Sopranino_2.jpg "Building a Sopranino T-Stick") - - - -The Capsense (https://www.cypress.com/le/127221/download) breakout boards use 2 3D printed bases. It connects via a jumper cable with SH1. -connectors to the D32 Pro (https://wiki.wemos.cc/products:d32:d32_pro). - -!!! warning - - THE CAPSENSE BOARD HAS THE CONNECTORS LABELED FOR THE MICROCONTROLLER (IN) AND IMU (OUT). BE CAREFUL WHEN CONNECTING THEM BECAUSE OF A LAST MINUTE CHANGE IN THE PINOUT OF THE BOARD. SEE SCHEMATIC BELOW. - -__The Capsense label for ground and +3V3 is inverted at the end that goes to the IMU. You should connect:__ - -__Capsense -> IMU__ -GND ------> +3V3 -SDA ------> SDA -SCL ------> SCL -+3V3------> GND - -![Capsense-IMU connection](./Images/IMU_connection.jpg "Capsense-IMU connection") - -Please take extra care since it is necessary to cut the cable and solder the right ends at the IMU. - -Also, if you need to extend the length of the SH1.0 cable, __always cut the wire in half and extend using both parts according to the color__. Using two different wires can lead to mistakes since the SH1.0 cable is parallel. __Failing to follow this step can end up burning your ESP32__. - -All the building tools can be found in the Machine Shop at the McGill Music Tech Department. - - -#### IMU: - -The [LSM9DS1](https://www.sparkfun.com/products/13284) IMU connects via another SH1.0 cable to the other socket on the Capsense for I2C communication. One end has the SH housing the other is open to solder onto the IMU breakout board. There are also 2 3D printed bases to attach the IMU to the frame. - -![T-Stick Sopranino IMU parts](./Images/SopraninoIMUparts.jpg "T-Stick Sopranino IMU parts") - -The T-Stick Spatial orientation is dened as follows: - -![T-Stick Sopranino orientation](./Images/T-Stick-Orientation.png "T-Stick Sopranino orientation") - -Please, install the IMU so that this conguration is kept consistent will the design. - - -#### FSR and Piezo Electronics: - -The Force Sensitive Resistor and the Piezoelectric sensor are glued to the frame with epoxy, superglue, or hot glue. - -![T-Stick Sopranino - piezo placement](./Images/piezo_in_place_h.jpg "T-Stick Sopranino - piezo placement") - -The signal processing circuit is all analog and needs to be soldered to a perfboard. The piezoelectric circuit output is to be soldered to pin 32 of the ESP32 and the FSR circuit output to pin 33. Electronic building tools can be found in the Electronics Shop at the McGill Music Tech Department. Solder long cables to the FSR pins. - -!!! tip - - The FSR pins are very delicate. Put some heat shrink tube to reinforce the end of the fsr so it doesn’t break. If it breaks, it’s not repairable. - -Here’s the pinout for the LM358 opamp you will be using in the above circuit: - -``` - +--()--+ - Output A | 1 8| V+ - Inverting Input A | 2 7| Output B -Non-Inverting Input A | 3 6| Inverting Input B - GND | 4 5| Non-Inverting Input B - +------+ -``` - -__OBS__: Don't forget to connect GND and V+. - -##### Envelope Follower Circuit - -![T-Stick Sopranino - Envelope Follower Circuit](./Images/envelope_follower.png "T-Stick Sopranino - Envelope Follower Circuit") - -##### Voltage Divider Circuit - -![T-Stick Sopranino - Voltage Divider Circuit](./Images/voltage_divider.png "T-Stick Sopranino - Envelope Voltage Divider") - - -#### Microcontroller: - -The microcontroller to be used with the T-Stick is the Lolin D32 PRO. You can check the tech specs at https://wiki.wemos.cc/products:d32:d32_pro. - -#### Firmware: - -Instructions to upload (flash) the T-Stick firmware and configuration files can be found [here](./flashing-guide.md). - -Read and follow __ALL__ the instructions at before upload it to the board. There are some steps to prepare your machine and the ESP32 before flash it for the first time. - -It is recommended to use the board test firmwares located at https://github.com/IDMIL/TStick/tree/master/Sopranino/2GW/19X/Tests to test the capsense board and the IMU after install them. - -Nightly builds and beta firmwares can be downloaded at https://github.com/IDMIL/TStick. Before using them, contact the IDMIL's lab team. - - -## More info: - -Version 1.1: Edu Meneses - eduardo.meneses@mail.mcgill.ca\ -Version 1.0: Created by: Alex Nieva - alex.nieva@mail.mcgill.ca - -__Input Devices and Music Interaction Laboratory__ -http://www.idmil.org\ -Schulich School of Music\ -McGill University\ -550 Rue Sherbrooke Ouest, Suite 500\ -Montreal, QC, H3A 1E\ -Canada - diff --git a/docs/designs/tstick-4gw/build-guide-2021.md b/docs/designs/tstick-4gw/build-guide-2021.md deleted file mode 100644 index 09e2702..0000000 --- a/docs/designs/tstick-4gw/build-guide-2021.md +++ /dev/null @@ -1,111 +0,0 @@ -# Building a Sopranino T-Stick 4GW - -## Bill of Materials - -| Qty | Description | -|----|----| -| 01 | [Trill](https://shop.bela.io/products/trill-craft/) | -| 01 | [TinyPICO](https://www.adafruit.com/product/4335) | -| 01 | [IMU breakout board LSM9DS](https://www.sparkfun.com/products/13284) | -| 01 | [FSR 408](https://www.robotshop.com/ca/en/interlink-24-long-fsr.html) | -| 01 | 1K resistor | -| 01 | [10K potentiometer](https://www.digikey.com/products/en?mpart=PV36W103C01B00&v=118) | -| 01 | [button](https://www.digikey.ca/product-detail/en/c-k/PTS125SM43-2-LFS/CKN9100-ND/1146743) | -| 01 | Li-Po Battery min 1000mA | -| 01 | PVC Tube (30 cm) | -| \~85cm | Copper adhesive tape | -| 01 | [ON-OFF rocker switch](https://www.digikey.ca/product-detail/en/RA1113112R/EG5619-ND/3778055/?itemSeq=307636370) | -| \~35cm | Heat shrink tube | -| 01 | end-cup with microcontroller base | -| 01 | end-cup with for the ON-OFF switch | -| 01 | [3D printed bases](https://github.com/IDMIL/T-Stick/tree/main/3D_printing), one of each file, and 4 regular poles | -| 11 | [M2 Mounting Screws](https://www.digikey.ca/product-detail/en/MPMS+002+0008+PH/H739-ND/274950/?itemSeq=307635387) | -| 01 | [foam sheet](https://www.amazon.ca/Craft-Foam-Sheets-Assorted-Colours/dp/B005EQPRM6) | - -## Instructions - -### Printing the Frame - -Print one of each of the [3d printing files](https://github.com/IDMIL/T-Stick/tree/main/3D_printing), but print 4 copies of the "regular poles". The beds (pieces that snap together) will need supports on the piece that snaps. - - ![Overview](Images/overview.png) - -Snap the beds together as in the image above, snapping the regular poles between beds to secure them. Place copper strips on each arc in the beds, these will be used for capacitive touch sensing. - -### Soldering Components - -All the building tools can be found in the Machine Shop at the McGill Music Tech Department. - - ![Overview with wires](Images/overview-wires.png) - -Let's start with the end cap where the TinyPICO will be inserted. Insert the button into the slot like the pictures below. - -| button top view | button bottom view | soldering | -|----|----|----| -| ![button top view](Images/button-top.png) | ![button bottom view](Images/button-bottom.png) | ![button soldering](Images/button-soldering.png) | - -Solder 2 wires diagonally to the button pins, connecting one to GND and one to pin 15 on the TinyPICO. For the GND connection, twist an extra wire together before soldering to the TinyPICO, which will be used for connecting the IMU later on. - -| connecting to TinyPICO | completed button circuit | -|----|----| -| ![connecting to TinyPico](Images/connecting-tinypico.png) | ![](Images/button-completecircuit.png) | - -To prepare the resistor for its FSR connection, solder 2 wires to one end and 1 to the other like below. Use heat shrink to wrap the connection. Solder the single end wire to a GND pin on the button. Solder one of the double end wires to pin 33 on the TinyPICO. - -| soldering | heat shrinking | connecting to TinyPICO | -|----|----|----| -| ![soldering two wires](Images/fsr-twowire.png) | ![heat shrinking](Images/heatshrink-fsrtwowire.png) | ![connecting to tinypico FSR](Images/fsr-tinypico.png) | - -Prepare the FSR connections by carefully soldering 2 wires to its terminals, using the extra wire form the resistor as one of the terminals. Be cautious not to melt the plastic on the FSR if possible by soldering quickly. Heat shrink the terminals when complete. - -| soldering | heat shrinking | -|----|----| -| ![soldering wire to FSR](Images/fsr-soldering.png) | ![heat shrinking on fsr](Images/fsr-heatshrink.png) | - -Solder the other FSR wire **and** another wire (which will connect to the IMU) to the 3V3 pin on the TinyPICO (yellow and orange in the picture below). Twisting the 2 wires together before inserting into the pin will make this task easier. - -| twisting and soldering | view of 3V3 pin | -|----|----| -| ![twisting 3v3 wire](Images/wire-twisted.png) | ![view of 3v3 wire](Images/wire-twisted-view2.png) | - -Solder 2 wires to each of the IMU's GND, VCC, SDA and SCL pins. One of the VCC wires and one of the GND wires should be the extra 3V3 and GND wires from the TinyPICO that you put in in the above steps. Connect one of the SDA wires to pin 21 of the TinyPICO, and one of the SCL wires to pin 22 of the TinyPICO. - -| twisting and soldering | connecting to TinyPICO | imu wiring | -|----|----|----| -| ![imu wiring](Images/imu-wiring.png) | ![imu wiring to tinypico](Images/imu-tinypico.png) | ![imu wiring alternative wiring](Images/imu-wiring-topview.png) | - -At this stage, the IMU should have unconnected wires (1 of each) from SDA, SCL, GND and VCC. Run the 4 unconnected wires through the pole and solder to the corresponding labeled pins on the Trill. - -| trill connections | alternate view | -|----|----| -| ![trill connections](Images/trill-wiring.png) | ![trill connections alternate view](Images/trill-wiring2.png) | - -Now for the fun part ;). Solder wires onto each of the 15 copper strips, running them through the poles to the Trill board when necessary. When cutting wires for this part, allow enough length to get to the Trill, but not too long to clutter the internals. Solder the other ends of the wires **in order** from pico towards the end cap to pins 0-15 on the Trill board. - -| copper soldering | alternate view | -|----|----| -| ![copper soldering](Images/copper-soldering.png) | ![alternate view](Images/copper-soldering2.png) | - -Connect long wires from the 5V and GND pins of the TinyPICO (for the battery), and run them through the poles to the other end. Mount the IMU and Trill boards to their beds, and insert the TinyPICO into its slot in the end cap with the button. Slide the entire frame with the button cap into the PVC, making sure the long power wires can be accessed from the open end. Attach the FSR to the outside of the PVC, cutting the end if it's too long. Use the end cap's slot for the FSR wires to come out of the frame. - -**IMU Mounting Note:** Please install the IMU so that this configuration is kept consistent will the design. - - ![T-Stick Sopranino orientation](./Images/orientation.png) - - ![T-Stick inserted in pipe](./Images/tstick-insert.png) - -Insert the power switch into the other end cap. Solder the power wire of the battery to the power switch as in the picture below, twisting together the long power wire from the TinyPICO sticking out the end. Solder the long GND wire to the battery's GND. - -**Important Note**: 2nd picture below should have ran the wires through the poles and inserted into the frame before soldering to the TinyPICO, be sure to do this before soldering the battery to the TinyPICO. - -| power soldering | power circuit view | -|----|----| -| ![on/off circuit wiring](Images/power-circuit.png) | ![power circuit alternate view](Images/powercircuit-overview.png) | - -Hooray, you built a T-Stick! - -### Document info - -- Version 1.2: Brady Boettcher -- Version 1.1: Edu Meneses - eduardo.meneses@mail.mcgill.ca -- Version 1.0: Alex Nieva - alex.nieva@mail.mcgill.ca \ No newline at end of file diff --git a/docs/designs/tstick-4gw/build-guide.md b/docs/designs/tstick-4gw/build-guide.md new file mode 100644 index 0000000..d24f231 --- /dev/null +++ b/docs/designs/tstick-4gw/build-guide.md @@ -0,0 +1,261 @@ +# Building a Sopranino T-Stick 4GW + +=== "4GW-2018" + + ## Bill of Materials: + + Qty | Type | Description + ------|---------------------|----------------------------------------------------------------------------------- + 01 | sensor | [Capsense](https://www.cypress.com/le/127221/download) breakout board (CY8CMBR3116) + 01 | sensor | [IMU breakout board LSM9DS](https://www.sparkfun.com/products/13284) + 01 | sensor | [FSR 408](https://www.robotshop.com/ca/en/interlink-24-long-fsr.html) + 01 | sensor | [buzz elem. piezo STD](https://www.digikey.ca/product-detail/en/cui-inc/CEB-20D64/102-1126-ND/412385) + 01 | electronics | [microcontroller Lolin D32 Pro](https://wiki.wemos.cc/products:d32:d32_pro) + 01 | electronics | [0.1uF capacitor](https://www.digikey.ca/product-detail/en/kemet/C320C104J5R5TA7301/399-9867-1-ND/3726105) + 01 | electronics | 1K resistor + 01 | electronics | [10K resistor](https://www.digikey.ca/product-detail/en/CFM12JT10K0/S10KHCT-ND/2617547/?itemSeq=307630589) + 01 | electronics | [2M resistor](https://www.digikey.ca/product-detail/en/CFM12JT2M00/S2MHCT-ND/2617413/?itemSeq=307631009) + 01 | electronics | [Diode 1N4004](https://www.digikey.ca/product-detail/en/1N4004-TP/1N4004-TPMSCT-ND/773691/?itemSeq=307634719) + 01 | electronics | [10K potentiometer](https://www.digikey.com/products/en?mpart=PV36W103C01B00&v=118) + 01 | electronics | [LM358P Opamp](https://www.digikey.ca/products/en?keywords=296-1395-5-ND) + 01 | electronics | [button](https://www.digikey.ca/product-detail/en/c-k/PTS125SM43-2-LFS/CKN9100-ND/1146743) + 02 | electronics | [SH1.0 cables](https://www.aliexpress.com/item/32877217306.html) + 02 | electronics | [Breadboards](https://www.digikey.ca/product-detail/en/sparkfun-electronics/PRT-08808/1568-1652-ND/7387401) + 30cm | manufacturing parts | PVC Tube split in 2 lenghtwise + ~85cm | manufacturing parts | Copper adhesive tape + 01 | manufacturing parts | Li-Po Battery (min 1000mA) + 01 | manufacturing parts | [ON-OFF rocker switch](https://www.digikey.ca/product-detail/en/RA1113112R/EG5619-ND/3778055/?itemSeq=307636370) + ~35cm | manufacturing parts | Heat shrink tube + 01 | manufacturing parts | end-cup with microcontroller base + 01 | manufacturing parts | end-cup with for the ON-OFF switch and hold battery + 02 | manufacturing parts | 3D printed bases for Capsense + 02 | manufacturing parts | [3D printed bases for IMU](./Images/SopraninoIMUparts.jpg) + 11 | manufacturing parts | [M2 Mounting Screws](https://www.digikey.ca/product-detail/en/MPMS+002+0008+PH/H739-ND/274950/?itemSeq=307635387) + 11 | manufacturing parts | [M2 bolts](https://www.digikey.ca/product-detail/en/MHNZ+002+4/H761-ND/274972/?itemSeq=307635458) + 01 | manufacturing parts | [foam sheet](https://www.amazon.ca/Craft-Foam-Sheets-Assorted-Colours/dp/B005EQPRM6) + + + ## Schematic: + + ![T-Stick Sopranino schematics](./Images/Sopranino2GW_schematics.png "T-Stick Sopranino schematics") + + This schematic is outdated. Use for FSR and Piezo Electronics reference only. + + ## Instructions: + + #### Building the Frame: + + Cut the PVC in half as in the picture and tape the conductive tape 1.5cm apart.  + Length of holes assembly is 1.5 * 15 for 16 strips. That is 22.5cm. You need aprox. 8 cm of copper tape per strip. + + !!! tip + + Before start assembling the T-Stick, pay attention to the position of the components. Plan yourself to place the components for them to not "overlap" each other (check image below). Also, make sure the cables are long enough to allow the tube and caps to be opened and closed properly. + + + ![building_Sopranino 2nd image](./Images/building_Sopranino_2.jpg "Building a Sopranino T-Stick") + + + + The Capsense (https://www.cypress.com/le/127221/download) breakout boards use 2 3D printed bases. It connects via a jumper cable with SH1. + connectors to the D32 Pro (https://wiki.wemos.cc/products:d32:d32_pro). + + !!! warning + + THE CAPSENSE BOARD HAS THE CONNECTORS LABELED FOR THE MICROCONTROLLER (IN) AND IMU (OUT). BE CAREFUL WHEN CONNECTING THEM BECAUSE OF A LAST MINUTE CHANGE IN THE PINOUT OF THE BOARD. SEE SCHEMATIC BELOW. + + __The Capsense label for ground and +3V3 is inverted at the end that goes to the IMU. You should connect:__ + + __Capsense -> IMU__ + GND ------> +3V3 + SDA ------> SDA + SCL ------> SCL + +3V3------> GND + + ![Capsense-IMU connection](./Images/IMU_connection.jpg "Capsense-IMU connection") + + Please take extra care since it is necessary to cut the cable and solder the right ends at the IMU. + + Also, if you need to extend the length of the SH1.0 cable, __always cut the wire in half and extend using both parts according to the color__. Using two different wires can lead to mistakes since the SH1.0 cable is parallel. __Failing to follow this step can end up burning your ESP32__. + + All the building tools can be found in the Machine Shop at the McGill Music Tech Department. + + + #### IMU: + + The [LSM9DS1](https://www.sparkfun.com/products/13284) IMU connects via another SH1.0 cable to the other socket on the Capsense for I2C communication. One end has the SH housing the other is open to solder onto the IMU breakout board. There are also 2 3D printed bases to attach the IMU to the frame. + + ![T-Stick Sopranino IMU parts](./Images/SopraninoIMUparts.jpg "T-Stick Sopranino IMU parts") + + The T-Stick Spatial orientation is dened as follows: + + ![T-Stick Sopranino orientation](./Images/T-Stick-Orientation.png "T-Stick Sopranino orientation") + + Please, install the IMU so that this conguration is kept consistent will the design. + + + #### FSR and Piezo Electronics: + + The Force Sensitive Resistor and the Piezoelectric sensor are glued to the frame with epoxy, superglue, or hot glue. + + ![T-Stick Sopranino - piezo placement](./Images/piezo_in_place_h.jpg "T-Stick Sopranino - piezo placement") + + The signal processing circuit is all analog and needs to be soldered to a perfboard. The piezoelectric circuit output is to be soldered to pin 32 of the ESP32 and the FSR circuit output to pin 33. Electronic building tools can be found in the Electronics Shop at the McGill Music Tech Department. Solder long cables to the FSR pins. + + !!! tip + + The FSR pins are very delicate. Put some heat shrink tube to reinforce the end of the fsr so it doesn’t break. If it breaks, it’s not repairable. + + Here’s the pinout for the LM358 opamp you will be using in the above circuit: + + ``` + +--()--+ + Output A | 1 8| V+ + Inverting Input A | 2 7| Output B + Non-Inverting Input A | 3 6| Inverting Input B + GND | 4 5| Non-Inverting Input B + +------+ + ``` + + __OBS__: Don't forget to connect GND and V+. + + ##### Envelope Follower Circuit + + ![T-Stick Sopranino - Envelope Follower Circuit](./Images/envelope_follower.png "T-Stick Sopranino - Envelope Follower Circuit") + + ##### Voltage Divider Circuit + + ![T-Stick Sopranino - Voltage Divider Circuit](./Images/voltage_divider.png "T-Stick Sopranino - Envelope Voltage Divider") + + + #### Microcontroller: + + The microcontroller to be used with the T-Stick is the Lolin D32 PRO. You can check the tech specs at https://wiki.wemos.cc/products:d32:d32_pro. + + #### Firmware: + + Instructions to upload (flash) the T-Stick firmware and configuration files can be found [here](./flashing-guide.md). + + Read and follow __ALL__ the instructions at before upload it to the board. There are some steps to prepare your machine and the ESP32 before flash it for the first time. + + It is recommended to use the board test firmwares located at https://github.com/IDMIL/TStick/tree/master/Sopranino/2GW/19X/Tests to test the capsense board and the IMU after install them. + + Nightly builds and beta firmwares can be downloaded at https://github.com/IDMIL/TStick. Before using them, contact the IDMIL's lab team. + + + ## More info: + + Version 1.1: Edu Meneses - eduardo.meneses@mail.mcgill.ca\ + Version 1.0: Created by: Alex Nieva - alex.nieva@mail.mcgill.ca + +=== "4GW-2021" + + ## Bill of Materials + + | Qty | Description | + |----|----| + | 01 | [Trill](https://shop.bela.io/products/trill-craft/) | + | 01 | [TinyPICO](https://www.adafruit.com/product/4335) | + | 01 | [IMU breakout board LSM9DS](https://www.sparkfun.com/products/13284) | + | 01 | [FSR 408](https://www.robotshop.com/ca/en/interlink-24-long-fsr.html) | + | 01 | 1K resistor | + | 01 | [10K potentiometer](https://www.digikey.com/products/en?mpart=PV36W103C01B00&v=118) | + | 01 | [button](https://www.digikey.ca/product-detail/en/c-k/PTS125SM43-2-LFS/CKN9100-ND/1146743) | + | 01 | Li-Po Battery min 1000mA | + | 01 | PVC Tube (30 cm) | + | \~85cm | Copper adhesive tape | + | 01 | [ON-OFF rocker switch](https://www.digikey.ca/product-detail/en/RA1113112R/EG5619-ND/3778055/?itemSeq=307636370) | + | \~35cm | Heat shrink tube | + | 01 | end-cup with microcontroller base | + | 01 | end-cup with for the ON-OFF switch | + | 01 | [3D printed bases](https://github.com/IDMIL/T-Stick/tree/main/3D_printing), one of each file, and 4 regular poles | + | 11 | [M2 Mounting Screws](https://www.digikey.ca/product-detail/en/MPMS+002+0008+PH/H739-ND/274950/?itemSeq=307635387) | + | 01 | [foam sheet](https://www.amazon.ca/Craft-Foam-Sheets-Assorted-Colours/dp/B005EQPRM6) | + + ## Instructions + + ### Printing the Frame + + Print one of each of the [3d printing files](https://github.com/IDMIL/T-Stick/tree/main/3D_printing), but print 4 copies of the "regular poles". The beds (pieces that snap together) will need supports on the piece that snaps. + + ![Overview](Images/overview.png) + + Snap the beds together as in the image above, snapping the regular poles between beds to secure them. Place copper strips on each arc in the beds, these will be used for capacitive touch sensing. + + ### Soldering Components + + All the building tools can be found in the Machine Shop at the McGill Music Tech Department. + + ![Overview with wires](Images/overview-wires.png) + + Let's start with the end cap where the TinyPICO will be inserted. Insert the button into the slot like the pictures below. + + | button top view | button bottom view | soldering | + |----|----|----| + | ![button top view](Images/button-top.png) | ![button bottom view](Images/button-bottom.png) | ![button soldering](Images/button-soldering.png) | + + Solder 2 wires diagonally to the button pins, connecting one to GND and one to pin 15 on the TinyPICO. For the GND connection, twist an extra wire together before soldering to the TinyPICO, which will be used for connecting the IMU later on. + + | connecting to TinyPICO | completed button circuit | + |----|----| + | ![connecting to TinyPico](Images/connecting-tinypico.png) | ![](Images/button-completecircuit.png) | + + To prepare the resistor for its FSR connection, solder 2 wires to one end and 1 to the other like below. Use heat shrink to wrap the connection. Solder the single end wire to a GND pin on the button. Solder one of the double end wires to pin 33 on the TinyPICO. + + | soldering | heat shrinking | connecting to TinyPICO | + |----|----|----| + | ![soldering two wires](Images/fsr-twowire.png) | ![heat shrinking](Images/heatshrink-fsrtwowire.png) | ![connecting to tinypico FSR](Images/fsr-tinypico.png) | + + Prepare the FSR connections by carefully soldering 2 wires to its terminals, using the extra wire form the resistor as one of the terminals. Be cautious not to melt the plastic on the FSR if possible by soldering quickly. Heat shrink the terminals when complete. + + | soldering | heat shrinking | + |----|----| + | ![soldering wire to FSR](Images/fsr-soldering.png) | ![heat shrinking on fsr](Images/fsr-heatshrink.png) | + + Solder the other FSR wire **and** another wire (which will connect to the IMU) to the 3V3 pin on the TinyPICO (yellow and orange in the picture below). Twisting the 2 wires together before inserting into the pin will make this task easier. + + | twisting and soldering | view of 3V3 pin | + |----|----| + | ![twisting 3v3 wire](Images/wire-twisted.png) | ![view of 3v3 wire](Images/wire-twisted-view2.png) | + + Solder 2 wires to each of the IMU's GND, VCC, SDA and SCL pins. One of the VCC wires and one of the GND wires should be the extra 3V3 and GND wires from the TinyPICO that you put in in the above steps. Connect one of the SDA wires to pin 21 of the TinyPICO, and one of the SCL wires to pin 22 of the TinyPICO. + + | twisting and soldering | connecting to TinyPICO | imu wiring | + |----|----|----| + | ![imu wiring](Images/imu-wiring.png) | ![imu wiring to tinypico](Images/imu-tinypico.png) | ![imu wiring alternative wiring](Images/imu-wiring-topview.png) | + + At this stage, the IMU should have unconnected wires (1 of each) from SDA, SCL, GND and VCC. Run the 4 unconnected wires through the pole and solder to the corresponding labeled pins on the Trill. + + | trill connections | alternate view | + |----|----| + | ![trill connections](Images/trill-wiring.png) | ![trill connections alternate view](Images/trill-wiring2.png) | + + Now for the fun part ;). Solder wires onto each of the 15 copper strips, running them through the poles to the Trill board when necessary. When cutting wires for this part, allow enough length to get to the Trill, but not too long to clutter the internals. Solder the other ends of the wires **in order** from pico towards the end cap to pins 0-15 on the Trill board. + + | copper soldering | alternate view | + |----|----| + | ![copper soldering](Images/copper-soldering.png) | ![alternate view](Images/copper-soldering2.png) | + + Connect long wires from the 5V and GND pins of the TinyPICO (for the battery), and run them through the poles to the other end. Mount the IMU and Trill boards to their beds, and insert the TinyPICO into its slot in the end cap with the button. Slide the entire frame with the button cap into the PVC, making sure the long power wires can be accessed from the open end. Attach the FSR to the outside of the PVC, cutting the end if it's too long. Use the end cap's slot for the FSR wires to come out of the frame. + + **IMU Mounting Note:** Please install the IMU so that this configuration is kept consistent will the design. + + ![T-Stick Sopranino orientation](./Images/orientation.png) + + ![T-Stick inserted in pipe](./Images/tstick-insert.png) + + Insert the power switch into the other end cap. Solder the power wire of the battery to the power switch as in the picture below, twisting together the long power wire from the TinyPICO sticking out the end. Solder the long GND wire to the battery's GND. + + **Important Note**: 2nd picture below should have ran the wires through the poles and inserted into the frame before soldering to the TinyPICO, be sure to do this before soldering the battery to the TinyPICO. + + | power soldering | power circuit view | + |----|----| + | ![on/off circuit wiring](Images/power-circuit.png) | ![power circuit alternate view](Images/powercircuit-overview.png) | + + Hooray, you built a T-Stick! + + ### Document info + + - Version 1.2: Brady Boettcher + - Version 1.1: Edu Meneses - eduardo.meneses@mail.mcgill.ca + - Version 1.0: Alex Nieva - alex.nieva@mail.mcgill.ca \ No newline at end of file diff --git a/docs/designs/tstick-4gw/index.md b/docs/designs/tstick-4gw/index.md index e9494b7..14299fc 100644 --- a/docs/designs/tstick-4gw/index.md +++ b/docs/designs/tstick-4gw/index.md @@ -4,6 +4,15 @@ The T-Stick 4GW was designed by Eduardo Meneses and Alex Nieva with the first revision being completed in 2018. This generation of T-Sticks is a Wi-Fi based system using Open Sound Control and later Libmapper for sending signals. It uses the ESP32 microcontroller for controlling the T-Stick. Multiple development boards such as the Lolin D32 and TinyPico have been used with this design. Although the design is modular and can in theory support T-Sticks up to the length of a Tenor T-Stick. Limitations due to how the T-Stick is constructed and firmware makes this design appropriate only for Sopranino and Soprano T-Sticks. +### Guides +For information on how to use the T-Stick 4GW check out the guides below: +
+ +- [:material-wrench: __Build Guide__](./build-guide.md) +- [:material-upload: __Flashing Guide__](./flashing-guide.md) +- [:material-wifi: __Connection Guide__](./connection-guide.md) +
+ ### 4th Generation T-Sticks Click each box to get more information on each variant of the T-Stick 4GW diff --git a/docs/designs/tstick-4gw/specs_4gw_2018.md b/docs/designs/tstick-4gw/specs_4gw_2018.md index f58ce64..6fd51dc 100644 --- a/docs/designs/tstick-4gw/specs_4gw_2018.md +++ b/docs/designs/tstick-4gw/specs_4gw_2018.md @@ -6,15 +6,7 @@ The T-Stick 4GW was designed by Eduardo Meneses and Alex Nieva with the first revision being completed in 2018. This generation of T-Sticks is a Wi-Fi based system using Open Sound Control and later Libmapper for sending signals. It uses the ESP32 microcontroller for controlling the T-Stick. Multiple development boards such as the Lolin D32 and TinyPico have been used with this design. Although the design is modular and can in theory support T-Sticks up to the length of a Tenor T-Stick. Limitations due to how the T-Stick is constructed and firmware makes this design appropriate only for Sopranino and Soprano T-Sticks. -## Guides -For information on how to use the T-Stick 4GW-2018 check out the guides below: -
-- [:material-wrench: __Build Guide__](./build-guide-2018.md) -- [:material-upload: __Flashing Guide__](./flashing-guide.md) -- [:material-wifi: __Connection Guide__](./connection-guide.md) - -
## Specifications | Feature | Details | diff --git a/docs/designs/tstick-4gw/specs_4gw_2021.md b/docs/designs/tstick-4gw/specs_4gw_2021.md index 2116f1c..280e36a 100644 --- a/docs/designs/tstick-4gw/specs_4gw_2021.md +++ b/docs/designs/tstick-4gw/specs_4gw_2021.md @@ -6,16 +6,6 @@ The T-Stick 4GW-2021 was designed by Eduardo Meneses in September of 2021. It uses the same signal namespace as the T-Stick 4GW-2018 but replaces the IDMIL capsence board with [Bela's Trill Craft Touch Board](https://bela.io/products/trill/). -## Guides -For information on how to use the T-Stick 4GW-2021 check out the guides below: -
- -- [:material-wrench: __Build Guide__](./build-guide-2021.md) -- [:material-upload: __Flashing Guide__](./flashing-guide.md) -- [:material-wifi: __Connection Guide__](./connection-guide.md) - -
- ## Specifications | Feature | Details | |-----------------------------|------------------------------------------------------------------------------------------------------| diff --git a/docs/designs/tstick-5gw/Images/pio-home-button.png b/docs/designs/tstick-5gw/Images/pio-home-button.png new file mode 100644 index 0000000..1ba3bb4 Binary files /dev/null and b/docs/designs/tstick-5gw/Images/pio-home-button.png differ diff --git a/docs/designs/tstick-5gw/Images/vscode-environment.png b/docs/designs/tstick-5gw/Images/vscode-environment.png new file mode 100644 index 0000000..ada7914 Binary files /dev/null and b/docs/designs/tstick-5gw/Images/vscode-environment.png differ diff --git a/docs/designs/tstick-5gw/Images/vscode-open-folder.png b/docs/designs/tstick-5gw/Images/vscode-open-folder.png new file mode 100644 index 0000000..7087414 Binary files /dev/null and b/docs/designs/tstick-5gw/Images/vscode-open-folder.png differ diff --git a/docs/designs/tstick-5gw/Images/vscode-project-tasks.png b/docs/designs/tstick-5gw/Images/vscode-project-tasks.png new file mode 100644 index 0000000..0d418e1 Binary files /dev/null and b/docs/designs/tstick-5gw/Images/vscode-project-tasks.png differ diff --git a/docs/designs/tstick-5gw/build-guide-enchanti.md b/docs/designs/tstick-5gw/build-guide-enchanti.md deleted file mode 100644 index 87d2781..0000000 --- a/docs/designs/tstick-5gw/build-guide-enchanti.md +++ /dev/null @@ -1,149 +0,0 @@ -# Building a Soprano T-Stick 5GW-Enchanti - -!!! warning - - This guide is still under constructions. Links to files/products may be broken. If you find a broken link please open an issue on github. - -!!! note - - This guide is for building a Soprano T-Stick 5GW. - -## Bill of Materials - -| Qty | Description | -|--------|---------------------------------------------------------------------------------------------| -| 01 | [EnchantiTouch Board](https://github.com/IDMIL/EnchantiTouch) | -| 01 | [EnchantiS3 Board](https://github.com/IDMIL/EnchantiS3) | -| 01 | Flex PCB touch sensor | -| 01 | 60cm FSR 408 | -| 01 | [6mm Button](https://www.adafruit.com/product/4184) | -| 01 | Li-Po/Li-ion Battery min 1000mA | -| 01 | ABS/PVC Tube | -| 02 | Sparkfun Qwiic Cable or equivalent (at least 10cm) (longer T-Sticks need additional cables) | -| 02 | JST-SH 2 pin cable | -| \~65cm | Heat shrink tube (80mm diameter) | -| 01 | end-cup with microcontroller base | -| 01 | end-cup with for the ON-OFF switch | -| 01 | 3D printed bases, one of each file, and 4 regular poles | -| 11 | M3 Mounting Screws | -| 04 | M3 Inserts (6mm) | -| 06 | M2 Inserts (6mm) | -| 01 | foam sheet | -| 01 | Plastic glue | -| 01 | 18650 battery holder (if using 18650 battery) | -| 01 | 2 pin JST-PH cable (if using 18650 battery) | - -## Instructions - -### Prepare the 3D printed components - -Print the following [files from the T-Stick repository](https://github.com/aburt2/T-Stick/tree/5gw-main/3D_printing/T-Stick%205GW). - -- x1 esp32-endcap -- x1 esp32-capcloser -- x1 touch-board-bed -- x2 touch-board-door -- x1 blank-endcap - -!!! note - If you are using an 18650 battery you will need to print ``liion-endcap`` and ``liion-capcloser`` instead of the ``blank-endcap``. - -![Overview of 3D printed components](./Images/components.jpg) - -#### Adding inserts - -Use a soldering iron or other heat source to add M2 inserts to the front of the ESP32 bed piece (x2). - -![M2 inserts in the front of the ESP32 cap](./Images/m2_insert_cap.jpg) - -Add M3 inserts to the holes inside the ESP32 bed (x2). These will be used to screw in the board to the component. - -![M3 inserts for ESP32 board](./Images/m3_inset_cap.jpg) - -Add M2 inserts to the holes on the side of the touch board beds (x4). These will be used to screw in the touch board doors. - -![M2 inserts for the touch board bed](./Images/m2_inserts_touch.jpg) - -Add M3 inserts to the 3rd and 5th hole on the bottom of the touch board beds (x2). These will be used to secure the Enchanti touch board. - -!!! tip - Add the M3 inserts from the top (from the flat part of the piece). This will ensure that you don't get fillament in the way when attempting to screw in the boards. - -### Prepare the ABS/PVC Pipe - -Cut the ABS/PVC pipe into two pieces. Each with a length of about ~10inch/25cm. Use super glue or other alternative methods to glue the touch board bed to both pieces of the ABS/PVC pipe. - -![touch board bed glued to pipe](./Images/pipe-glued.jpg) - -!!! tip - We recommend using a drop saw/mitre saw to get a clean cut - -#### Setup the touch board - -Flash the Enchanti Touch board using the firmware found [here](https://github.com/IDMIL/EnchantiTouch/releases/). You can find instructions for how to flash the PSoC 4100S Max on [Infineon's website](https://www.infineon.com/dgdl/Infineon-ModusToolbox_3.2_b_VS_Code_User_Guide-UserManual-v01_00-EN.pdf?fileId=8ac78c8c8d2fe47b018e0ea954a278fb) - -Use two M3 screws to screw the Enchanti Touch board to the touch board bed. Connect the touch sensor to the FFC connectors on the Enchanti Touch board. Peel the cover from the tape and tape the touch sensor against the pipe as shown below. - -![touch sensor mounted](./Images/touch_sensor_mounted.jpg) - -#### Mount the FSR - -Cut the 2-pin JST cable to about 10cm as shown in the image below. - -![cut jst cable, next to fsr](./Images/fsr-unassembled.jpg) - -Solder the two ends of the JST cable to the two terminals of the FSR. - -!!! warning - Take care with soldering the FSR. Excessive heat will damage the FSR pins. - -![soldered FSR connection](./Images/fsr-soldered.jpg) - -!!! tip - The FSR pins are very delicate. Put some heat shrink tube to reinforce the end of the fsr so it doesn’t break. If it breaks, it’s not repairable. - -!!! tip - It is recommended to put a bit of solder on both the FSR terminals and the ends of the FSR cables. This allows you to quickly solder the FSR, without damaging the terminals due to excessive heat. Use heat shrink to prevent shorts. - -Attach the FSR to the outside of the ABS/PVC pipe on the opposite end of the touch sensor, cutting the end if it's too long. Cut the foam sheets into rectangles and tape it over the FSR. - -| FSR mounted, before adding foam sheet | FSR mounted with foam sheet | -|-------------------------------------------------------------------|----------------------------------------------------------------------| -| ![fsr mounted uncovered](./Images/fsr_mounted_uncovered.jpg) | ![fsr mounted covered by foam sheet](./Images/fsr-mounted.jpg) | - - -#### Apply Heat Shrink - -Cut the Heat shrink leaving a little heat shrink at both ends of the pipe. Shrink the heat shrink over the pipe, making sure to not overtighten the heat shrink over the FSR side of the pipe. Once the heat shrink has been applied. Cut a hole in the heat shrink where the touch board is. - -!!! warning - Be careful to not cut the touch sensor - -![heat shrink cut open](./Images/heat-shrink-cut.jpg) - -### Prepare the EnchantiS3 Board - -Use two M3 screws to secure the EnchantiS3 board to the ESP32 endcap. Glue the button in the button slot on the ESP32 bed piece. Cut another 2-Pin JST cable (like the one used for the FSR). Solder the two ends of the JST cable vertically to the button pins. Connect the JST cable from the button to the BTN header on the EnchantiS3 board. - -![EnchantiS3 Board on the ESP32 bed](./Images/board-in-cap.jpg) - -### Final Assembly - -Glue both endcaps to the ends of the pipe. Connect the JST cable from the FSR to the FSR header on the EnchantiS3 board. - -!!! info - It is really important that there is a strong adhesion when gluing the components together. Use glue designed for the plastic pipe you are using. - -![Endcap attached to the T-Stick](./Images/cap-glued.jpg) - -Use M2 screws add the touch door beds to the T-Stick. - -![Touch door connected to T-Stick](./Images/touch-door-closed.jpg) - -## Next Steps -Congratulations you have built a T-Stick 5GW-Enchanti! Instructions to upload (flash) the T-Stick firmware and configuration files can be found [here](./flashing-guide.md). - -Read and follow __ALL__ the instructions before uploading the firmware to the board. There are some steps to prepare your machine and the ESP32 before flash it for the first time. - -## More info: -Version 0.0: Created by: Albert-Ngabo Niyonsenga - aniyonsenga@gmail.com \ No newline at end of file diff --git a/docs/designs/tstick-5gw/build-guide-trill.md b/docs/designs/tstick-5gw/build-guide-trill.md deleted file mode 100644 index 7f80a7c..0000000 --- a/docs/designs/tstick-5gw/build-guide-trill.md +++ /dev/null @@ -1,147 +0,0 @@ -# Building a Sopraniono T-Stick 5GW-Trill - -!!! warning - - This guide is still under constructions. Links to files/products may be broken. If you find a broken link please open an issue on github. - -!!! note - - This guide is for building a Sopranino T-Stick 5GW-Trill. - -## Bill of Materials - -| Qty | Description | -|--------|---------------------------------------------------------------------------------------------| -| 01 | [Trill Craft Board](https://shop.bela.io/collections/trill/products/trill-craft) | -| 01 | [EnchantiS3 Board](https://github.com/IDMIL/EnchantiS3) | -| 01 | Trill Extension Board | -| 01 | Flex PCB touch sensor | -| 01 | 30cm FSR 408 | -| 01 | [6mm Button](https://www.adafruit.com/product/4184) | -| 01 | Li-Po/Li-ion Battery min 1000mA | -| 01 | ABS/PVC Tube | -| 02 | Sparkfun Qwiic Cable or equivalent (at least 10cm) (longer T-Sticks need additional cables) | -| 02 | JST-SH 2 pin cable | -| \~35cm | Heat shrink tube | -| 01 | end-cup with microcontroller base | -| 01 | end-cup with for the ON-OFF switch | -| 01 | 3D printed bases, one of each file, and 4 regular poles | -| 11 | M3 Mounting Screws | -| 01 | foam sheet | - -## Instructions - -### Prepare the 3D printed components - -Print the following [files from the T-Stick repository](https://github.com/aburt2/T-Stick/tree/5gw-main/3D_printing/T-Stick%205GW). - -- x1 esp32-endcap -- x1 esp32-capcloser -- x1 touch-board-bed -- x2 touch-board-door -- x1 blank-endcap - -!!! note - If you are using an 18650 battery you will need to print ``liion-endcap`` and ``liion-capcloser`` instead of the ``blank-endcap``. - -![Overview of 3D printed components](#) - -#### Adding inserts - -Use a soldering iron or other heat source to add M2 inserts to the front of the ESP32 bed piece (x2). - -![M2 inserts in the front of the ESP32 cap](#) - -Add M3 inserts to the holes inside the ESP32 bed (x2). These will be used to screw in the board to the component. - -![M3 inserts for ESP32 board](#) - -Add M2 inserts to the holes on the side of the touch board beds (x4). These will be used to screw in the touch board doors. - -![M2 inserts for the touch board bed](#) - -### Prepare the ABS/PVC Pipe - -Cut the ABS/PVC pipe two pieces. One piece should be about ~8inch/20cm and other a short piece about ~1.2inch/3cm. Use super glue or other alternative methods to glue the touch board bed to both pieces of the ABS/PVC pipe. Make sure to glue the short piece to the end closest to the M3 inserts - -!!! warning - -![touch board bed glued to pipe](#) - -!!! tip - We recommend using a drop saw/mitre saw to get a clean cut - -Add M3 inserts to the last two holes closest to the short PVC pipe on the bottom of the touch board beds (x2). These will be used to secure the Trill Craft board. - -!!! tip - Add the M3 inserts from the top (from the flat part of the piece). This will ensure that you don't get fillament in the way when attempting to screw in the boards. - -#### Setup the touch board - -Solder the Trill Craft board on the Trill Craft Extension Board. Make sure to line up the - -Use two M3 screws to screw the Trill Craft extension board to the touch board bed. Connect the touch sensor to the FFC connectors on the Trill Craft board. Peel the cover from the tape and tape the touch sensor against the pipe as shown below. - -![touch sensor mounted](#) - -#### Mount the FSR - -Cut the 2-pin JST cable to about 10cm as shown in the image below. - -![cut jst cable, next to fsr](#) - -Solder the two ends of the JST cable to the two terminals of the FSR. - -!!! warning - Take care with soldering the FSR. Excessive heat will damage the FSR pins. - -![soldered FSR connection](#) - -!!! tip - The FSR pins are very delicate. Put some heat shrink tube to reinforce the end of the fsr so it doesn’t break. If it breaks, it’s not repairable. - -!!! tip - It is recommended to put a bit of solder on both the FSR terminals and the ends of the FSR cables. This allows you to quickly solder the FSR, without damaging the terminals due to excessive heat. Use heat shrink to prevent shorts. - -Attach the FSR to the outside of the ABS/PVC pipe on the opposite end of the touch sensor, cutting the end if it's too long. Cut the foam sheets into rectangles and tape it over the FSR. - -| FSR mounted, before adding foam sheet | FSR mounted with foam sheet | -|-------------------------------------------------------------------|----------------------------------------------------------------------| -| ![fsr mounted uncovered](#) | ![fsr mounted covered by foam sheet](#) | - - -#### Apply Heat Shrink - -Cut the Heat shrink leaving a little heat shrink at both ends of the pipe. Shrink the heat shrink over the pipe, making sure to not overtighten the heat shrink over the FSR side of the pipe. Once the heat shrink has been applied. Cut a hole in the heat shrink where the touch board is. - -!!! warning - Be careful to not cut the touch sensor - -![heat shrink cut open](#) - -### Prepare the EnchantiS3 Board - -Use two M3 screws to secure the EnchantiS3 board to the ESP32 endcap. Glue the button in the button slot on the ESP32 bed piece. Cut another 2-Pin JST cable (like the one used for the FSR). Solder the two ends of the JST cable vertically to the button pins. Connect the JST cable from the button to the BTN header on the EnchantiS3 board. - -![EnchantiS3 Board on the ESP32 bed](#) - -### Final Assembly - -Glue both endcaps to the ends of the pipe. Connect the JST cable from the FSR to the FSR header on the EnchantiS3 board. - -!!! info - It is really important that there is a strong adhesion when gluing the components together. Use glue designed for the plastic pipe you are using. - -![Endcap attached to the T-Stick](#) - -Use M2 screws add the touch door beds to the T-Stick. - -![Touch door connected to T-Stick](#) - -## Next Steps -Congratulations you have built a T-Stick 5GW-Trill! Instructions to upload (flash) the T-Stick firmware and configuration files can be found [here](./flashing-guide.md). - -Read and follow __ALL__ the instructions before uploading the firmware to the board. There are some steps to prepare your machine and the ESP32 before flash it for the first time. - -## More info: -Version 0.0: Created by: Albert-Ngabo Niyonsenga - aniyonsenga@gmail.com \ No newline at end of file diff --git a/docs/designs/tstick-5gw/build-guide.md b/docs/designs/tstick-5gw/build-guide.md new file mode 100644 index 0000000..1841790 --- /dev/null +++ b/docs/designs/tstick-5gw/build-guide.md @@ -0,0 +1,284 @@ +# Building a T-Stick 5GW + +!!! warning + + This guide is still under constructions. Links to files/products may be broken. If you find a broken link please open an issue on github. + + +=== "5GW-Trill" + + ## Bill of Materials + | Qty | Description | + |--------|---------------------------------------------------------------------------------------------| + | 01 | [Trill Craft Board](https://shop.bela.io/collections/trill/products/trill-craft) | + | 01 | [EnchantiS3 Board](https://github.com/IDMIL/EnchantiS3) | + | 01 | Trill Extension Board | + | 01 | Flex PCB touch sensor | + | 01 | 30cm FSR 408 | + | 01 | [6mm Button](https://www.adafruit.com/product/4184) | + | 01 | Li-Po/Li-ion Battery min 1000mA | + | 01 | ABS/PVC Tube | + | 02 | Sparkfun Qwiic Cable or equivalent (at least 10cm) (longer T-Sticks need additional cables) | + | 02 | JST-SH 2 pin cable | + | \~35cm | Heat shrink tube | + | 01 | end-cup with microcontroller base | + | 01 | end-cup with for the ON-OFF switch | + | 01 | 3D printed bases, one of each file, and 4 regular poles | + | 11 | M3 Mounting Screws | + | 01 | foam sheet | + + ## Instructions + + ### Prepare the 3D printed components + + Print the following [files from the T-Stick repository](https://github.com/aburt2/T-Stick/tree/5gw-main/3D_printing/T-Stick%205GW). + + - x1 esp32-endcap + - x1 esp32-capcloser + - x1 touch-board-bed + - x2 touch-board-door + - x1 blank-endcap + + !!! note + If you are using an 18650 battery you will need to print ``liion-endcap`` and ``liion-capcloser`` instead of the ``blank-endcap``. + + ![Overview of 3D printed components](#) + + #### Adding inserts + + Use a soldering iron or other heat source to add M2 inserts to the front of the ESP32 bed piece (x2). + + ![M2 inserts in the front of the ESP32 cap](#) + + Add M3 inserts to the holes inside the ESP32 bed (x2). These will be used to screw in the board to the component. + + ![M3 inserts for ESP32 board](#) + + Add M2 inserts to the holes on the side of the touch board beds (x4). These will be used to screw in the touch board doors. + + ![M2 inserts for the touch board bed](#) + + ### Prepare the ABS/PVC Pipe + + Cut the ABS/PVC pipe two pieces. One piece should be about ~8inch/20cm and other a short piece about ~1.2inch/3cm. Use super glue or other alternative methods to glue the touch board bed to both pieces of the ABS/PVC pipe. Make sure to glue the short piece to the end closest to the M3 inserts + + !!! warning + + ![touch board bed glued to pipe](#) + + !!! tip + We recommend using a drop saw/mitre saw to get a clean cut + + Add M3 inserts to the last two holes closest to the short PVC pipe on the bottom of the touch board beds (x2). These will be used to secure the Trill Craft board. + + !!! tip + Add the M3 inserts from the top (from the flat part of the piece). This will ensure that you don't get fillament in the way when attempting to screw in the boards. + + #### Setup the touch board + + Solder the Trill Craft board on the Trill Craft Extension Board. Make sure to line up the + + Use two M3 screws to screw the Trill Craft extension board to the touch board bed. Connect the touch sensor to the FFC connectors on the Trill Craft board. Peel the cover from the tape and tape the touch sensor against the pipe as shown below. + + ![touch sensor mounted](#) + + #### Mount the FSR + + Cut the 2-pin JST cable to about 10cm as shown in the image below. + + ![cut jst cable, next to fsr](#) + + Solder the two ends of the JST cable to the two terminals of the FSR. + + !!! warning + Take care with soldering the FSR. Excessive heat will damage the FSR pins. + + ![soldered FSR connection](#) + + !!! tip + The FSR pins are very delicate. Put some heat shrink tube to reinforce the end of the fsr so it doesn’t break. If it breaks, it’s not repairable. + + !!! tip + It is recommended to put a bit of solder on both the FSR terminals and the ends of the FSR cables. This allows you to quickly solder the FSR, without damaging the terminals due to excessive heat. Use heat shrink to prevent shorts. + + Attach the FSR to the outside of the ABS/PVC pipe on the opposite end of the touch sensor, cutting the end if it's too long. Cut the foam sheets into rectangles and tape it over the FSR. + + | FSR mounted, before adding foam sheet | FSR mounted with foam sheet | + |-------------------------------------------------------------------|----------------------------------------------------------------------| + | ![fsr mounted uncovered](#) | ![fsr mounted covered by foam sheet](#) | + + + #### Apply Heat Shrink + + Cut the Heat shrink leaving a little heat shrink at both ends of the pipe. Shrink the heat shrink over the pipe, making sure to not overtighten the heat shrink over the FSR side of the pipe. Once the heat shrink has been applied. Cut a hole in the heat shrink where the touch board is. + + !!! warning + Be careful to not cut the touch sensor + + ![heat shrink cut open](#) + + ### Prepare the EnchantiS3 Board + + Use two M3 screws to secure the EnchantiS3 board to the ESP32 endcap. Glue the button in the button slot on the ESP32 bed piece. Cut another 2-Pin JST cable (like the one used for the FSR). Solder the two ends of the JST cable vertically to the button pins. Connect the JST cable from the button to the BTN header on the EnchantiS3 board. + + ![EnchantiS3 Board on the ESP32 bed](#) + + ### Final Assembly + + Glue both endcaps to the ends of the pipe. Connect the JST cable from the FSR to the FSR header on the EnchantiS3 board. + + !!! info + It is really important that there is a strong adhesion when gluing the components together. Use glue designed for the plastic pipe you are using. + + ![Endcap attached to the T-Stick](#) + + Use M2 screws add the touch door beds to the T-Stick. + + ![Touch door connected to T-Stick](#) + +=== "5GW-Enchanti" + + !!! note + + This guide is for building a Soprano T-Stick 5GW. + + ## Bill of Materials + + | Qty | Description | + |--------|---------------------------------------------------------------------------------------------| + | 01 | [EnchantiTouch Board](https://github.com/IDMIL/EnchantiTouch) | + | 01 | [EnchantiS3 Board](https://github.com/IDMIL/EnchantiS3) | + | 01 | Flex PCB touch sensor | + | 01 | 60cm FSR 408 | + | 01 | [6mm Button](https://www.adafruit.com/product/4184) | + | 01 | Li-Po/Li-ion Battery min 1000mA | + | 01 | ABS/PVC Tube | + | 02 | Sparkfun Qwiic Cable or equivalent (at least 10cm) (longer T-Sticks need additional cables) | + | 02 | JST-SH 2 pin cable | + | \~65cm | Heat shrink tube (80mm diameter) | + | 01 | end-cup with microcontroller base | + | 01 | end-cup with for the ON-OFF switch | + | 01 | 3D printed bases, one of each file, and 4 regular poles | + | 11 | M3 Mounting Screws | + | 04 | M3 Inserts (6mm) | + | 06 | M2 Inserts (6mm) | + | 01 | foam sheet | + | 01 | Plastic glue | + | 01 | 18650 battery holder (if using 18650 battery) | + | 01 | 2 pin JST-PH cable (if using 18650 battery) | + + ## Instructions + + ### Prepare the 3D printed components + + Print the following [files from the T-Stick repository](https://github.com/aburt2/T-Stick/tree/5gw-main/3D_printing/T-Stick%205GW). + + - x1 esp32-endcap + - x1 esp32-capcloser + - x1 touch-board-bed + - x2 touch-board-door + - x1 blank-endcap + + !!! note + If you are using an 18650 battery you will need to print ``liion-endcap`` and ``liion-capcloser`` instead of the ``blank-endcap``. + + ![Overview of 3D printed components](./Images/components.jpg) + + #### Adding inserts + + Use a soldering iron or other heat source to add M2 inserts to the front of the ESP32 bed piece (x2). + + ![M2 inserts in the front of the ESP32 cap](./Images/m2_insert_cap.jpg) + + Add M3 inserts to the holes inside the ESP32 bed (x2). These will be used to screw in the board to the component. + + ![M3 inserts for ESP32 board](./Images/m3_inset_cap.jpg) + + Add M2 inserts to the holes on the side of the touch board beds (x4). These will be used to screw in the touch board doors. + + ![M2 inserts for the touch board bed](./Images/m2_inserts_touch.jpg) + + Add M3 inserts to the 3rd and 5th hole on the bottom of the touch board beds (x2). These will be used to secure the Enchanti touch board. + + !!! tip + Add the M3 inserts from the top (from the flat part of the piece). This will ensure that you don't get fillament in the way when attempting to screw in the boards. + + ### Prepare the ABS/PVC Pipe + + Cut the ABS/PVC pipe into two pieces. Each with a length of about ~10inch/25cm. Use super glue or other alternative methods to glue the touch board bed to both pieces of the ABS/PVC pipe. + + ![touch board bed glued to pipe](./Images/pipe-glued.jpg) + + !!! tip + We recommend using a drop saw/mitre saw to get a clean cut + + #### Setup the touch board + + Flash the Enchanti Touch board using the firmware found [here](https://github.com/IDMIL/EnchantiTouch/releases/). You can find instructions for how to flash the PSoC 4100S Max on [Infineon's website](https://www.infineon.com/dgdl/Infineon-ModusToolbox_3.2_b_VS_Code_User_Guide-UserManual-v01_00-EN.pdf?fileId=8ac78c8c8d2fe47b018e0ea954a278fb) + + Use two M3 screws to screw the Enchanti Touch board to the touch board bed. Connect the touch sensor to the FFC connectors on the Enchanti Touch board. Peel the cover from the tape and tape the touch sensor against the pipe as shown below. + + ![touch sensor mounted](./Images/touch_sensor_mounted.jpg) + + #### Mount the FSR + + Cut the 2-pin JST cable to about 10cm as shown in the image below. + + ![cut jst cable, next to fsr](./Images/fsr-unassembled.jpg) + + Solder the two ends of the JST cable to the two terminals of the FSR. + + !!! warning + Take care with soldering the FSR. Excessive heat will damage the FSR pins. + + ![soldered FSR connection](./Images/fsr-soldered.jpg) + + !!! tip + The FSR pins are very delicate. Put some heat shrink tube to reinforce the end of the fsr so it doesn’t break. If it breaks, it’s not repairable. + + !!! tip + It is recommended to put a bit of solder on both the FSR terminals and the ends of the FSR cables. This allows you to quickly solder the FSR, without damaging the terminals due to excessive heat. Use heat shrink to prevent shorts. + + Attach the FSR to the outside of the ABS/PVC pipe on the opposite end of the touch sensor, cutting the end if it's too long. Cut the foam sheets into rectangles and tape it over the FSR. + + | FSR mounted, before adding foam sheet | FSR mounted with foam sheet | + |-------------------------------------------------------------------|----------------------------------------------------------------------| + | ![fsr mounted uncovered](./Images/fsr_mounted_uncovered.jpg) | ![fsr mounted covered by foam sheet](./Images/fsr-mounted.jpg) | + + + #### Apply Heat Shrink + + Cut the Heat shrink leaving a little heat shrink at both ends of the pipe. Shrink the heat shrink over the pipe, making sure to not overtighten the heat shrink over the FSR side of the pipe. Once the heat shrink has been applied. Cut a hole in the heat shrink where the touch board is. + + !!! warning + Be careful to not cut the touch sensor + + ![heat shrink cut open](./Images/heat-shrink-cut.jpg) + + ### Prepare the EnchantiS3 Board + + Use two M3 screws to secure the EnchantiS3 board to the ESP32 endcap. Glue the button in the button slot on the ESP32 bed piece. Cut another 2-Pin JST cable (like the one used for the FSR). Solder the two ends of the JST cable vertically to the button pins. Connect the JST cable from the button to the BTN header on the EnchantiS3 board. + + ![EnchantiS3 Board on the ESP32 bed](./Images/board-in-cap.jpg) + + ### Final Assembly + + Glue both endcaps to the ends of the pipe. Connect the JST cable from the FSR to the FSR header on the EnchantiS3 board. + + !!! info + It is really important that there is a strong adhesion when gluing the components together. Use glue designed for the plastic pipe you are using. + + ![Endcap attached to the T-Stick](./Images/cap-glued.jpg) + + Use M2 screws add the touch door beds to the T-Stick. + + ![Touch door connected to T-Stick](./Images/touch-door-closed.jpg) + + +## Next Steps +Congratulations you have built a T-Stick 5GW! Instructions to upload (flash) the T-Stick firmware and configuration files can be found [here](./flashing-guide.md). + +Read and follow __ALL__ the instructions before uploading the firmware to the board. There are some steps to prepare your machine and the ESP32 before flash it for the first time. + +## More info: +Version 0.0: Created by: Albert-Ngabo Niyonsenga - aniyonsenga@gmail.com \ No newline at end of file diff --git a/docs/designs/tstick-5gw/flashing-guide.md b/docs/designs/tstick-5gw/flashing-guide.md index 2d5d741..2d6da93 100644 --- a/docs/designs/tstick-5gw/flashing-guide.md +++ b/docs/designs/tstick-5gw/flashing-guide.md @@ -1,39 +1,56 @@ # Flashing Firmware for a T-Stick 5GW -## Option 1: using .bin files and [esptool.py](http://esptool.py) +!!! warning -This method is easier/faster. It uses [esptool.py](https://github.com/espressif/esptool). + This guide is written for the preview firmware for the T-Stick 5GW located at https://github.com/aburt2/T-Stick/tree/5gw-main. -### Download the bin files +## Option 1: Using Visual Studio Code and PlatformIO -* Download the .bin files located at the bin folder +You can use Visual Studio Code and the PlatformIO extension in order to flash firmware for the T-Stick-5GW. -### Download [esptool.py](https://github.com/espressif/esptool) +### Setup VS Code and PlatformIO +1. Download [Visual Studio Code](https://code.visualstudio.com/download). +2. Follow the [installation guide](https://docs.platformio.org/en/latest/integration/ide/vscode.html#installation) on PlatformIO's website to setup PlatformIO extension in VS Code -* Download the *[esptool.py](http://esptool.py)* from . Use the `Download ZIP` option from Github -* Unzip the *esptool-master.zip* file +!!! tip -### Connect the T-Stick to the computer and check the USB port + If you are not familiar with PlatformIO or VS Code it is recommended to read a quick start guide for both platforms before continuing this guide. -* [Check the T-Stick (ESP32) port in your computer](https://docs.espressif.com/projects/esp-idf/en/latest/get-started/establish-serial-connection.html): - * For MacOS/Linux: - * install the [latest drivers from from the SiLabs website](https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers). - * Open a *Terminal* window - * Execute the command `ls /dev/cu.*`. The command will return a list of ports in your computer. - * Plug the T-Stick (USB) and run the command `ls /dev/cu.*` one more time. You can now compare the lists and anotate the T-Stick USB port. Should be something similar to `/dev/cu.wchusbserial1410`, probably with a different number - * Linux users should also give the currently logged user read and write access the serial port over USB. Check [here](https://docs.espressif.com/projects/esp-idf/en/latest/get-started/establish-serial-connection.html) for more information - * For Windows: - * Check the list of identified COM ports in the [Windows Device Manager](https://support.microsoft.com/en-ca/help/4026149/windows-open-device-manager) - * Plug the T-Stick (USB) and check the list of identified COM ports in the [Windows Device Manager](https://support.microsoft.com/en-ca/help/4026149/windows-open-device-manager) again. The T-Stick port should appear on the list. Anotate the T-Stick USB port, it should be something similar to `COM3` or `COM16` +### Build the Firmware +3. Download and unzip the latest firmware from the [T-Stick reposity](https://github.com/aburt2/T-Stick/tree/5gw-main) +4. In Visual Studio, under the File menu select open folder. + ![open folder button in VS code code](./Images/vscode-open-folder.png) +5. Navigate to where you downloaded the T-Stick repository and select the firmware folder. +6. On the bottom bar select the correct environment depending on your T-Stick version (ie: `tstick5gw_enchanti` or `tstick5gw_trill`) +7. In the build flags ensure the `-DTSTICK_SIZE` is the correct value for your T-Stick. +8. Navigate to the data folder and open `config.json`. +9. Update the `id` of the T-Stick to a number of your choosing. +10. Update the `author` to your name. -### Flash the firmware (.bin files) +11. Build the firmware by clicking the checkmark on the bottom menu. -* Use *Finder*, *Terminal*, or *File Explorer* to copy the contents of the [bin](https://../firmware/bin/) folder (you should copy 3 .bin files) to the *esptool-master* folder -* Navigate to the *esptool-master* folder in *Terminal* or *Command Prompt* -* Run the command (__don't forget to replace the --port (/dev/cu.wchusbserial1410) option for your T-Stick port__): `esptool.py --chip esp32 --port /dev/cu.wchusbserial1410 --baud 115200 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size detect 0xe000 boot_app0.bin 0x1000 bootloader_dio_80m.bin 0x10000 esp32_arduino_FW211124.bin 0x8000 esp32_arduino_FW211124.ino.partitions.bin 2686976 esp32_arduino_FW211124.spiffs.bin`. Wait for the process to be complete. Do not unplug or turn off your T-Stick during the process. +12. Click the PlatformIO Icon to show the Project Tasks. + ![PlatformIO project Tasks](./Images/vscode-project-tasks.png) +13. Select `Build Filesystem Image`. -To set the T-Stick info and test if the data is being send correctly: +### Upload the Firmware and Filesystem Image -* Connect the T-Stick to a network (instructions [here](https://./T-Stick_2GW_Connecting_Guide(v1.2).md)); -* Open the Pure Data (PD) or Max/MSP patch to receive T-Stick messages (they can be found [here](https://../Test_config/)); -* Start receive OSC messages according to the chosen patch. \ No newline at end of file +!!! note + + If your T-Stick was in deep sleep prior to flashing, you may have to wake up the instrument by pressing the button for it to show up on your computer. + +14. Plug in your T-Stick to a USB Port on your computer. + +15. In the PlatformIO Project Tasks select `Upload Filesystem Image`. + +16. Once the filesystem is uploaded. Select `Upload` to flash the firmware to the board. + +!!! warning + + DO NOT DISCONNECT the USB cable while the T-Stick is flashing. + +!!! tip + + If the T-Stick is not responding or there are issues with flashing try unscrew the cap closer for the ESP32-S3 endcap and hold the boot button while pressing the reset button to force the board into flash mode. If you do this you may need to press the reset button after flashing to force the T-Stick to flash again. + +Once the firmware is flashed you should see an orange light from the inside of the T-Stick. When the T-Stick successfully connects to a network you will see a flashing blue light. \ No newline at end of file diff --git a/docs/designs/tstick-5gw/index.md b/docs/designs/tstick-5gw/index.md index 654487b..f7b206f 100644 --- a/docs/designs/tstick-5gw/index.md +++ b/docs/designs/tstick-5gw/index.md @@ -2,16 +2,18 @@ The T-Stick 5GW consists of a custom ESP32 board which integrates a ESP32-S3 WROOM 2 Module with a ICM20948 IMU and MAX17055 on a single board, and a touch board that has a pinout for the Trill Craft board as well as, two JST-SH 4 pin connectors to daisy chain multiple touch boards together. -## System Architecture - -The image below shows the hardware architecture for the new T-Stick design. Most of the power sytem functions such as providing power, charging the instrument and changing the power state is handled by the MCP73871. This IC handles charging the LiPO/Li-ion battery and changing between the USB power and battery power depending on voltage. In addition, two regulators, the NCP167AMX330TBG/NCP167AMX1800TBG series are used to step down the system power to 3.3V and 1.8V respectively. The MAX17055 is used as a fuel gauge. This fuel gauge is used over its non-current sensing counter parts such as the MAX17048 due to better accuracy. +### Guides +For information on how to use the T-Stick 5GW check out the guides below: +
- ![Figure 1: T-Stick 5GW Architecture](../Images/TStick-HardwareArchitecture-Pro.png) +- [:material-wrench: __Build Guide__](./build-guide.md) +- [:material-upload: __Flashing Guide__](./flashing-guide.md) +- [:material-wifi: __Connection Guide__](./connection-guide.md) -The Trill Craft board is kept as the capacitive sensor solution of choice. A more integrated solution using just the MCU on the Trill Craft board was considered but figuring out how to flash the MCU in a systematic way, would have been more of a hassle than it is worth. The touch board uses a 32 pin FFC connector to connect to a flexible PCB with 30 touch points and two ground points. The IMU is changed to an ICM20948 9-DOF IMU. as mentioned previously this is due to the fact that the LSM9DS1 is no longer actively supported by the company that produces it. It receives the 1.8V power from one of the regulators. Three mosfets are used to convert the 1.8V logic from the ICM20948 to 3.3V to communicate with the ESP32. +
### 5th Generation T-Sticks -Click each box to get more information on each variant of the T-Stick 4GW +Click each box to get more information on each variant of the T-Stick 5GW
diff --git a/docs/designs/tstick-5gw/specs_5gw_enchanti.md b/docs/designs/tstick-5gw/specs_5gw_enchanti.md index dfc700b..e21649a 100644 --- a/docs/designs/tstick-5gw/specs_5gw_enchanti.md +++ b/docs/designs/tstick-5gw/specs_5gw_enchanti.md @@ -2,16 +2,6 @@ The T-Stick 5GW-Enchanti is a 5th generation T-Stick that uses [Enchanti Touch Board](https://github.com/IDMIL/EnchantiTouch). More details on 5th generation T-Sticks can be found [here](./index.md). -## Guides -For information on how to use the T-Stick 5GW-Enchanti check out the guides below: -
- -- [:material-wrench: __Build Guide__](./build-guide-enchanti.md) -- [:material-upload: __Flashing Guide__](./flashing-guide.md) -- [:material-wifi: __Connection Guide__](./connection-guide.md) - -
- ## Specification | Feature | Details | |-----------------------------|----------------------------------------------------------------------------------------------------------------------------| diff --git a/docs/designs/tstick-5gw/specs_5gw_trill.md b/docs/designs/tstick-5gw/specs_5gw_trill.md index 2ec376c..76fce40 100644 --- a/docs/designs/tstick-5gw/specs_5gw_trill.md +++ b/docs/designs/tstick-5gw/specs_5gw_trill.md @@ -6,7 +6,7 @@ The T-Stick 5GW-Trill is a 5th generation T-Stick that uses [Bela's Trill Craft For information on how to use the T-Stick 5GW-Trill check out the guides below:
-- [:material-wrench: __Build Guide__](./build-guide-trill.md) +- [:material-wrench: __Build Guide__](./build-guide.md) - [:material-upload: __Flashing Guide__](./flashing-guide.md) - [:material-wifi: __Connection Guide__](./connection-guide.md) diff --git a/docs/engineering/design-guidelines.md b/docs/engineering/design-guidelines.md index 7ccf8a8..0cf479d 100644 --- a/docs/engineering/design-guidelines.md +++ b/docs/engineering/design-guidelines.md @@ -82,7 +82,7 @@ These remarks are meant to be normative. Adherence to these remarks is meant to 7. Brushes 8. Rubs -It is recommended to use a similar set of sensors and algorithms as previous T-Stick designs to maintain similar behavior across T-Sticks. These properties should be able to meet the accuracy requirement (Requirement 3.2) outlined in [Technical Requirements and Constraints](./requirements.md). Additionally any sensor fusion and gestural extraction should be done in the T-Stick firmware. +It is recommended to use a similar set of sensors and algorithms as previous T-Stick designs to maintain similar behavior across T-Sticks. ## 4. Signal Namespace @@ -90,6 +90,6 @@ If interoperability with previous T-Stick pieces is desired the following guidel 1. The T-Stick should use an existing namespace. Check previous designs for past and current namespaces. -2. If you wish for the T-Stick to be able to play older pieces the T-Stick firmware should have a built in translation layer for signals. External translation layers can be used but are not desired. +2. If you wish for the T-Stick to be able to play older pieces an external translation layer should be made for musicians/artists. diff --git a/mkdocs.yml b/mkdocs.yml index c71471b..2839abd 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -53,6 +53,8 @@ markdown_extensions: emoji_generator: !!python/name:material.extensions.emoji.to_svg - pymdownx.arithmatex: generic: true + - pymdownx.tabbed: + alternate_style: true extra_javascript: - https://unpkg.com/tablesort@5.3.0/dist/tablesort.min.js @@ -82,8 +84,7 @@ nav: - T-Stick 4GW-2018: designs/tstick-4gw/specs_4gw_2018.md - T-Stick 4GW-2021: designs/tstick-4gw/specs_4gw_2021.md - Guides: - - Build Guide (4GW-2018): designs/tstick-4gw/build-guide-2018.md - - Build Guide (4GW-2021): designs/tstick-4gw/build-guide-2021.md + - Build Guide: designs/tstick-4gw/build-guide.md - Flashing Guide: designs/tstick-4gw/flashing-guide.md - Connecting Guide: designs/tstick-4gw/connection-guide.md - 5th Generation T-Sticks: @@ -92,8 +93,7 @@ nav: - T-Stick 5GW-Trill: designs/tstick-5gw/specs_5gw_trill.md - T-Stick 5GW-Enchanti: designs/tstick-5gw/specs_5gw_enchanti.md - Guides: - - Build Guide (5GW-Trill): designs/tstick-5gw/build-guide-trill.md - - Build Guide (5GW-Enchanti): designs/tstick-5gw/build-guide-enchanti.md + - Build Guide: designs/tstick-5gw/build-guide.md - Flashing Guide: designs/tstick-5gw/flashing-guide.md - Connecting Guide: designs/tstick-5gw/connection-guide.md - Community: