Recently I bought an USBasp, or at least that’s what I thought. I bought a clone that was advertised as “USB ISP USBasp USBisp Programmer for 51 ATMEL AVR download support Win 7 64 (RANDOM COLOR)”, marked on the case as “USB ISP version 2.0” and “MX-USBISP-V5.00” on the PCB.
I intend to use this as a TPI programmer for attiny10, so I need the USBasp firmware that supports this. But it turned out not to be compatible… Unless the hardware is modified 🙂 . (So that’t what I did)
On the case it is labelled USB ISP version 2.0. On the PCB MX-USBISP-V5.00.
Upgrading the firmware is easy. Connect the 10pin connector to another programmers 10 pin Atmel ISP connector, put a jumper wire on the USBasp “update jumper” (Labelled “UP” in above picture), power the “usbasp-clone”, and load the new firmware using the other programmer. Plenty tutorials for that at various places on the web.
However… Before I updated the firmware, the USBasp was seen by my computer, as an “Atmel Incorporated”. After the update, it did not connect any more. It did not show with “lsusb”, and nothing in “dmesg” either. So, after the update, it does not work any more. I broke it. Let’s see if I can fix it too.
Turns out, the USBisp v2 I bought has a slightly different schematic. Among other differences, there is a 0R resistor on the board that connects one of the USB lines to another MCU pin (PD3). PD3 is unconnected in the original schematic. After removing this resistor, it worked again and connected to my PC as a “Van Ooijen Technische Informatica shared ID for use with libusb”, and it is usable with AVRdude as an USBasp (I tested reading an attiny10’s flash, and it worked).
Before that, I tried other modifications that might be needed also, but that by themselves had no effect. The other differences where that my board had a 1k8 pull-up on the USB D- line (R3 in original schematic), and R1/R2 where 100 Ohms instead of 68. So I replaced those resistors with the original values, just in case, but I think it would have worked with 1k8 / 100R.
Also I cut the trace from PD6 to one of the LED pins, as that connection is also not in the original schematic. And while I was at it, I added a decoupling cap on a vacant spot on the PCB and soldered the mechanical pins on the USB connector.
After all these modifications, it looks like this:
Modified USBispZoom in to see the red dots marking changed components and the red line indicating the trace I cut.
So now, I have a TPI programmer for my Attiny10’s. And if you bought the same or a similar enough USBisp or USBasp and ran into the same issue putting USBasp firmware on it, now you know how to fix it 🙂 (See first picture for PCB & case markings).
Dit is een ietwat stream-of-consiousness (Maar dan leesbaarder (hoop ik)) blogpost over een… Ledlamp! Enjoy!
Sencys SCL C35C 5393181
Ik ergerde me er aan dat mijn sencys™ filament kaarslamp knipperde. Vanaf dat ‘ie nieuw was zat er een 100Hz flikkering in het licht, wat te zien is als “stroboscopisch effect” bij alles wat beweegt in het licht van zo’n lamp. Met je handen wapperen geeft hetzelfde “10-vingers-per-hand” effect als dat het bij oude beeldbuimonitoren gaf. (Jaja, dat heeft opa nog meegemaakt kinders!)
Dus dan maar uit elkaar gehaald om te zien of daar wat aan te doen is. Zit er überhaupt wel afvlakking in het ding? (Voor wie het exacte typenummer wil: SCL C35C 5393181. Ik beveel ‘m niet aan, vanwege dat irritante geknipper.)
Aangezien de “lampenlijm” niet loslaat, heb ik de zaag in de rand van de fitting gezet. Dat werkt, maar is een lastig omkeerbare vorm van demontage.
de zaag er in
(hoewel een ledlamp niet heet wordt, is toch dezelfde lijmsoort toegepast als bij gloeilampen. En die laat alleen los, als je het juist niet wilt, b.v. als je een lamp indraait. Op andere momenten hecht het uitstekend en is het bovendien hittebestendig en watervast.)
In de fotogalerij hieronder is elke stap van demontage te zien, en ook “remontage” en het schema. (Klik op de foto voor groter, “hoover” om het onderschrift te lezen).
Op de eerste foto is ook te zien, dat in de filamenten aan 1 kant een klein gaatje zit als polariteitsaanduiding. Deze kant is verbonden met de + van de afvlakcondensator, dus het is de anode.
Sencys SCL C35C 5393181
de zaag er in
open
maar zit nog in plastic
maar zit nog in plastic, dichterbij
dat plastic kan er af
dan is de electronica te zien
2.2uF afvlakelco, lamp knippert nog dus dit is te klein
Krimpkous om plastic te vervangen
lamp weer dicht maken
puntje van aandacht
het metaaltje onderin
niet vergeten terug te zetten
Of de hele boel weer uit elkaar
om het schema op te tekenen
De elektronica zit in kunststof. Veel elektronica is het trouwens niet, zie het schema op de laatste foto. Het is hetzelfde als veel andere goedkope ledlampen, alleen de 4.7 nF rechtstreeks over de gelijkrichter heb ik niet eerder gezien. Ook niet in de documentatie van anderen. (Al heb ik niet álle filmpjes van bigclive bekeken. Blijkbaar hebben sommige mensen het demonteren van ledlampen als hobby ?!?!?…. Zegt degene die een uitgebreide en gedetailleerde blogpost schrijft over het demonteren van een ledlamp 😉 )
De afvlakelco is 2.2uF, blijkbaar is dat te weinig om het stroboscopisch effect tegen te gaan. Er is in theorie plek voor een grotere elco (zowel capaciteit als afmetingen), maar zonder de lamp helemaal te demonteren kun je er niet bij om te vervangen, en de lamp daarna weer in elkaar zetten is “nogal een uitdaging”.
Als ander voorbeeld van een andere goedkope ledlamp met dit schema (maar zonder de 4.7 nF): VT-7126 ledspotjes gebruiken ook 2.2uF als afvlakking, maar die kunnen worden geopend op een manier dat ze ook weer heelhuids dicht kunnen, en met 10uF knipperen ze niet meer. (Die raad ik dus ook niet aan, tenzij je geen last hebt van stroboscopisch effect, of houd van het zelf modificeren van ledlampen.)
Zonder de lamp verder te demonteren is het wel gelukt het afgezaagde stuk weer vast te solderen, waarbij de elco opnieuw in kunststof is ingepakt (krimpkous).
De lamp werkt daarna weer net zo goed (of slecht) als eerst, maar omdat het er niet netjes uit ziet, niet stevig is én ik eigenlijk de filamenten anders wil aansturen, heb ik alsnog de hele lamp weer uit elkaar gehaald en het schema opgetekend. (En de lamp vervangen door een ander type waarbij ik minder/geen last heb van geknipper).
schema. Overigens, de condensator gelabeld 47 nF is 4.7 nF
Netspanning komt via 33R en 330nF binnen bij de gelijkrichter. Secundair staan de 2u2 afvlakcondensator, een 1M bleeder, en de LED’s. Tot zover het klassieke “goedkopeledlampenschema”. Alleen de 4.7 nF rechtstreeks over de gelijkrichter aan de wisselspanningskant wijkt daar van af. Om de rol hiervan te achterhalen zou het interessant kunnen zijn het schema eens in een simulatiepakket in te voeren… Er is over nagedacht, maar wat is de achterliggende gedachte? Het is een goedkope lamp, dus als ‘ie weg kon zou ‘ie er niet zitten.
Moet ‘ie een inschakelpiek opvangen? Of stoorpieken als op dezelfde groep inductieve lasten worden uitgeschakeld? Maar op DC geredeneerd: De seriecondensator van 330nF is significant groter dan de 4.7 nF, dus als beide condensatoren opladen zal de laadspanning vooral over de 4.7 nF komen te staan, die is als eerste “vol”. De elco aan de dc-zijde van de gelijkrichter is dus ook noodzakelijk (en nuttiger) om de (inschakel)piek op te vangen. Evenals uiteraard de 33R weerstand om de piekstroom te begrenzen.
Al hoeft, uitgaande van de netfrequentie f van 50Hz (T = 20ms), en een worst-case inschakelmoment op de top van de sinus, de 4.7 nF maar lading op te nemen tot de eerstvolgende nuldoorgang, dus 5 milliseconden. De RC tijd van 33R*4.7 nF is echter slechts 0.2 microseconde. Weliswaar is daarna de condensator nog niet vol (63%), maar het is dusdanig veel te weinig dat het duidelijk is dat een verklaring in een andere richting gezocht moet worden.
Op AC zullen de 330nF en 4.7 nF zich als een spanningsdeler gedragen, waarbij de 4.7 nF alsnog de grootste spanning voor z’n rekening neemt omdat diens impedantie groter is. Zou het bedoeld zijn zodat een 330nF met een lagere maximum spanningsrating gebruikt kan worden? Wellicht wat vergezocht. Het blijft speculatie natuurlijk, op deze ceramische condensatoren staat geen opdruk waaruit de specificaties herleid kunnen worden.
Maar er is over nagedacht. Iets met EMI dan? Maar is het erg als de LED’s net wat korte piekstromen krijgen door netvervuiling? Of zouden ze zelf (door hun geknipper en niet-lineariteit) netvervuiling opleveren? Wie gedachten heeft over de 4.7 nF: laat een reactie achter! (Hoi Aart, mocht je dit lezen. Het was inderdaad jouw idee toen we erover brainstormden in de makerspace)
Wat ook netjes is, is dat secundair een 400V elco is toegepast. Die blijft dus heel, ook als de led’s stuk zouden gaan en onderbreken. Een elco met een rating nét iets hoger dan de brandspanning van de LED’s zou ook werken, maar als de led’s dan stuk gaan en daarbij onderbreken komt er een veel hogere spanning over de elco te staan. Dan kan het elektrolyt gaan koken waarna door de druk de elco openbarst. Omdat de ontwerper hier rekening mee gehouden heeft en een hogere werkspanning heeft gekozen zal dat hier dus niet gebeuren. Er is dus duidelijk wél op gelet een goede, veilige ledlamp te ontwerpen, maar desondanks knippert ‘ie. Hoe lang zou er over vergaderd zijn?
Ander terzijde: Ik vind het soms ietwat lastig een verhaal te schrijven dat zowel voor de techneut áls de niet-techneut prettig leesbaar is. Niet teveel jargon, maar ook niet te jip-en-janneke. Met wat pech dus zowel teveel jargon áls te simpel. Het is natuurlijk een blog, dus alles kan, en mijn schrijfstijl wisselt dan ook af en toe. Maar laat een reactie achter als je ondanks alles tot hier doorgelezen hebt en er toch wat over wilt zeggen :). Of als ik, ondanks de lengte van deze post, nog iets vergeten ben te vertellen wat je altijd al wilde weten over (filament) ledlampen :P.
EDIT: het is 4.7 nF, geen 47… Dat maakt de “spanningsdeler” theorie absurd en filtering waarschijnlijker.