Close

Tang Nano 9K Rant

A project log for vector-06c mini

A 50% size replica of my favourite 8-bit computer

svofskisvofski 09/04/2024 at 16:030 Comments

I have added a couple of features that I should have added a decade ago, namely ROM file load and WAV file load. They are far from perfect, but it's a start. For example, ROM load requires that it's reset into tape loading state first (F1+F12), and there's no good visual indication of operation progress. For some reason I've yet to discover, not all WAV files load well. For example, I can't load a turbo load wavs, nor can I load a program saved from Basic-Korvet. I will demo all that in due time. Meanwhile I've been stuck on something completely ridiculous...

I've been playing with sound, and even though I had nice improvement in my PWM output, it's still pretty noisy. So I wanted to measure the noise when powered by PC vs powered by a power bank. For this to work I needed to program the flash so that it cold boots. I did that many times already.

So I flash it, but suddenly I get an error and a Status Code: 0x00035421. Awesome.

GowinSemi tech support promptly responded. Turns out that if I updated the programmer, I could also click on Status Code line in the log and see it decoded. It decoded to CRC ERROR. So I updated the programmer, tried it again. This time it decoded to BAD CMD.

I immediately guessed that the flash must be dead. But I decided to try to flash another project, and tried it with an LCD example. It worked just fine (not without some cable juggling and every version of the Programmer has its own ritual, but eventually it did).

So I thought maybe my project is too big and it tries to write over some bad sector in the flash. I disabled Floppy support. Flashed the project, it works.

Oh well I think. Let's enable floppy support back and try it again. Flashed the project, it works.

¯\_(ツ)_/¯

Meanwhile the support responds something about flash needing 1MHz max, and that's the problem with this cable. The cable has a frequency setting in the programmer. But they say it's some different setting. But they give no clues about what I should do to make it work. Oh well... Moving on I guess.

P.S. Noise (after normalisation) left: PC, right: power bank.


PWM filtering could be better, but I guess it's okay because all of this happens above audible frequencies.


Meanwhile, the support responds:

We do not recommend programming the eFlash of 9K in Tang Nano board due to the USB-Jtag chip.

If you want program the eFlash, we recommend either make your own board and choose GWU2X or FTDI chip or remove the USB-JTAG chip and put a 4 pin Jtag connector and using our download cable to program in the Tang Nano Board. 

I guess this is the correct answer, even if this isn't the answer I want to hear. I will continue using the tools at hand and hope for the best.


Discussions