Discussion:
CH375 - USB flash drive controller with 8bit interface
(too old to reply)
STYNX
2015-08-21 23:21:48 UTC
Permalink
CH375 - USB flash drive controller with 8bit interface
http://www.8bit.8u.cz/Files/CH375/CH375DS1.pdf
wch.cn

I have seen references to the CH375 in several forums and only recently realized that the chip is actually available in larger quantities. When i first stumbled onto the CH372 (older version of the chip) i could not find any source for it.

It basically offers direct access to a USB flash drive over an 8080 type 8bit bus (CS,RD,WR,INT,A0,D0-D7). The interfacing would pretty much only need an inverter for the RD-line and maybe a 245 for the data lines in the Apple II. The interfacing of the filesystem can be done in software alone or using the most interesting feature of the newer CH376: a full FAT12,16,32 filesystem layer integrated in the chip. I think that it would be pretty interesting to use this chip as it is really cheap (<$10) and small (CH375: SOP28; CH374: DIP28).

BTW: the chip can be driven from 5V or 3.3/3V. When driven from 5V, the chip has 5V TTL IO. The 3.3V for the USB data line pairs are generated inside the chip (see data sheet).

I have emailed the company for samples (wch.cn) but have yet to receive an answer.

There are bigger versions of the controller:

CH376=USB + SD + FAT12,16,32
http://wch.cn/product/CH376.html

CH378=USB + SD + FAT12,16,32 + ?userMCU?
http://wch.cn/product/CH378.html

-Jonas
a2retro
2015-08-30 03:53:27 UTC
Permalink
Jonas, looks interesting. I would like to know if you get a respons
STYNX
2015-08-30 05:46:46 UTC
Permalink
Post by a2retro
Jonas, looks interesting. I would like to know if you get a respons
I bought 3 ch376s modules on ebay (usb + SD) for $12 each instead.
Lets see what it can do :-) ... when it arrives.
a2retro
2015-08-30 14:39:39 UTC
Permalink
I am going to buy 2 as well. Looks interesting.
STYNX
2015-08-31 17:59:12 UTC
Permalink
Post by a2retro
I am going to buy 2 as well. Looks interesting.
The interfacing is pretty similar to the uthernet ... a 8 bit latch, 2 inverters (maybe some more for good measure :-P) and you can interface that chip. The CH376s itself has timings that would allow 2mhz interfacing and would give the Apple ii series (and maybe even the III) a full programmable usb 1.1 interface with integrated FAT support.

You can use _any_ usb device... mouse, keyboard or even a WiFi/bluetooth dongle. The most interesting aspect is that the real work will be in the programming of the software/firmware. You can produce the interface card pretty cheap, but the software will be the real challenge. I suspect that a simple flash drive implementation in software can be done pretty easily but everything beyond that will require some work...

There may be some limitations since a usb hub would have to be managed in software... that means that without extensive research, there will only be one device per chip possible.

-Jonas
STYNX
2015-08-31 18:05:39 UTC
Permalink
Here are the english data sheets:

CH372 ... USB DEVICE support:
http://forum.arduino.cc/index.php?action=dlattach;topic=309070.0;attach=118923

CH376 ... FAT Filesystem support:
http://www.mpja.com/download/ch376ds1.pdf

-Jonas
STYNX
2015-08-31 18:21:22 UTC
Permalink
Post by STYNX
http://forum.arduino.cc/index.php?action=dlattach;topic=309070.0;attach=118923
http://www.mpja.com/download/ch376ds1.pdf
-Jonas
After i thought a bit about the interfacing, i come to the conclusion that even an inverter might not be needed since the RD signal does not matter when #WR is low (see data sheet page 20)... you just have to pull #RD down. Maybe direct interfacing is possible without a latch as well?! An Apple II card would be extremely easy to make. The reset-in line is another 'problem' as it seems to be high active.
a2retro
2015-08-31 20:32:27 UTC
Permalink
I was discussing this device with Oliver Schmidt and he pointed out that sector mode is not supported for SD devices only USB. Not a show stopper but something to be aware of.
STYNX
2015-09-06 05:12:21 UTC
Permalink
Post by a2retro
I was discussing this device with Oliver Schmidt and he pointed out that sector mode is not supported for SD devices only USB. Not a show stopper but something to be aware of.
Yes i have read that as well... but i don't really think that this will hinder any development of the 'usual' functions that are wanted in a retro computer.

And thinking of universal solutions: the interfacing scheme of the CH37X is the same as most yamaha (FM) sound chips as well as most 'small scale' LCD controllers. It might be interesting to build a base-board that connects to a universal 8080-bus style connector. If you look in other retro communities, there is be the Commodore "clockport" available, that might come close to these requirements.

Loading Image...

The clock port is used on several Amiga and C64 components (mostly but not only from Inividual Computers). Over the years there have been several developments for this connection like: sound cards, ethernet, usb and so on...
It might be interesting to look deeper into interchangeability of components between platforms. This would make a lot of sense from a salesman-perspective. Maybe it is even possible to have a collaboration with other companies (that produce commodore stuff)!?

The hardware side is child play but anything beyond will need a skilled programmer and a lot of time. Offering a hardware expansion without direct use is somewhat "problematic". The only problem now is to find a skilled Apple II programmer(s) who is willing to do this AND has a lot of time to spare ;-)

-Jonas
STYNX
2015-09-06 06:06:36 UTC
Permalink
Post by STYNX
Post by a2retro
I was discussing this device with Oliver Schmidt and he pointed out that sector mode is not supported for SD devices only USB. Not a show stopper but something to be aware of.
Yes i have read that as well... but i don't really think that this will hinder any development of the 'usual' functions that are wanted in a retro computer.
And thinking of universal solutions: the interfacing scheme of the CH37X is the same as most yamaha (FM) sound chips as well as most 'small scale' LCD controllers. It might be interesting to build a base-board that connects to a universal 8080-bus style connector. If you look in other retro communities, there is be the Commodore "clockport" available, that might come close to these requirements.
http://lallafa.de/blog/wp-content/uploads/2013/09/tc-cp-pinout.png
The clock port is used on several Amiga and C64 components (mostly but not only from Inividual Computers). Over the years there have been several developments for this connection like: sound cards, ethernet, usb and so on...
It might be interesting to look deeper into interchangeability of components between platforms. This would make a lot of sense from a salesman-perspective. Maybe it is even possible to have a collaboration with other companies (that produce commodore stuff)!?
The hardware side is child play but anything beyond will need a skilled programmer and a lot of time. Offering a hardware expansion without direct use is somewhat "problematic". The only problem now is to find a skilled Apple II programmer(s) who is willing to do this AND has a lot of time to spare ;-)
-Jonas
Some more info on the 'clockport':
http://www.ianstedman.co.uk/Amiga/designs/serial_card/design_notes/design_notes.html

The clockport seems to have timings that would allow somewhat about 1 mbyte/s of throughput. I suspect that that's one reason why even some C64 expansions have a clockport.

-Jonas
a2retro
2015-10-08 02:01:35 UTC
Permalink
Post by STYNX
CH375 - USB flash drive controller with 8bit interface
http://www.8bit.8u.cz/Files/CH375/CH375DS1.pdf
wch.cn
I have seen references to the CH375 in several forums and only recently realized that the chip is actually available in larger quantities. When i first stumbled onto the CH372 (older version of the chip) i could not find any source for it.
It basically offers direct access to a USB flash drive over an 8080 type 8bit bus (CS,RD,WR,INT,A0,D0-D7). The interfacing would pretty much only need an inverter for the RD-line and maybe a 245 for the data lines in the Apple II. The interfacing of the filesystem can be done in software alone or using the most interesting feature of the newer CH376: a full FAT12,16,32 filesystem layer integrated in the chip. I think that it would be pretty interesting to use this chip as it is really cheap (<$10) and small (CH375: SOP28; CH374: DIP28).
BTW: the chip can be driven from 5V or 3.3/3V. When driven from 5V, the chip has 5V TTL IO. The 3.3V for the USB data line pairs are generated inside the chip (see data sheet).
I have emailed the company for samples (wch.cn) but have yet to receive an answer.
CH376=USB + SD + FAT12,16,32
http://wch.cn/product/CH376.html
CH378=USB + SD + FAT12,16,32 + ?userMCU?
http://wch.cn/product/CH378.html
-Jonas
My CH376EVT's finally arrived today.
c***@gmail.com
2018-01-13 22:38:09 UTC
Permalink
I have 3 ch375 but not work can you help me
James Davis
2018-01-14 00:48:48 UTC
Permalink
Post by c***@gmail.com
I have 3 ch375 but not work can you help me
Googled it; Found this:

CH375 USB Module - ElectroDragon

http://www.electrodragon.com/product/ch375-module-reading-and-writing-u-diskusb-communicate/

Description. CH375 is a USB bus universal interface chip, supports USB-HOST Mode and USB-DEVICE/SLAVE Mode. There are 8-bit data bus and read, write, chip select ...

They have pictures of it and one is a schematic.
STYNX
2018-01-15 20:14:24 UTC
Permalink
Post by c***@gmail.com
I have 3 ch375 but not work can you help me
You can find some info about the interfacing of the CH376 here:

CPC usb interface with flash drive and mouse support:
http://pulko.mandy.pagesperso-orange.fr/shinra/albireo.shtml

MSX USB interface for flash drives (can be used with usb mouse as well)
http://rookiedrive.com/en/home/

Recent discussions about the chip here:
http://forum.6502.org/viewtopic.php?f=4&t=4140

Arduino
http://arduinobasics.blogspot.de/2015/05/ch376s-usb-readwrite-module.html
p***@gmail.com
2018-11-05 11:43:23 UTC
Permalink
Post by c***@gmail.com
I have 3 ch375 but not work can you help me
same problem i have have you got ans...???
p***@gmail.com
2018-11-05 11:44:21 UTC
Permalink
Post by STYNX
CH375 - USB flash drive controller with 8bit interface
http://www.8bit.8u.cz/Files/CH375/CH375DS1.pdf
wch.cn
I have seen references to the CH375 in several forums and only recently realized that the chip is actually available in larger quantities. When i first stumbled onto the CH372 (older version of the chip) i could not find any source for it.
It basically offers direct access to a USB flash drive over an 8080 type 8bit bus (CS,RD,WR,INT,A0,D0-D7). The interfacing would pretty much only need an inverter for the RD-line and maybe a 245 for the data lines in the Apple II. The interfacing of the filesystem can be done in software alone or using the most interesting feature of the newer CH376: a full FAT12,16,32 filesystem layer integrated in the chip. I think that it would be pretty interesting to use this chip as it is really cheap (<$10) and small (CH375: SOP28; CH374: DIP28).
BTW: the chip can be driven from 5V or 3.3/3V. When driven from 5V, the chip has 5V TTL IO. The 3.3V for the USB data line pairs are generated inside the chip (see data sheet).
I have emailed the company for samples (wch.cn) but have yet to receive an answer.
CH376=USB + SD + FAT12,16,32
http://wch.cn/product/CH376.html
CH378=USB + SD + FAT12,16,32 + ?userMCU?
http://wch.cn/product/CH378.html
-Jonas
i try to communicate with device but it shows string 5f ff which is error byte
Loading...