GithubHelp home page GithubHelp logo

Comments (5)

DeqingSun avatar DeqingSun commented on July 25, 2024

I have a feeling ROM_CFG_ADDR might have a difference in content mapping and cause the issue.

Did you try to pull down another pin to see if it goes into the bootloader? You may find that pin in the WCH ISP Tool software.

I'll order a few CH546G to test. It will take about a month to get to me.

from ch55xduino.

sinitax avatar sinitax commented on July 25, 2024

Great to hear you are looking into it!

The WCHISPTool programmer mentions P1.5 and P5.1. Pulling these up or down through a 10k resistor had not effect (no usb communication).

I took another look at the datasheets for CH546/547 & CH548/589 and it seems like in terms of hardware CH548/CH549 and CH546/CH547 are only pair-wise compatible (e.g. CH546 and CH548 but not CH546 and CH549). The incompatibility stems from varying SFR placement (Section 5.2) and shifted memory map due to smaller total flash size (32kB vs 64kB) (Section 6.1), the latter causing ROM_CFG_ADDR to end up at 0x7FFE instead of 0xFFFE for the CH549 I assume.

memory map

I suspect this caused the config information to be overwritten as part of the application code - but i am not familiar with the programming process in detail.

The datasheet also mentions "Without Bootloader, application code and Bootloader may only download through specialized programmer". I found out that "CH546 [...] only provides UART0" but even this port is unresponsive. Are you familiar with the aforementioned programmer?

from ch55xduino.

DeqingSun avatar DeqingSun commented on July 25, 2024

As far as I know. Wch is not willing to provide serial spi programming to retail user.

from ch55xduino.

sinitax avatar sinitax commented on July 25, 2024

Hello,

have you found time to test with the CH546G? I got my hands on a few more CH546L and decided to try my luck by creating a new board target and modifying just upload.maximum_size to 28672 (0x7000). Upon successful upload, the chip registers again as Generic CH55xduino, but is inaccessible again after power cycle (same behavior as before). I tried once with and once without adjusting DATA_FLASH_ADDR, BOOT_LOAD_ADDR or ROM_CFG_ADDR for 32k flash (-0x8000).

Would you have adjusted the addresses differently? - or have an idea what the problem is?

from ch55xduino.

DeqingSun avatar DeqingSun commented on July 25, 2024

Yes I did get a few CH546G. I will try to see the communication between the official tool and the chip these days.

from ch55xduino.

Related Issues (20)

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.