applying firmware via USB-serial adapter

Posted by: wfaulk

applying firmware via USB-serial adapter - 20/02/2007 00:00

I got a new bigger drive for my empeg and went to install it today, but quickly realized that I cannot manage to upload firmware over a USB-serial adapter, which is the only adapter I have. Did anyone ever come up with a solution for this?
Posted by: wfaulk

Re: applying firmware via USB-serial adapter - 20/02/2007 00:28

Crap. Now I can't even get a kernel to upload with tfabris's upload.exe Fails every time as soon as it starts uploading with "got code 6".
Posted by: mlord

Re: applying firmware via USB-serial adapter - 20/02/2007 02:29

It works for me, with my download.c from Linux. Over bluetooth or any of three other (different chips) USB->serial adapters.

??
Posted by: wfaulk

Re: applying firmware via USB-serial adapter - 20/02/2007 02:34

Can you apply filesystem images with download.c?

BTW, your download.c doesn't work under OpenBSD. I have a version that does.
Posted by: mlord

Re: applying firmware via USB-serial adapter - 20/02/2007 02:37

Quote:
Can you apply filesystem images with download.c?


Just kernels, and logos.
Quote:

BTW, your download.c doesn't work under OpenBSD. I have a version that does.


Bugger. Send me a patch?

Thanks
Posted by: wfaulk

Re: applying firmware via USB-serial adapter - 20/02/2007 02:55

I actually fixed it from the original version shortly before you released yours and I ended up rewriting a lot of it, so a patch isn't really possible. You can download it from my web site, though.
Posted by: mlord

Re: applying firmware via USB-serial adapter - 20/02/2007 12:40

Mmmm.. Mostly your copy just has a lot of whitespace adjustments and curly bracket changes. Not much actual real code difference.

Here (attached) is a copy of mine, with your cfmakeraw() and O_NDELAY changes incorporated. Does this build for you? If not, send me the compiler messages.

Thanks
Posted by: wfaulk

Re: applying firmware via USB-serial adapter - 20/02/2007 13:17

Yeah, that's possible. I did it several years ago. I did also change the way you pass it arguments (I hate index-based argument-ing) and added some new arguments

Yours from before built, but just failed to actually work. I'll test it tonight and see if it works.
Posted by: dewdman42

Re: applying firmware via USB-serial adapter - 02/06/2007 22:36

Uh oh... I didn't read this thread and I think I just turned my empeg into a brick. I hope someone can help. I was trying to use the emplode firmware wizard to upgrade Mk2 from 2.0 to 2.01 firmware. I was using my laptop which does not have a serial port. I installed a USB-serial adapter on my laptop...which by the way was working fine with Emplode to load my music database up to the PC and browse around. However, the firmware update failed at stage x10 and now the Empeg will not function. I've tried several times to do the firmware again, same error every time. The first time I ran it I also forgot to turn off the power first and then turn it back on. All the other times I did it as instructed, but turning off the power and then starting the wizard and plugging in the power when asked. It seemst to recognize the player when the power comes on and starts to do some stuff but then give me "Error 'Flash program failed' occurred during state 0x10".

crap...so what will I have to do to make my player usable again and is it true that a USB-serial cable can't be used for this? I don't see why it should matter, I would have thought that from the Empeg's perspective it can't tell the difference between a real serial communication and one that is going through a USB driver.

help please!
Posted by: mlord

Re: applying firmware via USB-serial adapter - 03/06/2007 03:12

Don't worry, it's not a brick.

USB-serial adapters work just fine for kernel downloads etc, but I don't know how well they work with the Windows-based upgrade software.

To unbrick your player, re-install the Hijack kernel using the Linux based download program (or perhaps using LogoEdit). Then use the Linux based upgrader utility to install the .upgrade file over ethernet, avoiding the USB/serial port problem.

Cheers
Posted by: dewdman42

Re: applying firmware via USB-serial adapter - 03/06/2007 03:15

That all sounds like good news, except I don't have a linux machine anywhere around me. I'm not even sure what you mean when you say "kernal downloads". Is there a way I can make a linux boot Cd to run these utilities? Is there no way for me to restore my machine with windows? I am going to try now to use a regular serial cable to my webserver, with not usb adapter in the mix..
Posted by: dewdman42

Re: applying firmware via USB-serial adapter - 03/06/2007 03:20

Actually I can't do that now either because the serial port is disabled on my webserver and I don't have a monitor I can use to go into Bios to enable it. I will have to enable it later and try that.

Otherwise, it sounds like if I have to do some crazy linux stuff to restore my Empeg, I won't have time to do it until August. :-(
Posted by: tfabris

Re: applying firmware via USB-serial adapter - 03/06/2007 04:50

dewdman42, You don't have to use Linux to restore your empeg. What mark was saying was:

"That crazy USB-serial adapter will work fine under Linux if you happen to have it handy."

However, since you don't, your only current option is to find a friend with a computer that's got a proper serial port and do the firmware upgrade from there. Or do the work from that server you were talking about.
Posted by: dewdman42

Re: applying firmware via USB-serial adapter - 03/06/2007 05:07

Thanks for jumping in guys. that is good news. I had to listen to the blooody radio on my drive tonight! 8-O

So let me get this straight. Under Linux I can use the USB adapter. Under Windows, no. I should be able to restore the firmware on my Empeg with my desktop machine that has a serial port on it. After that if I want to try to use the USB-serial adapter I need to use Linux..otherwise under windows stick to true-blue serial ports. About right?

If so, does anyone know WHY that is? I'm just curious. I got this USB serial adapter for something else and this is the first time I've tried to use it. I wonder if it will be a problem elsewhere also.
Posted by: mlord

Re: applying firmware via USB-serial adapter - 03/06/2007 12:52

Quote:
Thanks for jumping in guys. that is good news. I had to listen to the blooody radio on my drive tonight! 8-O

So let me get this straight. Under Linux I can use the USB adapter. Under Windows, no. I should be able to restore the firmware on my Empeg with my desktop machine that has a serial port on it. After that if I want to try to use the USB-serial adapter I need to use Linux..otherwise under windows stick to true-blue serial ports. About right?

If so, does anyone know WHY that is? I'm just curious. I got this USB serial adapter for something else and this is the first time I've tried to use it. I wonder if it will be a problem elsewhere also.


I've been slightly mis-quoted here (but you can still re-read my original posting above).
You can "fix" your player using Tony's LogoEdit utility to download/install a fresh Hijack kernel with the USB/serial dongle under MS-Windows. Odds are excellent that your player will have full functionality after about 2-minutes of effort, and you cannot screw it up any worse.

Once you have Hijack installed, you can use my upgrader software to re-apply the .upgrade file, if you still want to upgrade, totally avoiding the USB/serial issue. upgrader is a Linux program, but other(s) here have produced a win32 (MS-Windows) executable of it that you could seek out and use.

-ml
Posted by: mlord

Re: applying firmware via USB-serial adapter - 03/06/2007 12:56

Quote:

If so, does anyone know WHY that is? I'm just curious. I got this USB serial adapter for something else and this is the first time I've tried to use it. I wonder if it will be a problem elsewhere also.


Broken assumptions in the original programming of the empeg tools. Real serial ports transfer characters back and forth as soon as data becomes available for transmission.

USB devices use a packet protocol, which means they prefer to gather/buffer multiple characters together before sending anything. Those characters then get sent/received as faster bundles, but with larger time gaps between bundles.

Those larger time gaps are unnatural to software that expects a Real serial port, and such software is confused by them.

Cheers
Posted by: gbeer

Re: applying firmware via USB-serial adapter - 03/06/2007 13:27

Aren't there also pc-card serial adapters that provide "real" rs-232 ports?
Posted by: mlord

Re: applying firmware via USB-serial adapter - 03/06/2007 13:54

Quote:
Aren't there also pc-card serial adapters that provide "real" rs-232 ports?


I don't know, but that's certainly possible. The PC-Card interface is just an ISA bus expansion slot, and the CardBus interface is really just a PCI slot in disguise. So Real serial ports are possible with either, if your software won't work with USB/serial.

Cheers
Posted by: dewdman42

Re: applying firmware via USB-serial adapter - 03/06/2007 15:06

There must be some cardbus serial cards out there and I should look into that, in retrospect that would be much better than using this USB thing, especially now that Mlord has explained the packet issue (thanks that makes perfect sense). In any case, I'm just going to get my empeg running again and from now on I won't use my laptop to configure it.