Ralim / IronOS

Open Source Soldering Iron firmware
https://ralim.github.io/IronOS/
GNU General Public License v3.0
7.27k stars 722 forks source link

USB-C? #24

Closed daling closed 1 year ago

daling commented 7 years ago

Hey, a few weeks ago I got a pretty awesome idea: would it be possible to hack this iron into having USB-C PD input?

The USB-C specs allows for 3A at 20V, or even 5A. This would mean that it would be able to power the iron from like any common available charger. Sadly I don't have the knowledge nor the skills to pull this off .

Wouldn't that be pretty awesome? :D

I did some research and fount out that the STM32F0 devices can be used for USB-C PD. The STM32 in this TS100 is a STM32F1 and seems currently not supported. But my knowledge about STM32's and USB PD is very limited, maybe someone out there is able to tell us more.

joric commented 7 years ago

USB-C QC is not that intelligent. It simply reacts to data lines voltage:

D+ D- VCC
0.6V GND 5V
3.3V 0.6V 9V
0.6V 0.6V 12V
3.3V 3.3V 20V

USB-C PD

See Qualcomm Quick Charge 2.0 protocol specification and support.

So 20 volts is actually very simple to get, except there are very few Class B (20v capable) devices on the market, most of them are 12v max. If you feed both data lines +3.3v, the power source will switch to the maximal voltage it's capable of.

Sadly USB Type-C is much larger than microusb and probably won't fit inside.

For starters you can get power from the QC-capable device using Quick Charge Adapter.

It actually works:

QC2.0 Quick Charge Adapter

QC2.0 Quick Charge Adapter

QC2.0 Quick Charge Adapter

daling commented 7 years ago

Wow, I expected it to be a lot less simple.

So if I understand this Quick Charge Adapter correctly, the only thing it is doing is giving different voltages over the data lines. That's something the STM32 should be able to do as well.

I can see that the USB-C connector is too big, but we can make USB-C to DC5525 + MicroUSB adapter cables. Or MicroUSB to DC5525 + MicroUSB for QC3.0 devices.

Here's my actual feature request: Add a mode where it sends max. voltage (3.3) over D+ and D- on the MicroUSB connector.

Ralim commented 7 years ago

Hi, You are talking about two different things here: QC2.0 chargers and USB-C. QC2.0 uses the data pins to signal higher voltages by looking at what value is present on the data pins. USB-C requires the device to identify itself and actually ask for the higher voltages. Working with QC2.0 chargers can be done entirely without the microcontroller using any of the available intermediate boards or by setting up a voltage regulator and resistors inline to the unit (since you would need to make a custom power cable anyway).

USB-C is completely out of the question for the STM32f1 inside to implement as the pins are just not routed in a way to make it easy to do. It would be far easier to use an external module to perform the negotiation to ask the power adapter to supply the max voltage. This could be done in a similar fashion to this article.

perillamint commented 7 years ago

Someone did it using Hakko handle and custom controller board.

http://hackaday.com/2017/02/24/60-watt-usb-soldering-iron-does-it-with-type-c/

I think this setup also works for TS100 iron.

Ralim commented 7 years ago

I think @perillamint is on the right track. Using an external converter board that also houses the USB-C connector would make the most sense given the already compact design of the ts100 iron. Would also allow you to power other devices with the same converter board.

gordio commented 7 years ago

@Ralim a small improvement (board with QC USB) and USB-C connectors :-D

Ralim commented 7 years ago

I'm currently a little bit too busy to design a dedicated pcb at this point in time. But ill come back to this when im less busy to see where the market is at for this kind of option :)

qoobaa commented 7 years ago

I was looking for the simplest way to power TS-100 or charge my laptop out of a USB PD enabled charger, and I've just stumbled upon this guy: https://www.aliexpress.com/item/USB-PD-trap-TYPE-C-Fast-Flip-Flop-pollinpg-device-detector-trigger/32830872838.html. I've just got one and it seems to work flawlessly.

joric commented 6 years ago

@qoobaa yeah cool but one I was referring to (and already posted a link above) costs just $3 (well, $4 with shipping), not $13. Just for clarity, longer link without a caption: https://www.aliexpress.com/item/1PCS-QC2-0-qc3-0-Tester-Automatically-Detects-Phone-Quick-Charge-Voltage-Meter-Simulator-Trigger-9V/32771660912.html

qoobaa commented 6 years ago

@joric I bought this one too, but it's not USB-C PD.

joric commented 6 years ago

@qoobaa ah ok it's quickcharge. Different standards.

RRAlex commented 6 years ago

It'd be nice if there was a simple USB-C PD (20V) -> 5.5mm dongle adapter. There are some batteries now that support 30W output, which is probably enough for many jobs?

gordio commented 6 years ago

It will be nice to put this port in TS100 - USB-C Port, and use Power Bank like this (12V/1.5A) - Tronsmart-Presto USB-C P.S. MA5887? Datasheet

clowrey commented 6 years ago

I would love to see USB C implementation directly on the next TS 100 - it is the elegant solution. Data + power all in one and many new laptops support this connector.

Ralim commented 6 years ago

The next generation (TS200) will use Quick Charge 2.0 over USB-C. Sadly it looks to be limited in power to a low power (~20W). Specs haven't been confirmed just yet though. Just looking at marketing material.

I'm personally going to stick to the TS100 for now. But will update here if I hear any more information.

JohnEdwa commented 6 years ago

Why use QC2 (which has a maximum output of 20W), when USB-PD could provide all the way up to a 100W. Guess they just thought there are more QC2 compatible chargers around?

I couldn't find any info on the T200, mind providing a link? I'd be interested to see what they've come up with.

Ralim commented 6 years ago

Im guessing so? Havent really heard the reasoning, but 20W is just too little power for most things if you ask me. PD would be much nicer.

I dont have any links online im afraid :(

Adrian-at-CrimsonAzure commented 6 years ago

@qoobaa Does that Ali board automatically try to pull the max voltage from USB-PD devices? I'm thinking about getting one and a DC5525 to make my own USB C adapter. Does it also pass data through the 4 through-holes on the board as well?

qoobaa commented 6 years ago

@Adrian-at-CrimsonAuzre it does not. It requires to push the button several times after connecting, sometimes it doesn't allow to choose the highest profile (randomly). I gave it up and ordered PD Buddy from Tindie - it works perfectly, but it's quite pricey compared to the Ali board. No idea about passing the data lines (I'd bet it does not pass anything).

Adrian-at-CrimsonAzure commented 6 years ago

Might end up getting one of those or making my own. If I can cram the circuitry into a small enough board I'd probably replace the 5.5mm plug with a daughter board.

alexnif007 commented 6 years ago

@Ralim IMHO, whatever the name of the technology is (PD or Quick Charge 2.0-3.0), everyone here wish to get possibility to make some smart battery pack, supporting higher voltage and currencies to output at least 12V with adding minimal additional external hardware for TS100. Not adding USB-Type C (it is useless, and will not give a required result). Here a man did something same with a few lines of code for ATTiny85: http://blog.rnix.de/12v-from-a-usb-powerbank/ The question is: Is it possible to add a few lines in the firmware of TS100, so, that it will be capable of giving corresponding signals through it's microUSB, for instance, selecting some menuitem or just with a press of a key, like it is described in the link, given before? Or not?

JohnEdwa commented 6 years ago

@alexnif007 You need the resistors in the datalines to be able to pull them to 3.3V for the QC identification (which I'm pretty sure the TS100 lacks), so you would at the least need to make a special cable for it.

Doing the USB-PD thing with a 5.5mm jack in the end would be much better, as it can actually provide enough power to do stuff. QC is limited to 20W absolute max, because the micro-usb connector can't handle much more.

Ralim commented 6 years ago

@alexnif007 I wouldn't recommend anyone designing for QC 2/3 as its being strongly pushed out in favour of USB-PD which is available on USB-C. As well as USB-PD supporting higher voltages and higher power.

However all of these require some form of negotiation, either resistors(QC) or active messages(USB-PD). For all of these you are going to need to make up a special cable of some kind to :

  1. Connect the power output through to the barrel jack (you cannot supply heater from USB)
  2. Interface to the standard using resistors / communications
  3. Adapt to plug in the case of USB-PD

It would be possible to put some of this inside the iron, sure, but the vast majority needs to be added externally which is why most people just purchase adapters and call it done.

I would happily support someone making a USB-C to barrel jack USB-PD cable which would be awesome, but is not really something that can be done in the iron itself.

The 20W limit on QC is a joke for a soldering iron that is going to be used for anything large. 20W is workable for low powered use (small assembly), but as soon as you try and solder a larger connection you really want the higher power available in USB-PD.

alexnif007 commented 6 years ago

@Ralim While the months pass - still on the market I see only QC chargers, so while here discussion continues already half a year - it started 17 Jul 2017, this half year already people could use it "on the road" with the pocket battery. The TS100 itself is - not serious - it's handle getting extremely hot in a few minutes, and it has no secure stop for a hand not to slide to the heating element, so it cannot be used for something large whatsoever, but only few pinches "in the field", for which is needed portability, also of a battery, which is being in use, in this case mostly present QC on the market, if take something more powerful - TS100 losing it's main advantage - PORTABILITY, because of giantic battery, which someone has to carry to use it. For "anything large" I prefer to use butane Dremel or portasol - offering the same portability with more power on the field. Anyway, I am going to do QC bit bang with Arduino which power the TS100 using barrel, for connection of Arduino to the battery use USB. Just before didn't want another external element adding clumsines to the TS100 construction.

perillamint commented 6 years ago

IMO, for this kind of application, USB-PD is more suitable then QC2 or 3(reverse engineered recently). QC 2 or 3 only provide power up to 18 Watt, which doesn't enough for this kind of application. In contrast, some popular USB-PD adapters like Apple USB-PD power brick product line starts from 29W max power and Nintendo Switch power brick provides up to 39 W, which will definitely do its job.

alexnif007 commented 6 years ago

@perillamint If talking about usage of 110V or 220V power adapter - there's no need to make it this complicated way, you can choose any even more powerful notebook charger, even 3.75A or 4A, just select needed barrel size from wide selection of chargers for some Dell, ASUS, Acer notebooks, it will be even cheaper. Here we are talking about usage of some POCKET BATTERY!

Ralim commented 6 years ago

@perillamint I agree that QC is not worth touching, and the growing market of the usb pd is worth working towards using as it works well for portable battery supplies as well as wall adapters that are available.

What would be nice is to create an add on that decodes the usb-c pd and communicates to the iron the available power so it can scale to the available power.

I agree @alexnif007 about this being a discussion about portable batteries, but it's important to also look at the wider use case of people who use their ts100's at a desk and like to use mains power.

JohnEdwa commented 6 years ago

I use a tiny 19V @ 2.1A (40W) laptop charger, it has the perfect balance of size and power for me, and the lower power means the cable is thin and extremely flexible. Just slightly ruined by the gigantic EU plug (I've since swapped the travel adapter plug to a regular 0.5m cable), but there's not much I can do about that :)
If I really need to take it to the field, a 4S lipo works fine.

@Ralim

What would be nice is to create an add on that decodes the usb-c pd and communicates to the iron the available power so it can scale to the available power.

AFAIK implementing proper USB-PD is not easy to DIY, but there are plenty of dirt cheap manager chips one could use, like the FUSB302 (the chip is ~$0.35 in quantity). Here's a project/breakout board that can basically do what the second post QC adapter, but for USB-PD.
I guess why no-one has really done anything like this is the danger of having a regular USB port that is configured to output 20V@5A to anything you plug in it, which is why I'd much rather just skip that part and just make a device with a USB3-A plug in one end, the USB-PD chip in the middle with a switch to select between a few voltages, and a 5.5mm barrel jack in the other.

Ralim commented 6 years ago

I would only do usb-pd using an interface ic such as the one you mentioned. Your proposed is basically what I was thinking.

I think either an inline cable that provides a barrel output or a new iron entirely are the two ways we are most likely to see this.

clowrey commented 6 years ago

👍 to USB C PD built into the iron... (a new model) imagine just connecting your USB C PD adapter straight from laptop to the iron.. Ideal solution.

My phone and laptop are now USB C PD - why not my soldering iron :)

My use case is portable soldering or while traveling - for desktop use I have a nice Hakko iron that works fine already (and better handles)

moracabanas commented 6 years ago

I Bought this https://www.aliexpress.com/item/USB-PD-trap-TYPE-C-Fast-Flip-Flop-pollinpg-device-detector-trigger/32830872838.html and I can confirm that:

  1. It works with a USB-C PD 40W ZMI (Xiaomi) 20000mah powerbank just as many of you wanted.

  2. It actually switches automatically to the highest Voltage the USB-C PD can delivery. So if you plug it then it takes 20V right the way. And then, you can push the button to switch to another voltage.

I bet for the combo and It is just the best investment i couldn't be done in years.

Adrian-at-CrimsonAzure commented 6 years ago

@moracabanas I'm guessing that when you press the button, it goes to Level 1>2>3>...? I was going to make a board for this (PD Buddy is a bit bulky), but this will work perfectly.

qoobaa commented 6 years ago

I also bought that "USB PD trap". My version definitely didn't switch to the highest voltage automatically, sometimes prevented to choose the highest voltage profile manually too (possibly a bug) - so I had to disconnect it and connect it again to do so. I replaced it with PD Buddy board eventually - it works flawlessly now.

joric commented 6 years ago

@Ralim yeah there is not so much information about TS200. Are there any pics? I only got a few from the forum here https://mysku.ru/blog/china-stores/60248.html they say it's from some chinese chat. Any other source?

KarmusDK commented 6 years ago

@Ralim I bought this cable once: https://www.tabletcovers.dk/products/macbook-usb-c-til-dc-5-5-mm-forlaenger-opladerkabel-2-m-sort Is it possible to use this cable to pull 12V or more from a PSU or powerbank with QuickCharge or Power Delivery?

JohnEdwa commented 6 years ago

@KarmusDK Not really, as there are no active electronics in the cable to tell the PSU how much power it wants, and the iron has no data connections to the barrel jack (all it can do is turn it on or off through a mosfet). You connect it to a regular powerbank, and the best it should do according to the USB specs is 5V 100mA (though you most likely can get as much current as it can offer)

But if you get a device to output enough power out of a USB-C port without active communication from the iron (like using one of the QC or USB-PD spoofing boards discussed in this thread), then sure.

KarmusDK commented 6 years ago

@JohnEdwa Thanks for replying so fast. I looked a bit into different trigger boards, although they all seem to have the same connector standards: USB-A and USB-A or USB-A and none (holes for wire soldering). However, I stumbled across this advanced measuring tool. It seems to have trigger functions as well, and even a USB-C OUT port. Does anyone have experience with this module? It would be expensive to buy, just to find out that it cannot be applied to my instance.

Ralim commented 6 years ago

@KarmusDK I don't think that module will do what you want I'm afraid.

I have the @ReclaimerLabs breakout board on my desk to play with. It combined with a microcontroller would do what you want, but stand alone it wouldnt really do much else. @ReclaimerLabs does make a nice board that has a microcontroller combined with it that could be programmed to automatically request the max available and that would do what you wanted. But still a pricy option :/

KarmusDK commented 6 years ago

It works! The module has options to choose from and apparently is able to manipulate both QC2.0, QC3.0, USB PD and various other protocols. I succeeded in running a UDOO X86 Ultra-microcomputer off a QuickCharge-capable (unsure about Power Delivery though, but apparently it's a feature) power bank with both USB-A and USB-C outputs with the 12V/3A profile on a 2.1mm/5.5mm DC barrel jack. I have yet to test it with the TS-100 and its 2.5mm/5.5mm, but since this is also an analog device, I expect a great possibility of instant success.

20180428_005101

Adrian-at-CrimsonAzure commented 6 years ago

So I bought https://www.aliexpress.com/item/USB-PD-trap-TYPE-C-Fast-Flip-Flop-pollinpg-device-detector-trigger/32830872838.html and it will not select the highest profile. It will also jump down to 5V after a few minutes of use, turning off the iron.

KarmusDK commented 6 years ago

The TS-100 soldering iron works with a USB-C to DC 2.5mm/5.5mm plug and the Power-Z KM-001 module's on either QC (QuickCharge) or USB PD (Power Delivery) test functionality. It heats up quite fast on 20V.

20180505_184111

20180505_184941

It is absolutely crucial to have a portable soldering iron with an attached battery bank if you're a technician on the go, but be sure to buy one with an immense capacity - alternatively you can go for a gas-powered iron.

RRAlex commented 6 years ago

Great work, thanks for confirming this!

Where did you find the USB to DC adapter?

KarmusDK commented 6 years ago

Great work, thanks for confirming this!

Where did you find the USB to DC adapter?

https://www.tabletcovers.dk/products/macbook-usb-c-til-dc-5-5-mm-forlaenger-opladerkabel-2-m-sort

RRAlex commented 6 years ago

Not quite USB-C, but for the record if you are into FPV drones and have spare (4S?) batteries with XT60 connectors, you could try this cheap adapter.

Adrian-at-CrimsonAzure commented 6 years ago

I actually bought this adapter and modified it to use with the PD Buddy. It's a really nice and flexible silicone lead.

On Sun, May 27, 2018, 12:57 PM Alexandre Guédon notifications@github.com wrote:

Not quite USB-C, but for the record if you are into FPV drones and have spare (4S?) batteries with XT60 connectors, you could try this cheap adapter https://www.banggood.com/XT60-Male-Bullet-Connector-to-Male-DC-DC5525-Power-Cable-for-TS100-Electronic-Soldering-Iron-p-1219960.html .

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Ralim/ts100/issues/24#issuecomment-392347198, or mute the thread https://github.com/notifications/unsubscribe-auth/ABo8pZpICWv-ZkFHIo9YGvSb49IlL6LFks5t2trggaJpZM4OXeqj .

joric commented 6 years ago

TS80 is selling now on banggood and aliexpress for $72.99.

XEJK commented 6 years ago

Shame it isn't USB PD compatible but Qc 3.0 instead.

On 4 Aug 2018, at 18:43, joric notifications@github.com<mailto:notifications@github.com> wrote:

TS80 is selling now on banggood and aliexpress for $72.99.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/Ralim/ts100/issues/24#issuecomment-410461994, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AEebjNtg6vUGk_SryOvizT6Uuobb596Hks5uNc8qgaJpZM4OXeqj.

joric commented 6 years ago

@xavkno yep. Doesn't power on with 65W laptop PD adapter (CDQ07ZM) https://youtu.be/xc-yIq0m54o

Regarding TS100 and Type-C it's probably possible to fit a $0.19 16pin Type-C connector like this one used in TS80, but the footprint is totally incompatible, probably would need a flex cable or a riser board.

https://www.aliexpress.com/item/YuXi-USB-3-1-Type-C-16pin-female-connector-For-Mobile-Phone-Charging-port-Charging-Socket/32840308311.html

Adrian-at-CrimsonAzure commented 6 years ago

The PD buddy and one of these from wherever you choose to get it is the best option if you want USB C. It's all but guaranteed to work, and it's easy to solder together and setup.

Adrian-at-CrimsonAzure commented 6 years ago

You chop the battery end off the connector and solder it to the USB C board. Then configure the board to request the max power from the USB C source