Menu

#2 ICP through USB

open
nobody
None
5
2005-11-05
2005-11-05
No

So after browsing on freescale I found some good ideas
in the application notes. (AN2398, AN2398SW) They have
been using some king of usb loader.
Normally this piece of firmware is "turned off" and by
issuing some command to the current FW, it switches to
the loader. Then it lets you flash the new FW. And
again by issuing another command it switches back to
the new FW.
I havent really looked into that (how much space does
it take, etc). But I think it would make the update of
the FW much easier. (you dont have to use the prommer).
As an idea it sounds good :)

Discussion

  • Bas Wijnen

    Bas Wijnen - 2007-01-02

    Logged In: YES
    user_id=42389
    Originator: NO

    I'm working on this. I'm rewriting the usb code in assembly, using as little ram as possible in order to make this "bios" most usable for applications. I expect minor rewrites to the rest of the code are needed to use it. I'll post more news here as things improve. :-)

     
  • Bas Wijnen

    Bas Wijnen - 2007-01-16

    Logged In: YES
    user_id=42389
    Originator: NO

    Ok, I think I have a working version of this. I only tested it in a (for the purpose written) simulator though, so it may not work. :-)

    The code is at https://pcbcn10.phys.rug.nl/svn/trunk/embedded/MC68HC908JB8/icp/. This code allows inserting a program in the flash through the usb connection. The code itself is not erased through that operation, so it can be done many times.

    I have not adjusted the ir-boy code to use this "bios", so that doesn't work yet. But it shouldn't be too hard to do.

     
  • Bas Wijnen

    Bas Wijnen - 2007-11-25

    Logged In: YES
    user_id=42389
    Originator: NO

    There is some improvement. I have built the hardware, and tested the bios on it. It works fine. I've still not adjusted the irboy mcu code, but I did write something similar myself. It's in the irboy directory. I get nice waveforms out, so it seems to work. :-) I didn't do anything to parse them yet, let alone write a lirc driver. So if you want that, this is still not the thing to use. :-)

    In case you read the code and wonder what all the port A stuff is for: I have a connector on the "free" side of the controller, which I led to an old digital (MSX) joystick. It also sends events about that to the host computer. You can totally ignore it if you just want the IR function. :-)

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.