Sunday, May 19, 2019

Catalex Serial MP3 Player

2019.05.19

I started working with this as a lead-up to my next project. They are still available, but cost twice as much as they did a couple of years ago. From what I can tell, playback quality is pretty good. Getting up to speed did not come without aggravation/s.

#1) Do not power the player from Arduino 5V, it's inadequate. It doesn't hurt anything but it causes problems with player volume and with the IDE.
I worked with two configurations: one is for programming and the other for use. For the "In Use" configuration, get a USB breakout and branch +5 from that to the player and to Arduino 5V (and Gnd). For the programming configuration, disconnect the breakout from its source and disconnect the Arduino 5V from it too.
When you start testing and all, it can get irksome going back and forth with it, but that's how it is. The current demand of the Catalex overtaxes Arduino 5V where that may dip low enough such that, basically, the IDE may not find an Arduino connected.

#2) At first I was trying to play tracks using the index scheme (CMD = 0x0f). And, supposedly, there's a way to set the volume (CMD = 0x06). The index works, having files in folders would be my preference, but my experience was that it was full volume regardless.
There's a command for playing a track at a specified volume (CMD = 0x22), which does work, but all of your tracks have to be on top (no folders / directories) to use it. But here, instead of playing by "index", basically the track's file name, it plays with reference to the file's position in the list.
Evidently, files should be named beginning with a number. I don't know whether there's a byte limitation. This also preserves track positions, the stack, if/as files are added.
Admittedly, I was getting more than a little fed-up and as I write this, having unwound some, I am wondering if a 0x06 (set vol) might work if issued immediately after a 0x0f (play track).

I've read about there being an "unsolicited message", FILE_END, but I haven't found anything spelling out exactly how to use it. A practical example was not included with the PDF. It's not needed for the project I have in my mind right now, but another would benefit from it.

2019.06.02
Here is a link to the Catalex PDF.

2019.07.07