"Error in Font Directory" on Boot once Edit Mode defines added and ;common

Config file here → #ifdef CONFIG_TOP#include "proffieboard_v2_config.h"#define NUM_BLADES 2#d - Pastebin.com

Hi folks, been having a blast with Fett263’s gesture controls for Battle Mode ignitions and such, but have been running into trouble once I try to get into trying to implement Edit Mode. Major shout out to Fett263 and Profezzorn for all they’ve done for the community, I’m an R&D engineer for work-work so I genuinely appreciate the effort and care that went into the ProffieOS, board, and Fett263’s configurators and prop file.

Basically the problem is, edit mode does not work at all. On boot, I get the boot sound for my font and “Error in Font Directory” at the same time, then all gesture controls and sound fonts work perfectly - just not Edit Mode.

Key Details:

  • OS 7.8, Proffieboard v2.2
  • Have closely followed all instructions regarding setup of Edit Mode
  • Sound fonts work perfectly, edit mode doesn’t work at all
  • Have checked two similar posts and implemented all solutions recommended to no avail
  • My sound fonts have all sounds in numerical order with no missing increments
  • I do not have any duplicate files between my sound font folder and common folder
  • I have the common folder in the sound font search path (“Font;common”)
  • I created a tracks folder in each sound font directory instead of having a tracks folder in common or root of the SD card
  • Taking away ;common from “Font;common” in the search path stops the “Error in Font Directory” from happening but of course, Edit Mode still doesn’t work since the OS doesn’t know where to look for the menu voice files, so if I double-click my PWR button for edit mode I once again get “Error in Font Directory”
  • I tried creating a tracks folder in common and moved the voice files there, which stopped “Error in Font Directory” from happening on boot, but when I try to start Edit Mode, I get “Error in Font Directory”
  • Boot takes MUCH longer once “;common” is added to font search paths, like 5 seconds instead of 1

Any and all help appreciated, thanks in advance folks!

Best,

Nate

That means you have an error in your font directory(ies). You either have sounds out of sequence; like 001, 002, 004 (missing 003) or you have duplicate filenames in a subdirectory or you have wrong number of sounds in an alt.
Hook up to Serial Monitor in Arduino > Tools (remove DISABLE_DIAGNOSTIC_COMMANDS define) and type ‘effects’. It will let you know what sounds have issues. If you don’t understand what is printed out just post here and we can decipher for you.

2 Likes

Good call on the serial monitor output, thanks. Here’s the output:

Found vmend files: one unnumbered file SOME FILES ARE MISSING! 1 != 256 in common

Found vmbegin files: one unnumbered file SOME FILES ARE MISSING! 1 != 256 in common

Found enddrag files: 1-2 using 2 digits in subdirs in OneXW

Found drag files: one unnumbered file in subdirs in OneXW

Found bgndrag files: 1-2 using 2 digits in subdirs in OneXW

Found swingh files: 1-4 using 2 digits in subdirs in OneXW

Found swingl files: 1-4 using 2 digits in subdirs in OneXW

Found swng files: 1-16 using 2 digits in subdirs in OneXW

Found lock files: 1-1 using 2 digits in subdirs in OneXW

Found out files: 1-2 using 2 digits in subdirs in OneXW

Found in files: 1-2 using 2 digits in subdirs in OneXW

Found clsh files: 1-10 using 2 digits in subdirs in OneXW

Found blst files: 1-6 using 2 digits in subdirs in OneXW

Found endlock files: 1-2 using 2 digits in subdirs in OneXW

Found bgnlock files: 1-2 using 2 digits in subdirs in OneXW

Found font files: one unnumbered file in subdirs in OneXW

Found stab files: 1-4 using 2 digits in subdirs in OneXW

Found force files: 1-3 using 2 digits in subdirs in OneXW

Found hum files: 1-1 using 2 digits in subdirs in OneXW

Found boot files: one unnumbered file in subdirs in OneXW

Done listing effects.

The files noted as missing in the above serial output are from the Voice Pack C downloaded from the Proffie website - the common folder. Haven’t tried downloading other voice packs yet, will give that a go, and whatever else you folks recommend.

Cheers,

Nate

@NoSloppy any ideas of Voice Pack C vmbegin.wav, vmend.wav?

Just downloaded ProffieOS_Voicepack_English_C.
Both of those files are there.

@NoSloppy they are present and accounted for on my end too. It appears to me that the OS thinks there should be other files associated with vmend and vmbegin. Am I interpreting that correctly @Fett263?

If you guys point me in the right direction source code wise I can dig into this more on my end. Thanks for the help.

Do you have any altNNN/ folders set up? The only time I’ve seen that particular error is varying number of altNNN sounds. Otherwise, look through the SD to see if there are duplicates.

@Fett263 I have an intentionally pretty bare bones setup going with the fonts, I even reverted back to one of the free TeensySaber fonts (from the Proffie site) and this error still came up. There are no duplicates, no alts, and all files are sequenced correctly in all of my font directories.

Exploring a bit more on the serial monitor, using cd common and then using dir to scan contents of the common directory, the serial monitor once again points to vmbegin.wav and vmend.wav as “missing some files”, as above. Very strange. Considering a fresh OS install, as I haven’t tried that yet, but I have also been very careful to not modify anything either.

Just to confirm, are you reformatting the SD when removing files? I’m wondering if maybe there’s some remnants or something odd in the SD index. Otherwise I’m not sure why that would be.

Maybe @profezzorn has an idea?

@Fett263 I haven’t reformatted every time I’ve moved files around, no. But reformatting has also made no difference, I tested that as a variable as well.

I dug into the source code for the effects command for the serial monitor in effect.h and found this:

if (expected_files != (int)num_files_) {
	STDOUT << " SOME FILES ARE MISSING! " << expected_files << " != " << num_files_;
      }

Given the context above:

Found vmend files: one unnumbered file SOME FILES ARE MISSING! 1 != 256 in common
Found vmbegin files: one unnumbered file SOME FILES ARE MISSING! 1 != 256 in common

This implies that somehow num_files_ (the number of files that the OS counts) is 256, and the expected number is 1. Which is bizarre considering there aren’t even 256 files on the SD card, so I’m not sure what the OS is counting as “files”.

I’ll try reformatting the SD card just in case. I’m glad I’m not the only one that thinks this is weird. :slight_smile:

Ok update: I just swapped out Voice Pack C for Voice Pack A and the problems immediately went away - boot time is normal and no “Error in Font Directory”. There might be something up with the Voice Pack C files. Gonna mess with edit mode functions and will report any other issues here.

Also for the record I reformatted the SD card a bunch of times along the way and the only thing that made the difference was switching which Voice Pack I was using.

The question I have is, now that Voice Pack A is working, what happens if you swap it for a freshly downloaded Voice Pack C?

You could try uncommenting this line:

Then see which files are counted for each effect in the serial monitor.

In the past several weeks I’ve jumped into the Proffie world, and consider myself to be pretty tech-savvy. I’ve successfully implemented blade styles from the 0S6 library and added various fonts from Kyberphonic, but have been plagued by this very same issue that the OP is having. I, too, downloaded sound back C so later tonight I’m going to try sound pack A to see if that solves the problem. Fingers crossed!

1 Like

@MaskedVengeance Good luck!!

@profezzorn Thanks for taking a look at this! Uncommenting that line, with and without developer commands enabled in my config, did not produce any difference in the serial monitor output.

@NoSloppy I tried fresh downloads a bunch of times for Voice Pack C, and it just does not work - even did it again just now just because, still no dice. Switching to Voice Pack A works every time.

Super weird. THere’s nothing different about those files vmbegin.wav and vmend.wav.

Post what it says when sending effects with that line uncommented.
EDIT - actually, it looks like that displays when navigating into that directory.
So you’ll need to send cd common to get a list of files counted in the common directory.

1 Like

@NoSloppy Thanks, cd common worked like a charm with that line uncommented, but didn’t really produce anything helpful. Peep the output here: Voice Pack C serial readout - Pastebin.com

For comparison, here’s the Voice Pack A output:

Something really funky going on here, not sure what.

Scanning sound font: commonCounting vmbegin.wav as vmbegin
Counting vmend.wav as vmend
Counting vmbegin.wav as vmbegin
Counting vmend.wav as vmend
Counting vmbegin.wav as vmbegin
Counting vmend.wav as vmend
Counting vmbegin.wav as vmbegin
Counting vmend.wav as vmend
Counting vmbegin.wav as vmbegin
Counting vmend.wav as vmend
Counting vmbegin.wav as vmbegin
Counting vmend.wav as vmend
Counting vmbegin.wav as vmbegin

Wow that is STRANGE.
I tried it on my end and get the same result as you did for Voice Pack A with both C and A.