Thank you for your feedback! While the techniques we show apply to any IoT / embedded device (TVs, set top boxes, smart speakers, smart home appliances, cameras, enterprise firewalls, car ECU, etc) we really like showing examples on routers. This is because routers are very cheap and easy to get, share lots with common with most IoT devices. Not all routers will have UART, but in our experience 90% do. You could start with TP-Link TL-WR841N. It's quite cheap and could be a good start!
@@Jimfowler82 that's right, you could use one to that you know a target uses and see if you can make exploits to test on that same brand router? Other than that.....the router is probably in the bin for a reason? Or people just don't care and upgraded to a newer connection that the router doesn't support (because it's branded and locked to a specific network), and in that case....the best you could do is "unlock" the router to use firmware supported on other networks? You can inject features that are supported on the hardware, that are not coded into the firmware interface? You can white list and black list different services& connections as do the OEMs? You can unlock things that your current ISP doesn't want you to get access to, or access is provided through different hardware without the restriction etc? So if you see a router just like yours and you want to hack around with some things; you can do it safely without taking your household off the internet while you try fixing it? Lol
@@Jarmezrocks in the U.K. it seems quite often people change isp companies and just throw the old router away. I found one last year & connected the uart it’s an interesting process that gives you a decent understanding of how the hardware & software work.
I'm lazy so I just usually try 9600, 19200 or 115200, works 99% of the time and is faster than reversing the baud rate. Of course for an educational video showing how you can calculate the baud rate is very good. Great video !
What is the 3.3 or 5 volt of the uart for? I don't see that they use it and it comes there on the USB! If I do it on a camera as they say in the video, I don't need tftp or is that mandatory? I'm bad at this and I don't understand tftp. I damaged my camera by installing the wrong firmware but it turns on but I can't connect to it anywhere, I only see the infrared LEDs and that's it. Do you think this works with that software in the tutorial?
In 1990, I built from scratch a few micro controllers and communicated with them using a serial interface and a terminal to configure them. This video brings back old memories and makes me glad that people are using the same technique.
Wow, impressive how you tought me serial communication in 17minutes when I have had quite hard to grasp it before. Very educational approch with practical example, and problem solving. Subscribed!
Please keep doing these. I’m trying very hard to learn to do stuff like this, I literally have all the gear. But either I’m slogging through textbooks that are too boring to read, just poking around under the microscope and multimeter or with uart to usb, reading tutorials for already wide open -eg dev boards and generally struggling.
I don’t want to hack hack anything; I just would love to be able to take my old broken smart devices with generally powerful chips and Linux - I can list what I’m working on if interested- and repurpose them. For instance I have a 22 in touch screen used in advertising and ran android it no longer works. I got uart logs, I can even send commmands over uart though unreliably- usually the boot log washes it out but a Simple “ls” will output in between log lines. I don’t yet understand what to do next, boot loaders, getting it to boot My Linux. I don’t understand even a smidge of android- so that’ll have to to
It’s a rock chip rk3288 but I also have several other projects, two with ingenic JZ4775, a very important one I need to fix with a vacuum octeon plus with usb thumb drive rather than spi? And another I have three of mediatek or something. Discarded yi cameras. But I can’t get all the way there like you guys . I have 75% the skills but I neeed the last 25%
7:20 - In most cases, which pin is the ground should be readily apparent. Usually all but one of them will have small traces connected. The one that has a large, wide trace is going to be the ground. Some PCBs, however, have a certain degree of protection by making the traces less visible. On those, a multimeter with continuity would be a necessity. This board is not one of those, as you can visibly see the North pin and the 2 South pins have small traces, and the odd one out is connected to the Board Common Ground. This works for simpler PCBs. It is the more complex ones - where the ground is less obvious - where you need to use this method.
You can also use well known 'screen' command instead of 'minicom'. Screen is usually used to create background sessions but also has functionality to support configurable serial connections.
@@FlashbackTeam Thanks for reply and thanks in general for your whole impressive work. Will you be publishing anything related to HackRFOne device? And one more question - this logic analyzer is original Saleae device? Is it very expensive?
A lot of the times, the manufacturer will have vcc connected to ground on the board which is what locks hart down and makes it read only. By disconnecting them with a small tear (micro grinder works well for this so you can do repairs later) you open it up to read/write. This is not for all of them, but it is a cheap and effective way that they do, do it.
One thing to note about baud rate is that the whole number integer values are not the only values you can use. There are fractional rates that are available, depending on the CLK frequency. Look up any of the older UART ICs and you should find the info.
It takes no more than 3 minutes to try the most common settings, if none of them work then you can pull out the oscilloscope but almost always you will save the hassle
@@victornpb Also, from what I've experienced with non standard rates, if you're off by 10-20 hertz, you'll always see recognizable characters to a large extent.
You can usually be off by 1-2%. The UART peripheral will not even notice that. It depends on the sample rate of the peripheral and the number of samples it takes per symbol.
We don't need videos like this. We have degrees in electronics and already understand UARTs and communication protocols and understand how to use oscilloscopes and logic analysers.
This was interesting and informative. One small nit. I've always heard this called asynchronous serial protocol, and the UART is the hardware component that emits the protocol.
This. Saying "uart protocol" makes the hairs on the back of my neck stick up. Universal Asynchronous Receiver / Transmitter. It's hardware component, used to be a discrete chip but these days it's usually a macrocell in the CPU (or other VLSI chip) design.
You also need to take a note of the max voltage. The adapter used in this video support 5v and 3.3v and 3.3v was selected. Makse sure your adaptor support the voltage appropriate voltage level or you can fry something up.
HW dev here. You are very lucky with the devices you showed. I don't know any device, which my company developed where you can do such attacks. But nice video!
It's a nice gift to have full UART access and that happens way often as some may think. Also, consider that even if UART is disabled in production there are still ways to enable it as we have done many times, even Tx is very useful already. But if that doesn't work you just adapt your approach.
@@FlashbackTeam you are right! We develop only products or parts which are not consumer grade. For example parts of DNA sequencers etc. We have to protect your IP and that's the reason why we put a lot of effort in protecting mechanisms.
@@FlashbackTeam Some chips allow you to blow a fuze inside them to permanently cut any UART from the pins. However it is not often enough used. Which is why such attacks work relatively often.
As a beginner, this video is great! May I ask if there are any cheap IOT devices (such as cameras) that I can try to get started with? I want to use UART to complete IOT forensics, but I don't know which models of devices can be used to try.
Sort of experience. The more you work with embedded the faster you are able to identify various elements of it. Hence we have shown different types of UART interfaces in the video to emphasize on it. Normally a special connector would be needed for that interface. But if we didn't have it we would simply solder wires into it.
I'm not experienced with this but just an idea, is it possible to modify the firmware and add a backdoor to firmware and rebuild again, when upload the firmware, we have shell??
That's a trick we also commonly use :) But in many cases, this is very hard to achieve, as the firmware might be signed, encrypted, have some protection and if it goes wrong you can brick the device. This UART method should be your first approach, as it can be very quick and easy, and give you an instant root shell. If that doesn't work then you should explore alternatives like the one you described!
@@selimeneskaraduman6935 Sure, but keep in mind that even if the device's firmware is available to download and unencrypted, the device itself might only accepted signed firmware. Even if it's not signed, it expects a certain layout or checksum or something like that which might be very hard to pull off in practice. But you're thinking right, it can be done and we have done it. We might show it in a future video too!
If the router and the USB ports are powered through different source, how do you close the ground loop? Also, is the 3.3 volt logic tolerant with 5V port?
As long as you have an isolated power supply and you are not getting shocked there is no ground voltage and you can join both grounds with no problem, you can connect any 3.3v tx into a 5v rx no problem but the other way 5v tx to 3.3 needs a voltage divider, i usually use a resistor and a led for that as the led will drop the voltage to 3v and give feedback as a bonus.
Just search for any USB-to-UART adapter. They will register to your computer as a device, i.e. /dev/ttyUSB0. They have FTDI chips that is used to speak UART protocol.
"UART" is not a protocol, it's a device (here built into the processor) that provides an asynchronous serial port to a system. The easiest way to refer to it is just "serial port", or "RS-232" if you ignore that the voltage levels are wrong.
Is the protocol called UART now? I've only ever known it as RS-232. UART is short for universal asynchronous receiver/transmitter, the piece of physical hardware that handled the serial data transmission. In some of the earliest PCs, a UART was a discrete chip.
That bugged me too. "UART" is *not* the name of the protocol. :) I've always called it "asynchronous serial" or RS-232 (although the voltage levels are wrong here, of course), or in this context, simply "serial console" or "serial console port".
@@JeffCaplan313 "RS-232" is the name of the full protocol, including signaling levels, timing, stop bits, parity handling and all that, as well as the connector types (usually DB-25 or DE-9) and their pinouts. In this context, unless you want to be precise, "RS-232" actually does work as a reasonable name for the protocol even when using the wrong connectors and at 5V (TTL) or 3V signaling levels. The voltage levels are usually explicitly mentioned, and the connectors tend to be fairly unimportant in this context as long as the pinouts are documented. It's more precise than just saying "serial", since that will include I2C, SPI and other serial protocols that do not conform to RS-232 signaling.
What is the 3.3 or 5 volt of the uart for? I don't see that they use it and it comes there on the USB! If I do it on a camera as they say in the video, I don't need tftp or is that mandatory? I'm bad at this and I don't understand tftp. I damaged my camera by installing the wrong firmware but it turns on but I can't connect to it anywhere, I only see the infrared LEDs and that's it. Do you think this works with that software in the tutorial?
I’m looking to find a way to get the voltage off of a DJIFPV flight pack. It consist of six cells. The cells are tied to a BMS. It’s my understanding that there are three wires on the main battery connector one ground one TX one RX. Does that mean it’s possible to create a code to receive voltages of each individual cell?
Do you have those connectors labeled? If not, you can use multi-meter to find ground and connect logic analyzer to the remaining 2 pins and take a trace. Because it could also be used for a different protocol, for example I2C. With a logic analyzer you can apply some auto-discovery.
Yes, I have the breakdown and I did take a voltmeter to the pins. One side had a constant 3.16 V and the other side had a constant .5 V. There was no fluctuation in voltage. The total voltage of the pack was 22.6 V.
Nice video. however, I have a question. Is the start/stop bit always just one 0? If so just the bits per second define how many bits it will capture per packet so it doesn't "desynchronize"?
Thanks! Synchronization is only determined by the baud rate that sender and receiver need to set to the same value. It ensures synchronization of read and write. Start bit is always a LOW value (logical 0) and Stop bit can be 1, 1.5 or 2 bits HIGH value (logical 1) at the end of the UART frame.
I believe it depends on the idle state of the data line. Start will always be inverse of idle level and stop will be same level as idle. @@FlashbackTeam
Hi. Do you think it might be possible to interface with SIP chips like macbook WiFi ICs? Since 2020 apple uses embedded WiFi SIP with onboard SPI ROM which stores MAC and SN. The problem is that it is also bonded to CPU, so there are thousands of macs with signature damage (due to design WiFi chip dies after water damage in very high amount of cases). Unfortunately this causes the device to crash on boot and it wont work with different IC. There are UART testpoints around this IC, so I was wondering if there is a chance that such specific chip might he hacked to work on different board.
I connected the gnd and tx pads from the docsis 3.0 router to the gnd and rx pins on ttl adapter using pcbite probes but dont see anything on my laptop. I am using putty terminal. Any suggestions?
Check if pin and Tx line are connected connect. You can use continuity mode for this. Also, UART might be disabled by a fuse in that case you might be unlucky.
Hi... Thanks for the amazing video. I physically found a broken UART Port with three pins on an chinese IP camera, and one pin is 'GND' terminal for sure. I really have doubt the other two, terminals on finding which one is TX and RX. By little bit of solder on the other two terminals, I am able to read the bootloader info from Camera to my linux shell via FTDI chip. But the other way communication, i.e., hit any key to stop autoboot (as you mentioned in video @14:48) I am unable to perform. FH8626V100 is the SoC. Unable to get datasheet. I am thinking of pull up resistors also. Can you pls help?
Little late maybe? You can guess by trying RX/TX. Learned that when I stomped with a device that had the wrong pin marking, instead of saying the SoC TX and RX, it said "Here you should comnect your RX (being the SoC TX" Just takes more time, put the pins one way, try all the common baudrates, reverse and try again.
Also, the autoboot thingy, depends on the bootloader, I've seen devices that only stop booting with a specific key (I'm pointing at you, Dahua devices!) Where only the asterisk key worked. Didn't figure that myself, used to work with the brand haha.
This is exactly the information I needed to see if I can hack a android digital TV box 👍 And that means if I can get a root shell I can imagine a non-branded box via the UART and then write it back on-to my "brained perpetual subscription box" so I can get free digital TV again, perhaps? 🤔
This technique will help save IoT hardware from landing in the garbage dump before they should. Imagine if you could take an old Sonos zone player and free it from needing to communicate with Sonos, give it a web interface and let it be a DLNA or AirPlay media target or something... so many good quality products are destined to become garbage the second the manufacturer stops supporting them, or goes belly up. We’re going to need an army of hackers to save the hardware from greedy corporations that think they still own hardware they sold to us like the way China deals with real estate... I’m more seriously considering purchasing a device that has known terrible firmware that forces you to use their junk cloud service that people have developed alternate firmware for since the hardware is totally decent but requires this type of hack to flash the open source firmware onto it... not so mysterious now.
Brother I've a modem router model tenda D301 i updated it's firmware after firmware update its admin password didn't work and i also rest to default settings with reset key but its not working how can i see my password using Rx Tx method? With my pc or laptop? Solution please
I have lcd send uart data i try to decode data by usb to serial but data showing vary difficult ... how can i send to you video and contract you ...plz reply
What you should do first is identify the target chip and get your hands on any data sheets: especially those regarding the boot- or programming mode. Many chips have strap pins to tie to gnd or whatever to enter almighty programming modes.
Often the root shell is way more useful than any programming mode because the device has all the needed driver software installed. E.g. you can just run "ping" instead of writing a TCP/IP stack
Keep up the videos very awesome! For someone new to hardware hacking what cheap devices could I try my hands on that has an UART interface?
Thank you for your feedback!
While the techniques we show apply to any IoT / embedded device (TVs, set top boxes, smart speakers, smart home appliances, cameras, enterprise firewalls, car ECU, etc) we really like showing examples on routers.
This is because routers are very cheap and easy to get, share lots with common with most IoT devices.
Not all routers will have UART, but in our experience 90% do.
You could start with TP-Link TL-WR841N. It's quite cheap and could be a good start!
instablaster...
Routers. I find them all the time next to bins 🗑
@@Jimfowler82 that's right, you could use one to that you know a target uses and see if you can make exploits to test on that same brand router? Other than that.....the router is probably in the bin for a reason? Or people just don't care and upgraded to a newer connection that the router doesn't support (because it's branded and locked to a specific network), and in that case....the best you could do is "unlock" the router to use firmware supported on other networks? You can inject features that are supported on the hardware, that are not coded into the firmware interface? You can white list and black list different services& connections as do the OEMs? You can unlock things that your current ISP doesn't want you to get access to, or access is provided through different hardware without the restriction etc? So if you see a router just like yours and you want to hack around with some things; you can do it safely without taking your household off the internet while you try fixing it? Lol
@@Jarmezrocks in the U.K. it seems quite often people change isp companies and just throw the old router away. I found one last year & connected the uart it’s an interesting process that gives you a decent understanding of how the hardware & software work.
Hollywood Hacker: "I'm in the mainframe!"
Real world hacker: paperclip bridge
I had never considered before that you could take photos of both sides of the PCB and color traces in a photo editor. That's such a great idea!
I'm lazy so I just usually try 9600, 19200 or 115200, works 99% of the time and is faster than reversing the baud rate. Of course for an educational video showing how you can calculate the baud rate is very good. Great video !
In school:
You will need to learn these 10,000 different methods!
In practice:
There's like 3 ways to do it most of the time.
@@joshuamahon260 In youtube comments:
Proving you couldn't find a use for knowledge!
I bet there is a utility to auto find the baud rate. Idgaf about manually calculating transfer speeds.
What is the 3.3 or 5 volt of the uart for? I don't see that they use it and it comes there on the USB! If I do it on a camera as they say in the video, I don't need tftp or is that mandatory? I'm bad at this and I don't understand tftp. I damaged my camera by installing the wrong firmware but it turns on but I can't connect to it anywhere, I only see the infrared LEDs and that's it. Do you think this works with that software in the tutorial?
I wonder how many people here remember 9600 baud modem?!? :)
In 1990, I built from scratch a few micro controllers and communicated with them using a serial interface and a terminal to configure them. This video brings back old memories and makes me glad that people are using the same technique.
Absolutely amazing! I can totally imagine how satisfying that experience must have been. Ah, those were the days!
@@ulysses_grant
I still have them and the source code. They helped me get a good job at DEC.
I hadn't been born yet😂
If I wanted to show someone an example of what a well presented, entertaining UA-cam video looks like, I would show them this channel.
Wow, impressive how you tought me serial communication in 17minutes when I have had quite hard to grasp it before.
Very educational approch with practical example, and problem solving.
Subscribed!
Please keep doing these. I’m trying very hard to learn to do stuff like this, I literally have all the gear. But either I’m slogging through textbooks that are too boring to read, just poking around under the microscope and multimeter or with uart to usb, reading tutorials for already wide open -eg dev boards and generally struggling.
I don’t want to hack hack anything; I just would love to be able to take my old broken smart devices with generally powerful chips and Linux - I can list what I’m working on if interested- and repurpose them. For instance I have a 22 in touch screen used in advertising and ran android it no longer works. I got uart logs, I can even send commmands over uart though unreliably- usually the boot log washes it out but a
Simple “ls” will output in between log lines.
I don’t yet understand what to do next, boot loaders, getting it to boot
My Linux. I don’t understand even a smidge of android- so that’ll have to to
It’s a rock chip rk3288 but I also have several other projects, two with ingenic JZ4775, a very important one I need to fix with a vacuum octeon plus with usb thumb drive rather than spi? And another I have three of mediatek or something. Discarded yi cameras. But I can’t get all the way there like you guys . I have 75% the skills but I neeed the last 25%
This is an example of a perfect tutorial. Great pace, background info, and real-world examples. Thanks so much! Subscribed.
7:20 - In most cases, which pin is the ground should be readily apparent. Usually all but one of them will have small traces connected. The one that has a large, wide trace is going to be the ground. Some PCBs, however, have a certain degree of protection by making the traces less visible. On those, a multimeter with continuity would be a necessity. This board is not one of those, as you can visibly see the North pin and the 2 South pins have small traces, and the odd one out is connected to the Board Common Ground. This works for simpler PCBs. It is the more complex ones - where the ground is less obvious - where you need to use this method.
Sure, but... testing the connection takes just a few seconds. Turn the multimeter on, tap each of the four connections, done :D
Simply brilliant. Thank you for explaining the concept of calculating the baud rate so beautifully.
Never seen anyone teaching something so easily! Love this thank you sir
By far the best thing on the internet for hardware hacking
Thank you. We are just getting started!
This video should be what youtube is all about. GREAT WORK teaching!
Very cool video. I just got my first root shell on an old Wi-fi range extender I had lying around.
Great job! Let us know if you find any vulnerabilities!
how you login ? i mean the username password ?
You can also use well known 'screen' command instead of 'minicom'. Screen is usually used to create background sessions but also has functionality to support configurable serial connections.
Yes, screen is actually our default but wanted to use minicom in the video as it's more recognizable. Thanks for the heads up.
@@FlashbackTeam Thanks for reply and thanks in general for your whole impressive work. Will you be publishing anything related to HackRFOne device? And one more question - this logic analyzer is original Saleae device? Is it very expensive?
The teachers like you are very much needed, this is how you make make fans...❤+1
A lot of the times, the manufacturer will have vcc connected to ground on the board which is what locks hart down and makes it read only.
By disconnecting them with a small tear (micro grinder works well for this so you can do repairs later) you open it up to read/write.
This is not for all of them, but it is a cheap and effective way that they do, do it.
This is the best tutorial i have seen about usb to ttl.
Thank you so much man for the help
excellent video. well explained and visualized. keep up the good work. subscribed.
One thing to note about baud rate is that the whole number integer values are not the only values you can use. There are fractional rates that are available, depending on the CLK frequency. Look up any of the older UART ICs and you should find the info.
It takes no more than 3 minutes to try the most common settings, if none of them work then you can pull out the oscilloscope but almost always you will save the hassle
@@victornpb Also, from what I've experienced with non standard rates, if you're off by 10-20 hertz, you'll always see recognizable characters to a large extent.
You can usually be off by 1-2%. The UART peripheral will not even notice that. It depends on the sample rate of the peripheral and the number of samples it takes per symbol.
1. What logic analyzer model are you using?
2. What software for analyzing the image traces is that?
I am surprised that such a good video has less view from researchers.
We don't need videos like this. We have degrees in electronics and already understand UARTs and communication protocols and understand how to use oscilloscopes and logic analysers.
this is amazing. this is the first video of this kind that I watched and was so educational. thank you very much
Thanks for documenting this. I got a root shell on my Archer C9 back in 2016 with the same simple UART interface.
I just purchased a TPLink Archer identical to the one you have just shown in the video. That's handy to know!!!
This was interesting and informative. One small nit. I've always heard this called asynchronous serial protocol, and the UART is the hardware component that emits the protocol.
This. Saying "uart protocol" makes the hairs on the back of my neck stick up. Universal Asynchronous Receiver / Transmitter. It's hardware component, used to be a discrete chip but these days it's usually a macrocell in the CPU (or other VLSI chip) design.
Amazing step by step explanation. Thank you very very much.
You also need to take a note of the max voltage. The adapter used in this video support 5v and 3.3v and 3.3v was selected. Makse sure your adaptor support the voltage appropriate voltage level or you can fry something up.
Great tutorial. Thanks for sharing your knowledge!
Very informative video..
Love from India
i don't think ill ever use this but i learned a lot about serial. Thanks
HW dev here. You are very lucky with the devices you showed. I don't know any device, which my company developed where you can do such attacks.
But nice video!
It's a nice gift to have full UART access and that happens way often as some may think. Also, consider that even if UART is disabled in production there are still ways to enable it as we have done many times, even Tx is very useful already. But if that doesn't work you just adapt your approach.
@@FlashbackTeam you are right! We develop only products or parts which are not consumer grade. For example parts of DNA sequencers etc. We have to protect your IP and that's the reason why we put a lot of effort in protecting mechanisms.
@@FlashbackTeam Some chips allow you to blow a fuze inside them to permanently cut any UART from the pins. However it is not often enough used. Which is why such attacks work relatively often.
This is for real hackers. Awesome!
As a beginner, this video is great! May I ask if there are any cheap IOT devices (such as cameras) that I can try to get started with? I want to use UART to complete IOT forensics, but I don't know which models of devices can be used to try.
Excellent tutorial, thanks a lot for showing us this
keep up the great work!
Following a trace with digital image software is very clever.
Grazie.
Thank you for your support!
Thanks again, nice to see you pushing out more videos.
The movie finished before it even started ! 💖 it !
Where can I get that articulated arm at 6:30?
We got it from here: www.thingiverse.com/thing:2427726
Wov I am searching you very long thanks God I found at last.
Amazing explanation!
How about a JTAG video in a similar style??, I've learned quite allot from this video
At 6:40? How did you know that it is a UART interface? How do we connect to that sort of interface?
Sort of experience. The more you work with embedded the faster you are able to identify various elements of it. Hence we have shown different types of UART interfaces in the video to emphasize on it.
Normally a special connector would be needed for that interface. But if we didn't have it we would simply solder wires into it.
Thanks
Thank you for supporting our channel!
Thank you for explaining this thoroughly!
very useful video , pls post more videos like that we need more and more
Hi, how are the cables that you are using to connect to the pcb call?, I´m trying to get some, but i just cant not find them.
Thanks alot! Great video! Keep them coming, please.
I'm not experienced with this but just an idea, is it possible to modify the firmware and add a backdoor to firmware and rebuild again, when upload the firmware, we have shell??
That's a trick we also commonly use :)
But in many cases, this is very hard to achieve, as the firmware might be signed, encrypted, have some protection and if it goes wrong you can brick the device.
This UART method should be your first approach, as it can be very quick and easy, and give you an instant root shell.
If that doesn't work then you should explore alternatives like the one you described!
@@FlashbackTeam Thanks for the answer, as you said I mentioned about the devices firmware available to download and unencrypted
@@selimeneskaraduman6935 Sure, but keep in mind that even if the device's firmware is available to download and unencrypted, the device itself might only accepted signed firmware. Even if it's not signed, it expects a certain layout or checksum or something like that which might be very hard to pull off in practice.
But you're thinking right, it can be done and we have done it. We might show it in a future video too!
@@FlashbackTeam Look forward to see that :)
Valeu!
This helped me. Great work!
I aspire to be as good as you guys one day.
Vey very cool stuff, thank you for this one!!
If the router and the USB ports are powered through different source, how do you close the ground loop? Also, is the 3.3 volt logic tolerant with 5V port?
As long as you have an isolated power supply and you are not getting shocked there is no ground voltage and you can join both grounds with no problem, you can connect any 3.3v tx into a 5v rx no problem but the other way 5v tx to 3.3 needs a voltage divider, i usually use a resistor and a led for that as the led will drop the voltage to 3v and give feedback as a bonus.
great video and ofcourse great explanation.. thank you so much.
8:01 what's the name of the board? that can speak UART. great video
Just search for any USB-to-UART adapter. They will register to your computer as a device, i.e. /dev/ttyUSB0. They have FTDI chips that is used to speak UART protocol.
you can use arduino as that device by connecting the reset pin to arduino to gnd and then using its tx rx vcc and gnd pin , same as in ftdi
"UART" is not a protocol, it's a device (here built into the processor) that provides an asynchronous serial port to a system. The easiest way to refer to it is just "serial port", or "RS-232" if you ignore that the voltage levels are wrong.
Is the protocol called UART now? I've only ever known it as RS-232. UART is short for universal asynchronous receiver/transmitter, the piece of physical hardware that handled the serial data transmission. In some of the earliest PCs, a UART was a discrete chip.
That bugged me too. "UART" is *not* the name of the protocol. :) I've always called it "asynchronous serial" or RS-232 (although the voltage levels are wrong here, of course), or in this context, simply "serial console" or "serial console port".
RS-232 is the connector type for serial comms...not the same as the UART chip which processes the comms.
@@JeffCaplan313 "RS-232" is the name of the full protocol, including signaling levels, timing, stop bits, parity handling and all that, as well as the connector types (usually DB-25 or DE-9) and their pinouts. In this context, unless you want to be precise, "RS-232" actually does work as a reasonable name for the protocol even when using the wrong connectors and at 5V (TTL) or 3V signaling levels. The voltage levels are usually explicitly mentioned, and the connectors tend to be fairly unimportant in this context as long as the pinouts are documented. It's more precise than just saying "serial", since that will include I2C, SPI and other serial protocols that do not conform to RS-232 signaling.
This is great, I am trying the same with an IP camera.
My device has 8 pin header with a Kill SSD pin. Do you know what this pin could be for??
What is the model of the UART comms device shown at 7:59?
The best video! Thank you for it. Any possibility of a 2024 update?
Working on it!
Excelente video 👌.
Tengo una cámara china yoosee cómo hago para flashear un firmware por uart ? . Gracias
I have a question what if it has multiple tx and rx ,like tx1 and tx2. Rx1 and rx2 the pins are labelled
I was able to revive my tplink AP. Thanks to this
Could you use an arduino instead of an FTDI chip?
I have tcl 55c1us i got serial print from vga rx tx but its stuck on uart bus off i also have uart rx and tx but its not working
What is the 3.3 or 5 volt of the uart for? I don't see that they use it and it comes there on the USB! If I do it on a camera as they say in the video, I don't need tftp or is that mandatory? I'm bad at this and I don't understand tftp. I damaged my camera by installing the wrong firmware but it turns on but I can't connect to it anywhere, I only see the infrared LEDs and that's it. Do you think this works with that software in the tutorial?
ttl converte model name plz ??
14:33 minicom using the input character N for "odd parity", and L for "no parity" is very confusing.
I’m looking to find a way to get the voltage off of a DJIFPV flight pack. It consist of six cells. The cells are tied to a BMS. It’s my understanding that there are three wires on the main battery connector one ground one TX one RX. Does that mean it’s possible to create a code to receive voltages of each individual cell?
Do you have those connectors labeled? If not, you can use multi-meter to find ground and connect logic analyzer to the remaining 2 pins and take a trace. Because it could also be used for a different protocol, for example I2C. With a logic analyzer you can apply some auto-discovery.
Yes, I have the breakdown and I did take a voltmeter to the pins. One side had a constant 3.16 V and the other side had a constant .5 V. There was no fluctuation in voltage. The total voltage of the pack was 22.6 V.
Great Video
Awesome video, great explanation!
Glad you liked it!
Good stuff... they don't teach you this in school...
Thank you, it works perfect!
Thanks for a great video! I would like to ask you what components it is at 6:24?
Thanks. I got it from here: www.thingiverse.com/thing:2427726
Supurb explanation on how to tell which pin is which using the multimeter starting near the 7 minute mark.
What was the uart usb device?
Aliexpress -> uart usb
@@Nightshade4321 thanks
Awesome video, very informative. Thanks for sharing
Wow. This is so good
Nice video. however, I have a question. Is the start/stop bit always just one 0? If so just the bits per second define how many bits it will capture per packet so it doesn't "desynchronize"?
Thanks! Synchronization is only determined by the baud rate that sender and receiver need to set to the same value. It ensures synchronization of read and write. Start bit is always a LOW value (logical 0) and Stop bit can be 1, 1.5 or 2 bits HIGH value (logical 1) at the end of the UART frame.
I believe it depends on the idle state of the data line. Start will always be inverse of idle level and stop will be same level as idle. @@FlashbackTeam
Awesome video!
Amazing. Thanks for sharing.
Hi. Do you think it might be possible to interface with SIP chips like macbook WiFi ICs? Since 2020 apple uses embedded WiFi SIP with onboard SPI ROM which stores MAC and SN. The problem is that it is also bonded to CPU, so there are thousands of macs with signature damage (due to design WiFi chip dies after water damage in very high amount of cases). Unfortunately this causes the device to crash on boot and it wont work with different IC. There are UART testpoints around this IC, so I was wondering if there is a chance that such specific chip might he hacked to work on different board.
I connected the gnd and tx pads from the docsis 3.0 router to the gnd and rx pins on ttl adapter using pcbite probes but dont see anything on my laptop. I am using putty terminal. Any suggestions?
Check if pin and Tx line are connected connect. You can use continuity mode for this. Also, UART might be disabled by a fuse in that case you might be unlucky.
Hi... Thanks for the amazing video. I physically found a broken UART Port with three pins on an chinese IP camera, and one pin is 'GND' terminal for sure. I really have doubt the other two, terminals on finding which one is TX and RX. By little bit of solder on the other two terminals, I am able to read the bootloader info from Camera to my linux shell via FTDI chip. But the other way communication, i.e., hit any key to stop autoboot (as you mentioned in video @14:48) I am unable to perform. FH8626V100 is the SoC. Unable to get datasheet. I am thinking of pull up resistors also. Can you pls help?
got an oscilloscope? it would probably make the problem apparent
Little late maybe? You can guess by trying RX/TX. Learned that when I stomped with a device that had the wrong pin marking, instead of saying the SoC TX and RX, it said "Here you should comnect your RX (being the SoC TX"
Just takes more time, put the pins one way, try all the common baudrates, reverse and try again.
Also, the autoboot thingy, depends on the bootloader, I've seen devices that only stop booting with a specific key (I'm pointing at you, Dahua devices!) Where only the asterisk key worked. Didn't figure that myself, used to work with the brand haha.
This is exactly the information I needed to see if I can hack a android digital TV box 👍
And that means if I can get a root shell I can imagine a non-branded box via the UART and then write it back on-to my "brained perpetual subscription box" so I can get free digital TV again, perhaps? 🤔
te funciono En que Marca y modelo Lo intentaste??
Awesome inspiring. Do more pls
Thanks..I am able to land on login..but giving me an error SSD empty.
10:36 Should it not be 0110001001 to get 0x41?
This technique will help save IoT hardware from landing in the garbage dump before they should. Imagine if you could take an old Sonos zone player and free it from needing to communicate with Sonos, give it a web interface and let it be a DLNA or AirPlay media target or something... so many good quality products are destined to become garbage the second the manufacturer stops supporting them, or goes belly up. We’re going to need an army of hackers to save the hardware from greedy corporations that think they still own hardware they sold to us like the way China deals with real estate...
I’m more seriously considering purchasing a device that has known terrible firmware that forces you to use their junk cloud service that people have developed alternate firmware for since the hardware is totally decent but requires this type of hack to flash the open source firmware onto it... not so mysterious now.
Nice video, thanks :)
The logic analyzer (400€ Ouch) phase is basically useless. You can just bruteforce to find the baud rate.
I can send data to my hisense 50u6hf but stopping autoboot causes lockdown and i cant get to uboot menu to extract boot.img? Any way to bypass this?
Why is there not CRC in UART? 11:00
Brother I've a modem router model tenda D301 i updated it's firmware after firmware update its admin password didn't work and i also rest to default settings with reset key but its not working how can i see my password using Rx Tx method? With my pc or laptop? Solution please
I have lcd send uart data i try to decode data by usb to serial but data showing vary difficult ... how can i send to you video and contract you ...plz reply
I approved this video. And "shared + subscribed" as requested. It was easier than I thought
What you should do first is identify the target chip and get your hands on any data sheets: especially those regarding the boot- or programming mode.
Many chips have strap pins to tie to gnd or whatever to enter almighty programming modes.
Often the root shell is way more useful than any programming mode because the device has all the needed driver software installed. E.g. you can just run "ping" instead of writing a TCP/IP stack