Goteks with new "guts"

Por Alexey

Guardian (3092)

Imagen del Alexey

17-04-2021, 00:11

Looks like the time of Goteks with STM32 chips is coming to an end. The Chinese sellers started to ship exactly the same looking Goteks (it's not possible to distinguish by photos), but those new ones are based on the AT32F415 chips. So it's not possible to program them using the tools from ST Microelectronics. We need a new solution. I've just received the Gotek with the new "guts". After some googling I've found the software that can flash it. But I had to figure out how to flash and how to install an OLED screen myself.

For starters, here's the photo of the Gotek with the new "guts". Don't pay attention to the already installed OLED screen, we will come to that later.

To flash the Gotek you need the special USB cable with USB-A connectors on both ends. Before connecting the USB cable you need to short the Boot (J3) jumper in order to disable the old firmware and let the computer detect the device for flashing. As the jumper pins are not installed by default, you may need to use a wire to short the 2 leftmost pads on the circuit board:

After connecting the Gotek to a computer, there appears a new device named "DFU device in FS mode" and, of course, Windows won't find any drivers for it. Well, what tools can we use to flash the new Gotek with the FlashFloppy firmware? A Chinese-made utility set can be downloaded from here:

https://www.arterytek.com/download/Artery_ISP_Programmer_V1.5.46.zip

First, we need to unpack the archive and install the drivers by running the file Artery_DFU_DriverInstall.exe from the "Artery_DFU_DriverInstall" folder. After the drivers get installed, we can connect Gotek to a PC and run the flashing utility ArteryISPProgrammer.exe from the "Artery ISP Programmer_V1.5.46" folder. In the initial screen we need to select "USB DFU" for the Port Type and check that our Gotek has been found:

Then we need to click the Next button until we get to the screen with many options:

Now we need to get rid of the old firmware. So we need to select the "Enable/Disable Protection" option and click Next. A warning will be shown about completely erasing the flash memory. Click Yes. In the new window you will see the process of flash memory erasing and the results. If everything goes OK, the interface will look like this:

Click Back and choose "Download to device". Then click Add and select the previously unpacked FlashFloppy firmware file in HEX format: FF_Gotek-v3.24.hex (please use version 3.24 or later!). Don't forget to check the "Verify after download" option. You can enable the read protection by checking the "Enable Read Protection after Download" option, but then you won't be able to verify the uploaded firmware. Before flashing the interface will look like that:

Check everything and click Next. There will be another warning about your firmware being unsafe if you don't enable the read protection. We'll just ignore it and click Ok. In the new window we will see the flashing and verification process and the result of the firmware upload. If everything goes OK, the interface will look like that:

Basically, that's it. We just need to disconnect the Gotek from the USB cable, remove the wire from the Boot (J3) jumper and to connect the power to its power connector (or you can reconnect the USB cable to power up the device). If you see the "F-F" letters (or "FlashFloppy" with version number in case you installed an OLED screen), then the firmware has been uploaded successfully. If you need to change the firmware or upload it again, you need to set the jumper once more to prevent the firmware from starting before connecting the USB cable to the Gotek.

The FlashFloppy 3.24 firmware with the support for the new Gotek can be downloaded from here:

https://github.com/keirf/FlashFloppy/releases/tag/v3.24

WARNING! According to some people on the forums, the new chip has twice less RAM than the previous one, so working with certain file formats (for example HFE) may be affected. But this probably doesn't affect our MSX disk images in the DSK format.

The schematics of the new Gotek can be seen here (found it on some forum): http://rbsc.su/files/newgotekschem.png

And, finally, let's install an OLED screen into the new Gotek. It's no more complicated than connecting the screen into the older Gotek version. More information can be found here. The wiring for connecting an OLED screen to the new Gotek's board looks like this:

I hope that this information will help you to successfully flash your Gotek with the FlashFloppy firmware and to install an OLED screen into the device. If you like FlashFloppy firmware, send a few bucks to the developer - I am sure that he will appreciate it. :)

Login sesión o register para postear comentarios

Por jltursan

Prophet (2502)

Imagen del jltursan

17-04-2021, 09:57

Many thanks for sharing all this info!

Por javiermi

Expert (124)

Imagen del javiermi

17-04-2021, 10:12

Thanks Alexei
I'm about to get a new Gotek, so let's see if I can follow your instructions...

Por Alexey

Guardian (3092)

Imagen del Alexey

17-04-2021, 17:43

Please doublecheck that you can flash it without the jumper for the first time. It somehow worked for me.

UPDATE: The jumper is required to flash the Gotek even for the first time. The documentation has been updated.

Por bened7

Supporter (2)

Imagen del bened7

26-04-2021, 01:00

Hey Alexey,

I have a gotek that I'm trying to attach to an older milling machine (with a DOS PC based control). I was having problems right out of the box getting the machine to recognize the drive. Turns out my youth/inexperience got the better of me and i never told the BIOS there was a floppy drive installed after having to replace the CMOS battery. oops.

while fighting that issue, I installed flash floppy on the gotek. of course, it has the new AT chip in it. the firmware install when well(at least the software said it was successful), my issue is that now I don't have any display on the gotek. the display is just black.

could you (or anyone here) point me in what direction I should look to fix the display issue. its just the standard 7 segment.

Thanks,
Ben

Por Alexey

Guardian (3092)

Imagen del Alexey

26-04-2021, 01:17

If you don't have "F-F" on the display, then the firmware upload failed. Please bridge the Boot jumper again and try to upload the firmware v3.24 again. If it still fails, open the case and make a picture of the internals. This could be yet another version of the board.

Por bened7

Supporter (2)

Imagen del bened7

26-04-2021, 18:32

Thanks for the quick reply! I really do appreciate it.

I was confident the upload was successful, I had already opened the case and confirmed the MCU, so I played with it quite a bit yesterday. Here's what I found:

I had attached a longer wire to both the display output and the buttons on the board to mount both remotely (I know, key information...) This was done to improve usability in this application since the location of the floppy drive and the machine control panel are fairly distant. With the original firmware, the display functioned correctly, even with the extended cable.

The last thing I tried yesterday was to undo the whole remote installation and directly attach the 7-seg display back on the gotek. SUCCESS! the upload had been successful, everything seems to be working as intended. I see "F-F" on startup and then the indexed nav mode displays the img on the flash drive. i2c + long cable.... not a good combo.

I have an OLED display coming today as well as one of these: https://www.adafruit.com/product/4756
If that doesn't work then ill simply re-install the display at the back of the machine and deal with it.

if your interested ill report back with how that i2c extender works.

Por javiermi

Expert (124)

Imagen del javiermi

26-04-2021, 20:27

I made the mistake to buy the "wrong" type of GOTEK, a "FDD-UDD U144K" unit, which has a completely different layout ,
even to the "Artery" model that Alexei documented in this thread. But was able to programm it with the floppy flash firmware , following the instructions of user "claaaaay" on https://www.msx.org/forum/msx-talk/hardware/goteks-with-new-... thread:
You can flash it the classic TTL way in Windows, you just need to solder 2 wires to the STM32 IC.

Provide 5v and GND to the power connector.
Solder wires between STM32 pins and TXD/RXD on TTL adapter. The 6th pin from the end goes to TXD and the 7th pin from the end goes to RDX.
Connect 3.3v (48 on JTAG) to the side of R6 closest to the front of the board (away from floppy/power connector) before powering up board. If 000 is displayed try again. When successful nothing will be shown on display and it's ready to connect and you can disconnect wire from R6.
Connect and flash as normal with STM32 Flash Loader Demonstrator. "remove protection" wasn't required.

It is simple, but requires some soldering skills ( and very steady hands, as the wires are very... tiny)
I also was able to replace the default LED display with a small OLED one , as detailed on https://github.com/keirf/FlashFloppy/issues/456
All in all I'm happy with the results

Por Palver

Expert (76)

Imagen del Palver

27-04-2021, 19:31

Thank you for the great tutorial, got my Gotek working Smile

Por Aleq

Supporter (1)

Imagen del Aleq

23-05-2021, 22:59

Hi Alexey,
thank you very much for the guide. It worked like a charm. It was a real life-saver.
I see the news as a mixed bag. Downsides - need special cable (I was lucky I had microUSB(F) to USB-A(M), this together with standard USB-A to microUSB cable resulted in needed that USB-A(M) - USB-A(M). On the other hand, you don't need USB-TTL - just the cable and you are good to go.
The other downsides are the memory (not sure yet if it will impact my usecase) and the need to solder the headers for rotary encoder...