Tag Archives: hobbies

I Can Never Take On A Simple Project

Last weekend, I made a day and hit a bunch of pawn shops, specifically looking for keyboards.  I guess collecting CDs was getting too hard, and collecting CD players was too infrequent, so keyboards is now what I collect.  I had two a couple weeks ago, now I have five.  I’ll figure out something.

So, to keep that story short, I made a deal at the first place I went and the rest of the day was pretty crappy.  For some odd reason, my phone could not keep a GPS signal, so my trip was cut short.  No idea what was up with the GPS, but I hope it’s not a regular happening.

So anyway, at this first shop, they had a keyboard out front – a Roland D70, which is a 76 key synth from 1990.  Not bad.  The original price was $720 and it was marked down to $450.  ehhh, not that great.  But there was a sign nearby that said anything on that table, make an offer. Hmmm.  I did a quick price check and the D70 sells for about $500.  Ok, let’s at least check it out.

I ask to try it and the first thing I see is that the MIDI thru jack is ripped out.  I have no idea how something like that happens.  Not a deal breaker because I wouldn’t need that port, but it is a negotiation point.  It powers up and I start testing the keys.  To my amazement, some of the keys don’t work.  And when I say they don’t work, I don’t mean they don’t make a sound when you press them, I’m saying you could not physically push them down.  Five keys had that problem, all black keys.

The store got a little busy right then, so I had an extended period to consider what level of effort a repair would be.  Absolute worst case, find a dead donor board and swap the keybed.  The electronics seemed fine, the issue was only mechanical.  Time to barter.

Know this about me:  I don’t haggle.  I like to be a people-pleaser.  I don’t like the discomfort of potentially insulting the person who is offering me a service or product.  So I continually tell myself, I don’t need this board.  There’s no reason not to walk away.  I set my price at $250.  Now remember, this is a pawn shop, so it’s likely the person pawning it only got like $100 at most for it, so my price is still giving them a profit.  However, that price was lower than their lowest time-based discount price was.

The salesman came back and I explained the problem and the level of effort I’d have to take to see if it’s even repairable and told him I could only offer $250.  He immediately said, no, I already have $400 into it.  Well, that was quick.  So I was like, ok, I can’t take it.  But I can tell you there’s a repair shop nearby that could fix it for you if you want to get its full value.  I know a pawn shop doesn’t want to sell good stuff; they want to turn over product with as little hassle as possible.  Fuck, they don’t even clean things they put on the floor.  Such a simple thing to increase the value, and they don’t.

He changes his tune quickly, "let me ask the manager."  Yup, just like a car dealership.  However, unlike a dealership, he came back and said, manager says he’ll take $250.  I didn’t have to fight wave after wave of bosses to get the deal.  So, deal done and back home to see what’s up with this thing.

To get to the point, this keyboard had what I’d heard about in repair videos but had never seen yet: the Roland Red Glue.  This glue, in keyboards from 1985-1990, would melt in heat and humidity, loosening the key weights and running into the internals.  The five broken black keys all had their weights fall and that is why they could not be pushed down.  It’s quite funny to me to think that this board might have originally worked well, but because pawn shops suck, they might have left the A/C off at night to save a couple bucks and caused this problem all on their own.  I love that sort of justice.  But anyway, the problem was mine now.

I did some research and found that the usual fix is to soak the keys in drain cleaner to dissolve the red glue and then reattach the weights with epoxy glue.  The recommendation was to use a drain cleaner with lye.  Well, guess what, you can’t get that anymore.  Why?  Goddamn methheads.  Lye is used in making meth.  So I picked up some other cleaner that had some of the chemicals that are associated with lye and hoped that would do the job.

The keys soaked overnight and while it did appear to dissolve all the running glue and freed the weights from the five black keys that had their weights fall, the other key weights were still rock solid.  Solid enough that I broke the plastic on a key trying to pry the weight out.

So the next day, I spent a lot of time scrubbing the keys, to get whatever glue was left (which had turned black) and planned my next move.  In one video, the person said the glue was susceptible to high pH and tested his soaking solution before starting to show it was high pH.  Well, I can make a high pH solution with some pool chemicals.  So I took the broken key as my new sacrificial tester, bought some alkalinity increaser from the pool store, and soaked the key in a solution with a pH off the charts of my pool test strips.  After a few hours, the key weight was as firmly attached as ever.

So at this point, I think I’m just going to fix the five black key weights, buy a replacement key for the one I broke, and put it all back together.  Some part of me says it’s leaving a job unfinished, but another part of me is saying, those other key weights are on there.  And I’m not leaving my keyboards in a non-climate controlled environment anyway, so they should remain solid.  I dissolved all the excess glue that had seeped out, so the only glue left is what is behind the weight.

The replacement key arrived quicker than I expected.  And immediately upon opening, I check it.  Red Glue.  Ok, off into a drain clearer bath overnight.  The next day, I scrubbed the dissolved glue off and installed the key.  I had been waiting for this and had installed every other key in advance.  I put everything back together and powered the board up.

No sound.  Further, the display was completely garbled.  Actually, this is ok.  I’ve heard that you might need to do a memory erase and then go through a tedious process of transmitting data to the device to restore it.  So I download the data file, get the utility program and try.  And try again, and again.  We’re not seeing any success here.  I read a couple more posts about the process and someone comments on turning off a memory protect switch.  Oh yeah, that would help.  A few more tries.  More reading.  Eventually what worked for me was navigating to a system menu, enabling sysex receive, and setting the device id to 17 (why I don’t know).  But then I had sound.

Unfortunately, some of the keys weren’t responsive.  I was too optimistic about their integrity and I probably shouldn’t have been.  So, everything comes apart again and I disassemble the keybed completely again.  Now I have to clean the membrane contacts and pads with alcohol, which wasn’t really as bad as I thought it might me.  I put on some music and went at it.  Two albums later, I was done and reassembling everything.

I had sound and now I had keys that work.  Some of the black keys were more sensitive than others, but that’s livable.  I can tweak any obnoxiously incorrect velocity in the sequencer if I need to.  And that actually wraps up the repair and restore of this device.

In the meantime, I’m buying another keyboard next weekend, which might need some attention, and also the keyboard that started this buying frenzy, the Equinox, needs some care.  The pitch wheel is wonky and I think some of the faders are dirty and spamming the bus.  And I know the battery is low on that, too.  So, no shortage of future projects, let’s hope they don’t become as involved as this one.

The Last Time Is The Charm

In an earlier post, I talked at length about this keyboard that came from a thrift shop and had a problem and how I tried to fix it over and over and eventually gave up and left it sitting in the garage, queued for the dump.  Well, sometimes, I just can’t give up. 

It’s been so cold the last few days that I didn’t want to touch the keyboard, seeing as it’s all metal (official weight: 51.4 lbs. – stupid heavy).  Today was warmer and I left the garage open so it could warm up a little.  After work, I went out and hauled the beast back in for yet another attempt at repair.

Did I have a plan?  Not really.  I was going to take the keyboard assembly out and just deal with the main board through MIDI.  Doing that, I could at least move something in and out of the closet that was probably 30 lbs. less every time I wanted to make another repair attempt.  And with that, I set the massive key bed out and hooked up the synth to another of my keyboards.

MIDI worked,  And enabling a sound on the master keyboard verified there was still the pitch problem.  I dug out the service manual and went through the reset and test modules.  Everything seemed ok from what I could tell.  A couple of the faders didn’t seem to register any movement and I had the pitch and mod wheels disconnected, so some blanks were expected.

Noodling around on the master keyboard, I happened to think to try the pitch wheel and when I moved it, I was very surprised to hear it didn’t work as it should.  The pitch would shift a little bit and snap back to the original incorrect pitch.  That would suggest that the contacts might be dirty, but this is a remote keyboard.  These are MIDI messages being sent and the synth is not honoring them.  Or something else locally is spamming the pitch controller signal.

I finally had a lead I could work with.  I started thinking schematically about what components could cause the pitch wheel to be triggered consistently even when disconnected.  I had the idea I should reconnect the pitch wheel and see if I could stabilize the pitch by holding it a certain amount.  To reconnect it, I had to remove a circuit board that had all the fader controls on it, like volume and four programmable sliders.

When I got the board off, I immediately noticed the connector for the pitch wheel had some trauma.  It was bent at an odd angle.  That seemed suspicious.  I inspected it closely and didn’t see anything broken.  But the faders were disgusting.  And as long as I had this board apart, I thought I’d try out my new chemicals, Deoxit and Deoxit Fader, the latter of which is specifically made for cleaning and lubing faders.

As I cleaned the faders, it was pretty clear they were just shot.  The cleaner was running down the board in a black oil.  But I cleaned them up as best I could.  With the pitch wheel reconnected, I powered the synth back up and tried out a few keys.  It was suddenly in tune.  No drift.  The pitch bend worked locally and remotely.  And that’s the end of this saga.

Reflecting on the "fix", when I very first got the keyboard, it had a pitch problem.  I was the one that disconnected the pitch wheel, so that was not the source of the problem.  One of the faders had to be the culprit – it must’ve had a short somewhere.  But I’m not going to be overly concerned about it from here out.  If the problem comes back, I will just buy a new fader board or maybe the faders themselves, since that is where the problem is centered.

The important thing is I have the keyboard I originally purchased in non-working order, now in working order.  And on a similar topic, I purchased another keyboard on a whim this week.  So I now have five keyboards and a stand that can hold two, so three have to be in storage.  I’m not sure where this is going at the moment, but we’ll see.  One thing for sure, I’m not getting rid of any more keyboards.

2023 Hike Log

So let’s try something different this year.  This time, I’ll just make one post and update it throughout the year with dates, location, distances, and notes.  That should be easier to maintain and I’ll be more apt to just put a quick log entry in here than trying to write blog entry on a hiking trip.

So let’s start.

Date Location Distance Notes
1/7/2023 Colt Creek 3.6 mi
1/14/2023 Alafia 1.2 mi Thin trails with lots of opportunity to climb, but much more bike-oriented than hiker.
1/15/2023 Colt Creek 6.7 mi How long? How long? How long to the point of know return?
1/22/2023 Tenoroc 2.7 mi Blue loop; nice elevation changes and great views.

Doesn’t Play Well With Others

Well, back from hibernation.  Seems like every once in a while I need to take a few months off.  And I have a need to break in the new keyboard I have.  That’s one little new thing in my life.  A month or so ago, my keyboard finally died.  I had spilled some liquid on it and it put up a brave fight for a few months, then one of the traces went out and some keys stopped responding

And normally, this would be a case of, just go get another, but I have been using the same keyboard model for, I don’t know, maybe 30 years?  And the problem is they don’t make them anymore.  I spent a little time researching a new brand and model to use, but broke down and searched harder for my life-long model.  Believe it or not, some charity shop had a few unopened packages of them.  I bought two and now I’m back in business.  Well, sort of.  These keys are really stiff and need broken in.  So, blog on.

So anyway, the thing that made me want to write a new post was about a side project.  I have a few side projects going right now.  One involves archiving older magazines with a new, fancy book scanner.  That’s a post for another day.  But another of the projects involved coding.  And it has turned into a once-and-done project, simply because I have to work with other people.  I didn’t think I’d have to, but that’s how it turned out, and that’s where I bow out.

The heart of the project was a conversion of some of the earliest published BASIC software programs to modern languages.  I feel that I am a pretty well-prepared person to do the conversion because I grew up with those programs, back when you needed line numbers and you didn’t have subroutines, only GOTO.  In addition, I enjoy teaching and helping new coders on their way.

So over a few hours, I converted a program from the old BASIC version to the new VB.NET version.  I felt I had done a good job.  I retained the procedural structure of the program, with only one subroutine for efficiency’s sake.  I documented the code for a beginner, to explain the why and the how of each element.  I checked in the code and it was approved.

A couple weeks later, I decided I’d convert another program, so I went back to the public repository to see what was left available.  In the process, I checked on the application I had converted.  To my surprise, it had recent edits by another user.  Ok, that’s fine, that’s what open source code is all about.  So I looked at the new code.  It wasn’t mine anymore.

The next developer restructured the entire application, putting everything into subroutines, renaming all my variables, even reversing the IF statements I used.  I was aghast.  And I was done. 

Later that night, I tried to come to terms with what happened and why I was so furious and what if anything I could do about it.

It boiled down to two things.  First, all my time was wasted.  There was little to none of my original code remaining, so I can’t say the next dev improved my code, they flat out replaced it.  If I had not done anything at all, the result would have been the same.  The same thing could happen with anything other conversion I may choose to add to that project, so why even bother?

Second, the code was written at maybe a 201 level, instead of my 101 level.  It was no longer a beginners program to learn from.  It was an end-of-course demonstration of everything you should have learned.  And this is the part that annoyed the hell out of me.  The new code had everything included except OOD (object-oriented design, which I would say is 301 level).  That’s way too much stuff for a first-timer to absorb.  It’s what would be termed "tone-deaf", or not understanding your audience.  For example, I had two variables.  The next dev changed that to an array with two elements, then used LINQ expressions .First() and .Last() to access the values.  Absolutely pointless except for illustrative purposes, and much too complex for a first-timer to grasp.

And that whole experience brought back a painful old memory when I tried to defend a particular coding style in a public forum and got viciously torn to shreds by all the other members for even considering anything but one single, approved method of doing it.  It literally drove me from the forum and I have never been back since.  Ironically, I just saw that forum mentioned by the same blogger that was running this conversion project.  Go figure.

So this is my position.  I am pissed off at people who think that everything must be constructed to the standards of some architect’s wet dream.  I’ve been in the professional world for decades and I can tell you, it’s not like that.  There’s some bright spots and there’s some rust.  And the people that I am pointing my middle finger to are the exact ones that are going to say, "It’s like that because of people like you!"  MAGA programmers, essentially.

But don’t get me wrong, I know code.  I know shit code, I know beginner code, I know unnecessarily over-engineered code.  I know which of these those people write.  And I can certainly appreciate well-written code, which I am sure they are capable of writing as well.  It’s the gatekeeping and exclusivity that are uncalled for.  Can I separate the art from the artist?  Nope.  People need to be more inclusive and welcoming instead of insulting, dismissive, and abusive.  And that’s not for just programmers.  That applies to everyone, everywhere.

Being Stupid Outdoors

Somewhere around 10 years ago, I got into hiking, which is a more impressive way of saying walking outside.  The local terrain doesn’t really constitute what I would call hiking, since it’s just flatland.  But regardless, it is outside and it is on a trail, so I can say that I hiked trails.  I was a hiker.

I did that for some time and eventually it kind of stopped being a thing.  I just slowly stopped doing it.  But recently, I’ve decided I want to start doing the hiking again.  it was a tentative beginning, I wasn’t sure if I would still enjoy a physical activity and honestly, I didn’t see any way it would be fun.  It sounded boring now, but whatever I was or wasn’t doing around the house was as much or more boring, so I also didn’t have much to lose.  And anyway I needed to do something to take positive strides in my health. 

I was 10 years younger back then, and as you get older, that nice round milestone becomes more and more significant.  However, I never have seen myself as the actual age I am.  Maybe I’m deluded or stupid or something, but I don’t think I am my age.  I probably think and act my age, but I don’t perceive myself that way.  The point I’m trying to make here is, however I was then, that’s how I think I am now, and I’m probably not.  And that’s not smart.  My new experiences with hiking have been a collection of smart and not so smart things; mostly the latter.  So I will chronicle the most recent events.

A couple weeks ago, we had a tropical storm moving in.  This caused me concern, not because of the storm itself, but because of the coming rain.  All of the nearby trails have been flooded from the summer monsoon and it pisses me off.  If there’s a couple days without downpours, the flooded trails can turn into muck instead of lakes, which makes the hike more tolerable.  The first time I had visited this particular trail, I had left the house and a mile down the road realized I did not change into my hiking boots, I still had my sneakers.  "It’ll be fine," I said.  "This trail is not as low as the other one I go to."  When I get there, right past the entrance gate – lake.  I had to go back home and change into my boots.  I haven’t made that mistake again.

Since that time, I’d been back to that trail and the water had gone down, mostly.  But today I was trying to get in a hike before the tropical storm hit.  I checked the radar and it looked fine.  I did not consider, and I should have known, weather here changes fast.  So I get a mile or so out on the trail and I’m seeing some dark clouds forming.  "It’ll be fine."  Then it becomes obvious that it’s not going to be fine and I need to get back to the car, like soon.  The moment of my realization was captured by my fitness band.

Screenshot_20210814-161341

I suffered a few minutes of downpour, but I escaped the worst of the storm, and there was no nearby lightning, which was the bigger concern, since these trails are open fields.  Lesson learned?  I got caught in another downpour on another day and I was far enough out on the trail to cause me to don my rain jacket I carry in my pack.  So, no.

Last week, I decided I was going to do a bigger hike, which at this point in my redevelopment is over 5 miles.  If you think that’s weaksauce, remember I am doing this while the temperature and humidity are over 90.  To reduce UV exposure, I wear a long-sleeve sun shirt, but I’m still wearing shorts.  I need to get some water-wicking hiking pants.  I reset my GPS and set my exercise band and go.  And very quickly, the sweat starts to go too, because I’m upping my pace to cover more ground quickly.  10 years ago, I could cover 5 miles in an hour.  Based on past hiking records, I move about 75% of that speed now and I need to get that speed back.

I have a trail map and I refer to it frequently, but it’s disintegrating from being soaked with sweat in my pocket.  At some point, I checked my band to see how far I’d gone.  My sweat-soaked sleeve had impersonated a finger and cancelled my recorded hike.  That had happened about 1.5 miles in.  No idea how far I’d gone since then.  I checked my GPS and it said I was about 2.5 miles.  Ugh.  Onward I went, referring often to the soggy paper map for what path I wanted to take to loop me around and back close to the entrance.

I ended up on an unmaintained part of trail and worse, it was flooded.  I thought I’d be better off pressing forward than backtracking so I navigated the water best I could.  Luckily none was over ankle deep so my socks stayed dry.  Still it slowed me down.  I checked my GPS to see where I was, relative to the path I had taken so far.  The GPS battery is dead.  Right now, I have no idea if I am better off going forward or backward or exactly where I am on the trail.  I really have no idea how hikers survived without GPS units.

As luck would have it (because it ain’t been brains), I had purchased replacement batteries and packed them just before leaving for the hike.  With a quick swap of batteries, I had GPS again.  And I saw that the GPS had died some time ago.  So now, I had no reliable track from either my band or the GPS to tell me how far my hike was today.  Yay.  I’m done.

The trail continues to be flooded, so at the first sign of a cutoff path that would lead me back to my prior track, I took it.  Granted, it was not on my paper map, so I was making an educated (if that’s even possibly appropriate at this point) guess.  The trail dried out and and I also continued to dry out.  After a certain point, your body won’t absorb moisture quick enough to replenish what’s been lost, and I feel I was there, or close to there.  I was mouth breathing at this point.  My gait was unsteady.  I was walking with a forward lean.  None of this was good.

But as I’m not writing this from the afterlife, I did make it back to my car.  Not without getting bit by a deer fly, twice.  It’s almost been a week and I’m still suffering from the bite on my knee.

Despite the stupidity I’d accomplished so far and my knee still swollen and itching (but not sore or painful), I decided to grab a quick hike after work yesterday.  Again, I planned this as a 5+ hike.  I would go to the trail nearest me to start as soon as possible.  I got on the trail at about 5:30.  The first mile was a warmup pace, then I sped it up.  I didn’t have a trail map, but had a decent memory of the trails and the path I wanted to take.  After a short trail ended in a tiny loop, I doubled my path and ended up on the big loop.  I had been on the trail a couple weeks ago and it was totally flooded, so I hoped things had improved.  I was pleased to see that the area that stopped me before was dried out.  And I kept going.

Probably about 50% of the way through the trail loop – lake.  About 30 feet of water with no high spots and certainly more than ankle deep.  I had plenty of expletives to summarize the situation.  I had no choice but to backtrack my whole track, which was over 3 miles at that point.  Not only that, but the sun was going down.

Once I got all the swearing out of my system, I just resigned myself to my fate.  And no point in pretending to be tired, sun’s setting, gotta go fast.  And so I did.  I upped my pace to the quickest of the entire hike and went back the entire length of the trail.  And lets not discount the fact that mosquitos really love dusk, in a swamp.

All told, that hike was 6.75 miles, accomplished in exactly 2 hours.  So far, my dumbest hike this year.  But there’s still plenty of days left in the year, plenty of chances to beat that record.

Screenshot_20210826-211540

Aerobic training effect: "Improvement".  Fuck you.

The Stars And What They Mean

Almost exactly 3 years ago, I was mulling over how to apply star ratings to albums so I could sort of make some sense of my music collection.  I actually never went through with it, but now I’m considering tackling something even bigger – applying ratings to the songs.

The big motivator here is building playlists.  When I first started with Plex, I had a vision of kind of a radio station feel to the whole thing, and appropriately, I made playlists that sounded like radio stations, or more like channels on XM.  And that worked pretty well for a while.  At some point, I can’t remember what happened, but I lost all my playlists and had to recreate them.  Ugh.

I remade some of my more used playlists and then I started reconsidering the others and broke them up into decades and sometimes by genre.  The problem there was sometimes I didn’t want to listen to all one decade of music.  So I made one massive playlist of all the singles in all decades.  And that one has been pretty much my go-to when I just need background music.  Realistically, I’m only playing 3 different playlists, but maybe with better metadata, that can change.

One big hurdle I’m facing is that there seems to be no way to get the ratings in and out of Plex from the files.  So whatever ratings I do, I would have to duplicate the effort in both Plex and the files.  And putting the ratings in the files has no benefit because Plex can’t import them (yet).  That sort of makes my Plex library more fragile, since there’s data in there I can’t just lose without a lot of effort lost as well.

Anyway, to disregard that problem for the moment, a bigger problem was how to efficiently get all that data?  Let’s step back even a little further, what exactly am I planning on with these ratings?

That point was something I dwelled on for a while.  I went around on it for a little while.  I considered using Plex collections, but those are only for albums, not songs.  Songs have Plex tags, and I looked into using them.  I thought maybe tags like "Single", "Top40", "Top10", and "#1" might be good.  But my inner software architect was displeased.  Initially, you would assume that "Top10" would also mean the track was "Top40" and also "Single" because of the inclusive nature.  So you’d only need one tag per song.  But that’s going to make the filters (queries) really messy because you have to put that logic into the filter.  If you want a list of "Singles" you have to also include "Top40, "Top10", etc.  The alterative is to use all appropriate tags where needed, so a #1 song would have all four tags on it.  That’s not pleasant either.  ugh.

So going back to the thoughts I had in my earlier post, what if I just made the star rating mean whatever I want it to mean.  So I quickly wrote down a scale:

1 star – Single
2 stars – Top 100
3 stars – Top 40
4 stars – Top 10
5 stars – #1

I think that’s usable.  And before I change my mind on it, how about that efficiency concern, now?  I had almost 2000 albums to go through and determine which songs were released as singles and what their position was on the charts.  And which chart, at that?

So obviously there’s a bunch of compromises that need to be made in this process.  The first was determining what stars mean.  The next will be starting with one source of data.  I considered I could use Wikipedia and look up each album to get the singles and chart positions, but that is woefully underpopulated, so I can’t use that for my primary source.  Billboard does this stuff for a living, I could try them.

As it turned out, someone had made a downloadable dataset of all the songs and chart positions on Billboard’s Hot 100 charts up to 2020 (far more than I needed).  After a quick download and import into a SQL database for easy querying, I felt I was closer.  While I was going to miss out on any 1-star entries, the dataset of the Hot 100 would cover 2-5 star entries, and I could backfill later.

At this particular point, I’m not able to do any automation of the rating import, because I can’t figure out how Plex stores the rating in their database.  I manually changed some things and didn’t see any data changes in the database, so initially, it’s going to be manual entry.  And then I can start building playlists based on singles and chart position, maybe mixing genre and release year into it.  Hopefully that gets me somewhere pretty good.

Lessons To Learn

In my previous post, I talked about music and "remastering" some of my old music.  Where I left off is that I was trying to redo some old keyboard pieces that used the Yamaha SW1000XG.  I bought a Yamaha MU80 as a replacement and that didn’t have the same sounds, so I bought an MU100.  To my surprise, again, not the same sounds.  So while I lick my $400 wounds and decide how I want to go from here, I made progressions on another musical concept.

I had written some guitar tunes a long while back, before I became a more aware and less offensive person.  As fortune would have it at that time, my voice could not cope with the style of singing required for the songs, so all I had recorded was the music.  There are some guide vocals in some songs, which are cringey to say the least.  It’s for the best they stay muted.  But anyway, the recording of the instrument parts left a bit to be desired as well, so I set myself to it to clean those up.

The first issue, which is just like the Yamaha issue, is trying to find the effects that I used when recording the tracks.  After many failed attempts to match up the guitar effects plugins, I gave up and chose new effect patches for the tracks.  They don’t sound the same as the originals, but no one’s heard the originals, so whatever.

The next step was cleanup.  In the original recording, there was a major problem with bleedthough in the mixer I owned, so a lot of tracks have a background noise of the click track.  Through a lot of clever editing and some aggressive fadeouts, I was able to hide any noticeable clicks.  As I made those edits, I determined how to best organize the project for mixdown.  This led to a solution of having the midi drum track span the full length of the song, including pre-silence and fadeout.  That way I could set the locators (which determine what part to mixdown) to the selected drum track and be good to go.

The step after that was mixing, burning, and testing the tracks in CD players: home and car, plus through computer speakers.  I have a spindle of 100 CDRs that I never thought I’d use.  I’m going to use them now.  As I did my tests, I adjusted track times, in cases where the mix cut off too quickly or in some cases, didn’t leave enough lead space for a CD player to audibly start the track immediately.  That was weird: that even if you want a track to start absolutely immediately, you still need a small bit of silence at the beginning otherwise it sort of quickly fades in.

And that was actually a problem, because I had two tracks that segued into one another – I couldn’t have a silent gap between them.  This issue was compounded by the software I was using to write the CDs.  Coming up with a resolution involved another step and more software.  To solve the gapless issue, I had to create a CUE sheet, which would identify the exact placement of the track boundaries on the disc.  And instead of burning multiple audio files, you burn one file that contains the whole CD audio.  The CUE file points to sections in that one audio file.

So now I have to create a single file of the entire album’s audio.  And this forced me to do the proper step of CD mastering.  In this step you work with all the mixed tracks together at once and make them sound cohesive.  And at the same time, you work out the timing of the tracks and the gaps between them.  It was something I was aware of in my listening tests – that some tracks needed volume adjustments – and the mastering process gave me that opportunity to balance everything out.  It’s something I expect to do in future projects.

So I’m up to test disc #6 now, which contains the level-matched tracks and also the gapless track changes where needed thanks to the CUE file.  When I burnt the CD using a new utility that utilized CUE files, I noticed some mentions of CD-TEXT being written, which allows CD players to pick up and display the track title.  I haven’t been able to see that in any players I’ve tried yet, but that’s another target to hit for future test versions.

Musical Progressions

It was a while ago I made a post with a lot of reservations.  It was regarding hauling out my music stuff and getting back into music.  And my reservations at the time were that I wasn’t going to get very far with my initiative because I’d been through the process many times in the past and each time ended up packing everything up and putting it away with nothing to show for the effort.

And, well, this is somewhat the same in that it has not been too productive.  I developed one idea I’d had for many years, but haven’t gotten enough to really make something concrete.  And while that was developing, I also worked on getting the recording station all set up.  I bought a new micro computer, monitor, and monitor stand.  I installed and set up my old Cubase software (which is way behind the times and yet more than I’ll ever need).  Although that’s all ready to go, I haven’t really started anything.

I knew I would have an uphill battle getting my physical abilities back since I hadn’t played in such a long time.  To my surprise, my capability came back faster than expected.  However, I plateaued quickly and my stamina was much diminished, so that was a little discouraging.

Instead of giving up, I decided to pivot a little bit and try to get some inspiration and relearn some engineering technique.  I have a lot of old music that exists in MP3 format.  It should be in FLAC format to be of the best quality.  Additionally, some of those songs need a little improvement.  One in particular has the beginning sort of cut off and I have no idea why I accepted that at the time.  Since I have the "source files" for the songs, I should "remaster" them in a sense and bring them up to a standard where I won’t need to worry about quality anymore.

What does that entail?  Well, I have to recreate the recording setup I had back when I recorded them.  This is not a trivial matter for me or for anyone who has ever attempted something like this.  While my case is relatively simple, imagine an actual professional musician trying to track down vintage synthesizers and recreating the patches that were used on each track.  It highlights the need for documentation in a studio.  I admit, I didn’t do hardly any – I never really gave it any thought.  So when I loaded up one of my old files and got a message about missing plugins, I essentially have to go hunting for vintage synthesizers.

After a certain length of time, there isn’t much hope for me to recreate some of the music as I would need thousands of dollars worth of older synths to do it, but a lot of my newer stuff used virtual synths and I still have that software.  I mean, most of it, I do.  Some I had to really go out and hunt for as it was discontinued.  I still don’t know if I have it all yet.  I’ve only worked on a couple songs.  Always keep backups of everything.

One of the bigger problems I faced is that I used a synth from the time that was on a sound card – the Yamaha SW1000XG.  I do still have that card, but I can’t install it in my new micro PC system.  I was able to find a virtual version of the same synth, called the SY50XG, but it had a serious problem where you couldn’t directly select the patches per channel.  You have to do patch changes through SysEx messages.  That’s not insurmountable, except for the fact that I don’t know the exact patch that I need.  That lack of documentation, you see.

So, money to the rescue, as usual.  The SW1000XG is supposedly a PC card version of the Yamaha MU80 synth module.  I was able to find one for under $150 on EBay, shipped from Japan.  When it arrives, I should hopefully have everything I need to recreate the old songs and remix them at full FLAC fidelity.  All I should have to do is change the port from what was the SW1000XG to the MU80 and the patch I had selected on the old synth should map right to the new one.

But even this overall process is a real pain.  My recording workstation is not comfortable.  I have the choice of standing or sitting on a wood stool.  The keyboard is a mini keyboard with embedded touchpad, like using a laptop.  And all this equipment is in my music room, so there’s no real space to stretch out.  I feel like I need to eliminate my guest bedroom and make that a studio room, but I don’t want to do something drastic like that yet.

Over the long weekend, I worked on the project on and off in something like 30-minute increments.  Most of it was installing missing software synths and testing them out.  The recording PC is not network connected, so if I needed anything, I would have to walk back and forth between that and my regular PC in another room, transferring files on a USB drive (they used to call that "sneakernet" in the days before widespread computer networks).  So that process was annoying and exhausting in itself.

But I guess the big positive takeaway is that I haven’t given up yet.

Follow-up edit:

It turns out the MU80 is not the same thing as an SW1000XG.  After receiving the device and integrating it with my setup, I tested it out on a track I knew to use a lot of Yamaha sounds.  Very specifically, the drum kit I needed didn’t exist on the MU80.  Research, which I should have done before purchasing, would have given me the information I needed.  One web site gushing about the SW1000XG having 1200 sounds and 46 drum kits, then a Wikipedia article for the Yamaha MU series listing the different models and their capabilities gave me the full story.

The SW1000XG came out in 1998.  The MU80 came out in 1994 and had 729 sounds and 21 drum kits.  The MU100 came out in 1997 and had 1267 sounds and 46 drum kits.  And, you know, even if I was dumb enough to ignore the timeline, I should have given some credit to the model naming scheme.

The end result is I have to buy a Yamaha MU100, meaning I now have an extra sound module that is of little use to me.  Luckily, they aren’t that much more expensive than the MU80, but still, double the cost kind of sucks.  I suppose I can sell the MU80 and recoup some of that cost.

Self-Hosted Album Art

I have an extensive music collection on CD, which shouldn’t be news to anyone who’s visited this blog.  I rip all my CDs to my local Plex server.  I’m a little particular about the album art for the albums.  I want it to be an exact representation of what is on the shelf and I want it to be in good quality.

For multiple varied reasons, I sometimes can’t find suitable album art online and in that case, I do it myself, scanning and cleaning up the cover art.  The result is something unique.  Duh, since I wasn’t able to find it elsewhere.  And I think it would be a shame to keep it to myself if someone else had a need for that artwork.

Up until now, I’ve been storing these files on Flickr.  It’s not been bad.  Even with their recent restrictions on free accounts, I don’t really have any worries of exceeding their limits.  But, as mentioned in past posts, I’ve been wanting to be more independent, so I made the move of the files to my own server.

And now you can get the cover art files from https://anachostic.700cb.net/AlbumArt.  It’s a little gallery that took all of about 45 mins to code up.  It displays smaller images and when you click one, it shows a larger image in a new window.  The small size is 500×500 and the large is 1500×1500.  These should be usable for anyone’s general usage.  You can save some time by right-clicking a small image and choosing Save Target As.

And now, when I add new stuff, I don’t have to go to a browser, open Flickr, log in, do the upload, and blah blah.  It’s a simple file copy for me on my network.  Easier all around.

Bring Out Your Dead

I have a problem.  Not really, but some would say, yes.  It’s my CD players.  I’ve discussed it little before and maybe joked about it.  It’s still kind of a joke.  here’s the continuation of that joke and my rationale.

So I have, let’s see.  Let me count them… 8.  Eight CD players.  Since the last time I mentioned this, I’ve added a JVC XL-V141, which is a 90’s player, and yesterday, a Yamaha CDX-520 from 1989.  This is the Yamaha:

IMG_20210424_102515

My collection all meet certain criteria, partially for my promotional purposes if I get to the point of selling them.  All have physical power buttons (Off is OFF), all have headphone jacks, so the youngin’s can enjoy them without needing a full stereo.  Most have volume knobs for the headphones, which is a excellent touch.  You see, when things started getting cheaper, features got cut.  This is back when CD players were premium devices.  And yeah, these were about $300 when new.  Back in those dollars, which is probably $600 today.

So, I had purchased this neat new player for $25.  I was eager to try it out and clean it up when i got home.  Right away, I plugged it in and gave it a smoke test on a CD and headphones.  Tray opens and closes, that’s good, the disc TOC reads, good.  Ohhh..  It has a chronic skipping problem.  It just stutters all over the track like it’s on fast-forward.  Damn it.

Pop the case off and look around.  I don’t really know what I’m looking for, just something out of place.  It all looks good.  I push a bunch of buttons and I notice that the CD doesn’t skip on later tracks, more on earlier tracks and chronically on the first track.  This is a clue, but I don’t know what it means yet.  This is pretty much what I had in front of me:

IMG_20210424_101235

While I’m reading my CD player repair document and looking over the player’s schematics from its service manual (which mean nothing to me), I go back and forth between the computer and the player.  Stopping and starting the player over and over.  Oddly, now it seems to be skipping less.  Then it’s not skipping on the first track anymore.  Is that all it was?  The player was tired and had been sitting too long, maybe just needed to warm back up?  What a crazy solution to the problem.

I tried a few more CDs.  Nope.  Skipping was still there.  So, I considered the problem wasn’t electronic, maybe mechanical.  Maybe the gears and rails for the laser transport needed cleaned and lubed.  I disassembled it and lubed up the moving parts with silicone lube on a swab (not recommended around electronics, but I’m stubborn).  Not any better, maybe worse.  Well, I’m going to have to level up on my repair skills.

The repair manual discussed adjusting the lens tracking and focus using potentiometers on the circuit board.  The troubleshooting guide also said tracking issues would cause skipping.  Ok, let’s do this.  $25 already gone, right? 

I took a picture of the pots before I fiddled with them just to be absolutely sure.

IMG_20210423_174910

While a CD played, I slowly twisted the left pot and the skipping got worse.  Well, that’s a change in some direction, so I felt I was on the right track.  However, I couldn’t get things to get any better.  In fact, I experienced something the the guide warned about, with the CD spinning out of control at very high speed.  So, after powering the player down and resetting the pot to neutral, let’s try the other one.  In a couple small changes, suddenly the transport quieted down and didn’t seem to rattle anymore.  The skipping stopped!  This is the setting I ended up with:

IMG_20210424_101116

It’s not a major adjustment, but I imagine it’s not supposed to be.  I’ve been testing out the player on multiple CDs and no more skipping issue at all.

So, my little joke of a collecting problem has given me a new repair skill.  Formerly, my repair abilities were limited to changing belts, which honestly is pretty good and has brought a couple players back from the dead.  Now I have a new solution for a new problem under my belt.  I can fix even more players now.  A good hobby is one where you continually grow, right?