Teensy Saber Troubleshooting
Got Pike?
DIY Teensy based lightsaber

lightsaber.ino won't compile
  • If you haven't modified the program, this is probably my fault. Please contact me at the The Rebel Armory or fx-sabers online forum and let me know what the problem is. You can try an older version while you wait for me to fix it.
Can't program the teensy
  • After you cut the VIN-VUSB pads, the teensy won't power up when you plug in an USB cable anymore, so you'll need to hook up enough of the circuit that you can power the teensy from a battery while programming it.
  • If that doesn't help see the Teensy troubleshooting page.
  • This means that it cannot open the SD card.
  • Make sure the SD card is formatted with a single FAT32 partition.
  • Try a different SD card.
  • Check soldring on GND, 3.3v and pins 1, 11, 12, 13
  • For V1 electronics, make sure not to use long wires for the above signals.
  • This means that it can open the SD card, but it cannot find one or more of the sound fonts on it.
  • Make sure that the name of the font directory matches the entry in the presets[] array.
  • Directory names needs to be 8 character or shorter.
  • Make sure to use FAT32, not FAT16.
It says: LOW POWER
  • Charge the battery
  • See: The teensy prints out the wrong battery voltage
It says: ABORT
  • You have an error in your blades[] or presets[] array.
The serial monitor doesn't show anything
  • Make sure you select Serial in the Tools > USB Type menu.
  • Try the hello world tutorial.
  • Try disabling audio and motion. (Add // in front of #define ENABLE_AUDIO and #define ENABLE_MOTION near the beginning of the file.)
  • If you have a TeensySaber V2, make sure that BOARD_MAJOR is set to 2 in the beginning of the file.
Serial monitor prints things out, but commands don't work
  • In the serial monitor window, make sure that the line ending dropdown is set to "Newline".
It turns off immediately when I turn it on
  • The teensy probably thinks the battery is too low. Charge the battery, if the teensy still thinks it's too low, see the next tip.
  • Also, teensysaber expects a touch button for the power button by default. Remember to change it to a regular button if you're not using a touch button
  • Try "play somefile.wav" in the serial monitor
The teensy prints out the wrong battery voltage
  • In a teensy V1 setup, the a resistor is used to estimate the battery voltage. The program assumes that this resistor is 23kOhm, if you chose another one you need to update the program. Find the line that says float pullup = 23000; and update it with your actual resistor value.
Sound doesn't work
  • Try the "beep" and "dir" commands from the serial monitor.
  • If "beep" doesn't work, audio is not hooked up right.
  • If "dir" doesn't work, the problem is reading the sd card.
Can't read the sd card
  • Check the connections.
  • Try a differet sd card.
  • Re-format the card. (as fat32)
  • Try the "dir" command from the serial monitor.
beep command works, but no sound when turning saber on
  • Probably means that it can't find your sound font.
  • The directory containing the sound font is specified by the preset array. There are multiple preset arrays, and which one is used is defined by the blades[] array.
  • The "effects" command can tell you how many sounds were found.
  • You can use "cd " to select a sound font indepently of what the preset array says.
LEDs don't turn on/off properly
  • Reduce your blades[] array to only one entry to make sure you have the right blade driver.
  • Check your connections.
  • Check your connections again.
  • Make sure the battery voltage is correct.
  • Check that you're using a reasonable LED model for your blade driver.
  • If you didn't use the same FETs that I did, make sure that the gate threshold voltage is less than 3 volts.
  • If you're using PL9823 LEDs, make use datasheet to make sure your connections are correct.
Solder won't stick to male aviation connector
  • Make sure it's the pin gets hot enough to melt the solder. (But not so hot that it melts the plastic that holds the pin.)
  • Put a drop of solder in the hollow at the end of the pin. Tin the end of the wire. (Keep the stripped part of the wire short.) Heat up the pin and put the wire into the hollow part of the pin.
  • If it still doesn't work, dip a Q-tip in liquid flux and apply to the pin and wire.
  • Dirt and oil film can make soldering difficult, make sure the surfaces are clean.
  • If all else fails, use a small file to rough up the surface of the pin.
Sound works, but (some) sound tracks don't play
  • Make sure your filenames are in 8.3 format, and only use A-Z and 0-9. Note that windows may hide the ".wav" part.
  • Make sure that the filename in the extension array is the full filename, including directories and extension. (again, windows may hide the extension, but you must include it in the preset array.)
  • Check the serial monitor for error messages. It will usually say "File not found.", which means there is something wrong with the filename. Or, it might say. If it gives some other error message, it might not be able to decode the WAV file. If this is the case, verify that your WAV file is 11050, 22100 or 44100HZ, 8 or 16 bits and one or two channels. (44100, 16-bit mono recommended.) If it still doesn't work, send me the WAV file and I'll try to fix the WAV reader.
  • Use forward slashes (/) in the preset array. Backslashes (\) have special meaning in C++.
  • Check if you can see the files using "dir " from the serial monitor.
  • Check if you can play the file using "play " from the serial monitor.
Problems? Questions? Suggestions? Check out The Crucible.
This page has been accessed 18,900 times since March 11th, 2017.
Last modified: March 29th, 2021 - Design by Monica & Fredrik Hübinette