Giter VIP home page Giter VIP logo

parezj / bsl430.net Goto Github PK

View Code? Open in Web Editor NEW
41.0 3.0 9.0 39.17 MB

TI MSP430 Bootloader (BSL) .NET Cross-Platform Toolchain & Firmware Tools. The cheapest way to flash MSP430, with FTDI/Serial/UART converters. Intel-HEX, TI-TXT, ELF and SREC firmware format support, can also convert, combine, hex-edit..

License: MIT License

C# 99.88% Batchfile 0.12%
msp430 texas-instruments bsl430 bsl firmware mcu bootloader flash memory toolchain

bsl430.net's People

Contributors

parezj avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

bsl430.net's Issues

Timeout due to receiving "wrong byte array" length

Hi,

I have trouble programming my MSP430FR5994. It worked for a while and then randomly stopped. I have checked the signals. The BSL invocation is correct. The BSL430.net windows application then transfers the password (or a single low byte if no password was given). The MSP replies with a long low signal and the desktop application times out

20240114_145836
20240114_153635
BSL430Net Error Message

Hope you can help. Thank you in Advance

Some bugs for uploading code to MSP430G2553

I found some bugs in protocol 1xx, 2xx and 4xx families using your console program. This will fail password checking also uploading code to msp430g2553. After I modified some codes then it worked.
Following are my modifications:

Main_priv.cs:
1.

case Command.Password:  // address: -   data: D1 ... D20
    {
        BSL_frame.Add(Const.BSL_CMD124__RX_PASSWORD);  // typo?
        BSL_frame.AddRange(Enumerable.Repeat(Const.BSL_DATA124__PW_L1_L2, 2).ToArray());
        BSL_frame.AddRange(Enumerable.Repeat(Const.BSL_DATA124__DUMMY, 4).ToArray());

        if ((data == null || data.Length != Const.BSL_SIZE124__PASSWORD))
        {
            message.status = Utils.StatusCreate(801);
            return message;
        }
        BSL_frame.AddRange(data);
    }
    break;
  1. RX data block BSL command should take n-4 bytes:
case Command.Upload:  // address: AL, AH   data: D1 ... Dn-4
    {
        BSL_frame.Add(Const.BSL_CMD124__RX_DATA_BLOCK);
        BSL_frame.AddRange(Enumerable.Repeat((byte)(data.Length + 4), 2).ToArray());

        if ((address == null) || (data == null || data.Length < 1))
        {
            message.status = Utils.StatusCreate(801);
            return message;
        }
        BSL_frame.AddRange(_address.ToArray());
        BSL_frame.Add((byte)(data.Length));
        BSL_frame.Add(0);
        BSL_frame.AddRange(data);
    }
    break;
case Command.Upload:
    {
        Debug.Assert(typeof(T) == typeof(Data_Void));
        //throw new BSL430Exception(460, "Result<Data_Void> res = msg(Command.*)");
        result.data = (T)(object)new Data_Void();
        ok = (answer.data.Length == 1 && answer.data[0] == Const.BSL_GENERAL124__ACK);   // another typo?
    }
    break;
  1. In ParseFirmware function, the variable fill_FF should be true for TI text format?

Constants.cs

// BSL RX SIZE - PROTOCOL 1xx 2xx 4xx
public const byte BSL_SIZE124__PASSWORD = 32;

Thank you for providing this awesome software so that I can flash my msp430g2553!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.