Hey guys, I am losing my last bits of my sanity trying to end my never-ending problem. It has been a couple of weeks since my new saber from Sabertrio came. After that, I tried to put in some new blade styles and sound fonts, but since I tried to do that, my saber is in a total mess and I don’t know why. On the Sabertrio web page is a step-by-step guide, on how to put new sound fonts and blade styles on the saber from them (Here). I followed that guide with absolute precision but after that saber stopped working properly, the only sound it makes is a weird static with no blade style whatsoever. The in-build features like KyberDial, Volume, and battery check are the only things that still have normal sound. So then I tried to follow another guide, on how to restore saber to a factory setting. Again I followed that guide from A to Z, but even that didn’t work. I’ll describe step-by-step what have I done so far.
Download and Instal Arduino software
Open Arduino, File/preferences/ fill the board manager URL with link to Proffieboard extension
In Tools/Board/Board manager I download Proffieboard v2.0
Download Zadig
Plug in my saber, ran zadig, click on Options/List all devices, click on System bootloader 32 device and install a driver
Unplug and replug saber and PC now know what to do with the saber
I create a folder and put all files with sounds on the microSD cards next to the others sounds from Sabertrio.
Open a config file in Note++, then I create a new blade style section in the config with the proper name (in order to link it with a sound folder), track location and blade style description without spaces, and save the config
Download a new ProffieOS, copy my config file in a config folder to the ProffieOS
Open Arduino with my saber plugged in my PC, in Tools I select Board: Proffieboard v2, USB Type: Serial + Mass storage + WebUSB, DOFSF: SDCard, CPU Speed: 80 MHz, Optimize: Smallest code, Port: COM3 (Proffieboard)
Verify/compile the code, Arduino shows how much space will the code take from a board storage
Click upload, it verified, compiles the code, but after that, it always disconnects the board and shows an error “Cannot open DFU device” or “Directory not found” (or something like that). And it never uploads the config on a saber. So my thoughts are because of that, the files get corrupted and that’s why my saber won’t work.
I am absolutely tired of trying to find for over a month a solution to my problem that pretty much nobody has. If you all have “ANY” idea, on how to end my endless loop, I am down for everything.
Your doing the right things, it’s just that windows is being a jerk.
Reinstall the driver with Zadig and try again. If you have Cura 3D slicing software on the PC or some gaming controllers, they might be causing USB driver conflicts.
Alternately, you could just paste your config here and hit program button: http://fredrik.hubbe.net/lightsaber/v5/
Well, I have already done it countless times, and every time there is no problem with it. After I install the driver to an STM32 and replug the saber it automatically creates 3 devices (CDC Data, Mass Storage, and Serial) with no issue at all. Problem is, at least what I’m thinking, that if I want to upload config to the saber, after compiling, the board always disconnects itself (I can hear windows USB disconnect sound), and then when Arduino wants to upload the code it can’t find the board. I tried uploading it from the web but even there I wasn’t successful. Because when the board was in STM32 bootloader state, the web said “Access denied” and when I install drivers from zadig, it said “No WebUSB interface, unable to reset device, please press BOOT+RESET.” But if I do that it will reset itself to an STM32 bootloader state again. I am pretty much at the last step to victory but yet so far from it.
This is normal. Arduino tells the board to reboot itself into bootloader mode.
If this is actually the error you get, then you need to run zadig.
If zadig doesn’t seem to “take”, then there is something on your system that is resetting the effect of running zadig. The two known culprits that do this is cura3d slicing software and guillemont racing controller drivers, but there may be others.
If you run zadig again, what driver does it say is attached to the STM32 BOOTLOADER device?
If I run Zadig on a STM32 Bootloader it says that the installation was successfull. After disconnecting and reconnecting the board, you then see 3 new devices in Zadig: Serial, Mass Storage and CDC Data. You said that Arduino tells the board to reboot itself? Well mine looks like it just shuts down. Because I saw a lot of videos from different people and every time, their board connects itself back right the way and start to upload the config.
More likely, the board reboots just fine, but once it reconnects in bootloader mode, it ends up with the wrong driver again, and then the upload is not possible. If that’s true, then the board will remain in bootloader mode until disconnected, and it will show up in printers and devices as “STM32 BOOTLOADER”, but it will have the wrong driver.
However, my question was; when you run zadig again, what driver does it say it’s using before you hit install? WinUSB? WinSer? something else?
Btw, even if the driver keeps getting reset, it might still be possible to program the board, you would just need to:
use BOOT+RESET to get into bootloader mode
run zadig, leave the board connected
hit “upload” in arduino. (Note, there will be no proffieboard in arduino → tools → port, but it should still work.)
If this workaround works, you would need to do it every time, because every time the board connects in bootloader mode, your computer would select the wrong driver again, unless you can figure out what is doing that and uninstalling it.
Sorry for not responding for this long I had to take a break so I don’t have a mental breakdown from this. So updates for my problem, I finally managed to see the upload progress bar in Arduino, but it looks like the config file won’t flash on the board. Because when I tried to turn the saber on I only hear some sort of weird static noise without any blade style light whatsoever. I have no idea, what should I do next.
This could be normal. That is in fact how proffieboards behave if they only have USB power (no battery power.) It could also happen if your configuration doesn’t match how your saber is wired.
If you need more help, we’ll need more information, like one or more of:
A description and/or pictures of how your saber is wired.
Post your config file (do not use screenshots!)
Post a video of what happens when you turn on your saber, based on the sound, we’ll most likely be able to give you advice on what to try next. (Video will need to be uploaded to youtube, google photos or similar, then linked here.)
So, my saber is from a company Sabertrio, it is a Neopixel saber with a 32" and 115 pixels long blade, 1x Power switch, 1x Auxilary switch, 1x Recharge port, 1x Killswitch, 1x Battery, and 1x speaker. I use default pre-configuration from Sabertrio (s3config.h) and when it starts, it makes this noise here. But weirdly enough, all Sabertrio menus such as Volume, battery check, or KiberDial (for choosing blade color) sounds perfectly fine.
Since I don’t know how this font is supposed to sound, it’s hard to tell how bad this is.
My first two suggestions would be to try a different sd card and charge the battery.
Your config file says that there is an accent LED somewhere (maybe the button?) that accent led is supposed to pulse when the blade is out and be 100% on when the blade is in. Is that happening?
If not, you might need to check the serial monitor to see what preset it’s using, that might give a clue as to why it’s not behaving as expected.
There should be around 20 fonts, but this is the only sound it produces alongside the menus from Sabertrio.
I did not spot any LED inside or outside. The switches themselves are non-luminated and I had my saber turned on in pitch black and I couldn’t see any LED.
Tomorrow, I will definitely try to check what it is all about. I can’t thank you enough for helping me, you gave me a New Hope with this problem.