[Reverse engineering] USB - Micro SD-kaart lezer / schrijver


@mbbneon:
Omdat de chip verhandeld wordt, dacht ik dat het kant-en-klaar van de fabriek kwam. Dus, kwestie van op PCB zetten en gaan. Maar wat je aangeeft over de mask-ROM is ook aannemelijk.

@fcapri:
Ik zou een ander USB-chipje erop kunnen solderen. Ik heb ze nog niet besteld, maar als ik ze bestel dan is de minimum afname 30 stuks...... Ik ga nog even nadenken, wat ik ga doen.
Verder bedankt voor wat je schreef over de andere pinnen. Ik zat ook te denken aan een interne pull-up bij pin 15. Wat betreft die pin 13 lijkt het veel op de constructie die ik ook toe pas bij een RST-pin van een ATMega.

Ik denk dat ik een batch GL827 ga bestellen en testen. Als dat goed verloopt, kan ik naar de volgende stap in het project. Komen ongetwijfeld ook weer vragen uit voort. Wordt dus vervolgd.

Van elk bezoek aan CO leer ik weer meer...
klein is fijn

Moderator

Eerste hit in Google images.

http://www.go-gddq.com/upload/2013-12/13121216441115.jpg

Daar moet je toch aardig wat uit kunnen halen.

Zoek bij Microchip naar de USB2240 USB to SD bridge er zijn nog veel meer types heel goed leverbaar !.

P.

Pin 14 heeft waarschijnlijk een externe pullup nodig. Die gaat naar het schakelaartje in het SD slotje. Zo kun je de kaart write protecten.

In het datasheet staat B/I, f => dat is volgens hun dus floating.
Ik zou zeggen dat het gewoon fout in het printje zit en dat het toeval is dat het werkt. Als het echt blijkt dat er toch een interne pullup in zit kun je de weerstand nog altijd weglaten.

Verder zou ik de write protect wel degelijk aansluiten. Het is erg handig als je de card kunt write protecten. Al is het maar om virussen te weren van de card of het perongelijk kapotschrijven te voorkomen.

Voor pin 15, daar zit een intere pulldown in (B/I,pd). Dus of de switch staat fout in je schema en moet naar de +3V3 of het is af fabriek al fout en is de card altijd gedetecteerd.

Henri's Law 1: De wet van behoud van ellende. Law 2: Ellende komt nooit alleen.

Pinnen hebben al interne pull-up/down, zie tabel (pu en pd)...

Arco - "Simplicity is a prerequisite for reliability" - hard en software ontwikkeling: www.arcovox.com

Pin 14 dus niet! Daar staat een 'f' achter. Die text die erachter staat is waarschijnlijk in krom Engels vertaald en dekt de functionaliteit niet helemaal.

Henri's Law 1: De wet van behoud van ellende. Law 2: Ellende komt nooit alleen.

@KIF :
Die ben ik niet tegen gekomen in mijn zoektocht. Toch goed dat je het hebt gevonden en hier post. Wanneer ik het eens nader bekijk, zie ik dat er wat dingen overeen komen, maar in het schema is te zien dat D0 met DAT1, en D1 met DAT0 is verbonden. De pull-ups die op het printje zitten, zijn niet in het Google-schema.

@IoT :
Ja, er zijn inderdaad meerdere IC's beschikbaar, maar de GL827 is voor mijn toepassing interessant : pootjes om te solderen.

@henri62 :
Goed dat je het meldde van die pull-up ! Tussen pin 11 (DVDD) en pin 14 (SD_WPZ) meet ik 220K. Daar zal wel een interne pull-up voor verantwoordelijk zijn.

Over pin 15 en GND / pin 15 en DVDD meet ik in beide gevallen iets van 8 MOhm. Meet ik omgekeerd, dan 12 MOhm. Zodra de "stick" in de USB-poort zit, staat er 3.3V op pin 15.
Vervolgens kan ik via een diode-meting ook diverse spanningsvallen zien als ik de stick niet op de USB-poort aansluit. Ik krijg het idee dat hier iets van een soort switch zit.

Ik weet voorlopig voldoende, vooral dankzij jullie informatie. Heel erg bedankt !

Van elk bezoek aan CO leer ik weer meer...

hola estoy tratando de hacer el circuito que has publicado, pero no logro hacer que funcione, podrías ayudarme?

Google translate:
Hi, I'm trying to make the circuit you've published, but I can not make it work, could you help me?

[Bericht gewijzigd door GJ_ op 16 november 2018 08:04:55 (0%)]

Arco - "Simplicity is a prerequisite for reliability" - hard en software ontwikkeling: www.arcovox.com

No problem. Here is a screenshot (PCB), designed in Eagle :

https://www.uploadarchief.net/files/download/gl827_pcb.jpg

Schematics for GL827 (clickable to get better details)
https://www.uploadarchief.net/files/download/gl827s.jpg

Van elk bezoek aan CO leer ik weer meer...

He realizado el mismo circuito de la imagen, pero no logro hacer que funcione cuando lo conecto al pc. Creo que el problema esta en el pin 13 y no logro solucionarlo.

Google translate:
I have made the same circuit of the image, but I can not make it work when I connect it to the PC. I think the problem is on pin 13 and I can not solve it.

[Bericht gewijzigd door GJ_ op 16 november 2018 08:06:19 (48%)]

Please use Google translate to convert your Spanish into English. By this, more people at this forum can understand and maybe help you.

Please check page 19 (datasheet).
For pin 13 :
External reset. It is active low. The low pulse should be 1 us width at least.

My first guess is : you maybe bridged (short cut) the 100 nF capacitor at pin 13 to Gnd or no good connection for this capacitor or the 10K pull-up resistor . Can you make a photo and share it overhere ? Just to get more details visible about your Printed CircuitBoard (PCB) ?

I've integrated this schematic for another type of board, but it works fine, whenever I connect it to USB-port.

P.S. Did you check / verify the USB-connector and cable, you use ? Just to be sure it's not a damaged cable or poorly soldered onboard USB-connector. (I have had my experiences about this issue in the past)

Van elk bezoek aan CO leer ik weer meer...

MicroSD heeft helemaal geen (fysieke) write protect zoals die bij full size SD wel er is. Bij SD kaartjes zit aan de zijkant een klein schuifje dat in het slot wel of niet een contact indrukt (net zoals de SD detect), dit is dus een puur mechanische write protect, net zoals vroeger bij diskettes.

Meep! Meep!

Wat is het doel van deze oefening eigenlijk? Ga je die microcontroller ook nog met een microcontroller lezen en schrijven, of zit hij nergens anders aan vast? Waarom neem je dan niet zo'n compleet printje als je het zelf toch nagenoeg identiek tekent in hetzelfde formaat? je

Een manager is iemand die denkt dat negen vrouwen in één maand een kind kunnen maken

Thank you very much, Oxurano, I was finally able to make it work, the problem apparently was the integrated one. Several came out defective, from the lot I bought in China.

Now I have another problem, apparently it crashes and stops working when it has been connected to the PC for a long time and it blocks my computer.

Do you know how to correct this?

I used the google translator so they can understand better

Op 16 november 2018 05:26:28 schreef oxurane:
Please use Google translate to convert your Spanish into English. By this, more people at this forum can understand and maybe help you.

Please check page 19 (datasheet).
For pin 13 :
External reset. It is active low. The low pulse should be 1 us width at least.

My first guess is : you maybe bridged (short cut) the 100 nF capacitor at pin 13 to Gnd or no good connection for this capacitor or the 10K pull-up resistor . Can you make a photo and share it overhere ? Just to get more details visible about your Printed CircuitBoard (PCB) ?

I've integrated this schematic for another type of board, but it works fine, whenever I connect it to USB-port.

P.S. Did you check / verify the USB-connector and cable, you use ? Just to be sure it's not a damaged cable or poorly soldered onboard USB-connector. (I have had my experiences about this issue in the past)

i suspect crappy replica chips from china

ik hou van werken ..., ik kan er uren naar kijken

@SparkyGSX:
Ik had het schema zo getekend om te achterhalen hoe het werkte. Zoals je kunt lezen, was ik toen aan het twijfelen vanwege diverse aansluitingen, waaronder pin 15.

Vervolgens heb ik dit ontwerp toegepast voor de bouw van een stand-alone Atmega-programmer. Ik vond het wel makkelijk om dan ook een geintegreerde USB naar Micro-SD in het apparaatje te hebben.
Ik geef grif toe, dat het een luxe-probleem is, maar verdomde handig is, als iets dergelijks in het apparaatje zelf verwerkt zit.
Misschien dat een programmeerbare microcontroller het ook wel kan aansturen, maar ik kon er geen gegevens over vinden hoe dat in z'n werk zou gaan.

@Matews20182 :
Good to see you use Google-translate !

Concerning the next problem which occurs, I fully support the suggestion by fcapri : if you noticed some ICs you bought in a batch malfunction,... don't be suprised more are not working correct.

However, how did you manufacture your PCB ? Did you create and developed it yourself, or did you design it and got it manufactured at a PCB-factory ?
If you did it all yourself, please check your PCB for miniscule short-cuts. When etching, this may occur.

Also, re-check each solder-joint at your board. It happened to me also, especially when soldering mini USB-B sockets. Pins are small, and are difficult to reach. A hint : use solderflux, added to the pins at the connector and the solderpads at the PCB. You won't be the first person who -by mistake- connected 2 adjecent pins together by a tiny solderblob. Always verify such joints by a multimeter.

Maybe, it's time to show a picture of the module you created. By this, you offer people the option to check it also for you. If you designed an alternative circuit around it, and are afraid sharing a bright idea, just take a shot at the USB to Micro-SD converter GL827L.
Trust me, we love to see pictures. Not to steal bright ideas but to improve the support for you.

Van elk bezoek aan CO leer ik weer meer...

Hello everyone, my name is Mateo and I'm from Colombia. First I tell them that I installed the circuit in my project and trusting in the work done, I sent the plates to China (PCBWAY). I did the welding process and the problems appeared (it did not work), then I installed the micro USB reader circuit on a test board and it is precisely where I am working. (photos attached). The only modification has been to add a second LED to know when the device turns on (Pin 27) and change the resistors of both LEDs to 330 ohms

What I try to do is read the data registered by arduino in a microsd, directly from the PC without having to extract the card from the project.

Moments before writing this answer, everything worked fine, but now it does not want to work (and I have not modified anything). I think the IC ended its useful life. On the other hand, I would like to know where I can acquire the original GL827L and thus avoid so much trouble in my project.

Breadboard-setups like that usually don't work rather well with the thick-pinned headers featured on break-out boards: I destroyed quite a few breadboards pushing in those thick pins. If they do work, contact isn't very reliable.

Besides that, I see that you connected a crystal and a few timing capacitors to an IC with rather long wires. Try to get both the IC's and the caps as close to the IC as possible and don't use long wires, as this could lead to problems with timing.

Possible problem number 3: I have the same test-wires and a few have had their connection between wire and pin terminated within the black 'support'. This means there is no connection while you can't see that.

http://www.m-voorloop.nl --- Ik? Welnee! Ik zit nog lang niet achter de germaniums.

Thank you very much for your comments, I also had the doubt that the problem was due to all the cables that should be used on the test board.

I can not understand the problem # 3 that you pose, what do you mean?

I mean the wires with pins attached to them to make inserting them into a breadboard easy.
Inside the black plastic cover, where the wire goes from wire to pin, the wire is soldered to the pin.
But I've had a few where the solder connection inside failed, making no contact anymore.
With the black plastic cover around it, you can't see that there's an open connection inside, so you can spent ages looking for the problem.

Check the cables with a multimeter for continuity if all else mentioned isn't the problem.

http://www.m-voorloop.nl --- Ik? Welnee! Ik zit nog lang niet achter de germaniums.

I tested the continuity of the cables and placed the 12 MHz closest to the IC. What I can see is that the Pin2 (output voltage for microsd) is 1.38 volts and not 3.3V as it should be.

I do not know what could cause this, but when I put Pin13 in GND directly in the form of a pulse (connect and disconnect), the integrated one starts working immediately.

I give up, I have done everything, even pass the circuit of the test plate to a universal and welds all the components and does not work.

Oxurano Could you share the file in the circuit eagle and the plate? and maybe tell me where I can get the original Gl827l

In the past, I've bought a batch of 30 pcs at AliExpress. I just checked the seller, but (s)he doesn't offer them anymore.

The Eagle-files are attached to this message. However, I wonder if it will solve your problem. Next, keep in mind the following if you plan to manufacture this board :

1) USB-connector
2) X-Tal
3) Micro-SD socket

Concerning these 3 items, it's important to replace them by the ones you buy for your design.

Van elk bezoek aan CO leer ik weer meer...

Alternatively, you could take a microcontroller with USB and SPI support, preferably a reasonably large one like a STM32F4 with affordable development boards and an example implementation of an SD card as USB mass storage. You'll need a microcontroller anyway if you want to do anything else with the SD card.

Een manager is iemand die denkt dat negen vrouwen in één maand een kind kunnen maken