Shop OBEX P1 Docs P2 Docs Learn Events
BS2p-24 cloner problems — Parallax Forums

BS2p-24 cloner problems

ArchiverArchiver Posts: 46,084
edited 2003-06-06 19:48 in General Discussion
Greetings,

I am trying to make a cloner from a BS2p-24 to write to another BS2p-
24. I have the program almost working but it only works with two of
the six BS2p-24's that I have. I started with the clone.bs2 program
from Tracy Allen's emesystems.com web pages and have modified it to
send data from the clone's bank 1 to the target's bank 0. The other
banks are programmed in the same manner, 2 goes to 1, 3 goes to 2.
The clone program is in bank 0 and not transmitted.

Is there a format for the header that is sent? I suspect I have a
timing issue with not receiving the 's' character. Yes, these chips
send out an 's' not an 'r'. If its not propriatary could someone
share it? (or give a link to it?)

Thanks
Paul

Comments

  • ArchiverArchiver Posts: 46,084
    edited 2003-06-06 19:46
    >Greetings,
    >
    >I am trying to make a cloner from a BS2p-24 to write to another BS2p-
    >24. I have the program almost working but it only works with two of
    >the six BS2p-24's that I have. I started with the clone.bs2 program
    >from Tracy Allen's emesystems.com web pages and have modified it to
    >send data from the clone's bank 1 to the target's bank 0. The other
    >banks are programmed in the same manner, 2 goes to 1, 3 goes to 2.
    >The clone program is in bank 0 and not transmitted.
    >
    >Is there a format for the header that is sent? I suspect I have a
    >timing issue with not receiving the 's' character. Yes, these chips
    >send out an 's' not an 'r'. If its not propriatary could someone
    >share it? (or give a link to it?)
    >
    >Thanks
    >Paul

    I think the change from "r" to "s" happened with the firmware upgrade
    from 1.2 to 1.3 (BS2pe only). It is still possible that you have
    both firmware versions? BTW, the codes for the BS2p-40 are "R" and
    "S", again "S" for the most recent firmware. I see my web page does
    not reflect that upgrade.

    Yes, there is a format, as described on my web page, and I think
    Parllax has that information openly available somewhere now. But you
    clearly have that right if your program works on at least one
    BS2p-24--It should work on the others!

    regards,
    -- Tracy
  • ArchiverArchiver Posts: 46,084
    edited 2003-06-06 19:48
    I did this once as an experiment and it's not too tough. If you think about
    it, a bank is just a 2K EEPROM image. The easiest way to "clone" is to send
    the bytes of that image. Obviously, you want to use bank 0 as your control
    program so you can setup some kind of exchange with the source of the "clone"
    data [noparse][[/noparse]I was experimenting with a PC connection for a reprogrammable robot].
    Once
    the master program knows that a connection wants to be made and what back to
    copy it to, it simply receives the stream of 2K bytes (you can use a
    confirmation -- but this will slow things a bit) then writes them to the target
    back.
    Here's a spot where the STORE directive comes in handy. In pseudo-code, the
    process looks like this:

    1) Recieve target bank #
    2) STORE target, then set eeAddr to 0
    3) SERIN eeByte
    4) WRITE eeAddr, eeByte
    5) eeAddr = eeAddr + 1
    6) IF (eeAddr = 2000) THEN Clone_Done
    7) GOTO Step_3

    The problem with my process for you is that it overwrites the entire bank --
    so you can't overwrite bank 0 if you're currently running it it.

    -- Jon Williams
    -- Parallax


    In a message dated 6/6/2003 1:02:32 PM Central Standard Time, prcoy@y...
    writes:

    > Greetings,
    >
    > I am trying to make a cloner from a BS2p-24 to write to another BS2p-
    > 24. I have the program almost working but it only works with two of
    > the six BS2p-24's that I have. I started with the clone.bs2 program
    > from Tracy Allen's emesystems.com web pages and have modified it to
    > send data from the clone's bank 1 to the target's bank 0. The other
    > banks are programmed in the same manner, 2 goes to 1, 3 goes to 2.
    > The clone program is in bank 0 and not transmitted.
    >
    > Is there a format for the header that is sent? I suspect I have a
    > timing issue with not receiving the 's' character. Yes, these chips
    > send out an 's' not an 'r'. If its not propriatary could someone
    > share it? (or give a link to it?)
    >
    > Thanks
    > Paul



    [noparse][[/noparse]Non-text portions of this message have been removed]
Sign In or Register to comment.