mharjac / bad_ducky

Rubber Ducky compatible clone based on CJMCU BadUSB HW.
MIT License
280 stars 78 forks source link

ENTER command not working #11

Open rowkois opened 6 years ago

rowkois commented 6 years ago

Hi,

this issue has already been posted by donovanmagryta, but hasen't been closed with a suitable solution for me. for testing iam using demo2.txt, my system is a windows 7 64-bit german language.

The HID is opening the command interface with " GUI r", also "notepad.exe" is written, but the "Enter" command is not working, so "Hello World!" is written right behind "notepad.exe".

what I have tried so far is using diffrent delay times before & after the "notepad.exe" also a couple of rows with the "ENTER" command, nothing working at all.

Iam kindly asking for your support.

geoxen93 commented 6 years ago

I got exactly the same problem. Everything works perfect except ENTER button. Any possible solution ?

geoxen93 commented 6 years ago

https://www.dropbox.com/s/1yhmkz4brkx8jvn/Paxy-DuckDuino.ino

This one works! Enter command working as well!

pmerinolaso commented 6 years ago

Hi,

The problem is thath you should use \n as return character in your txt files. If you use \r\n you should modify the parse functions to consider this character.

If you use notepad++ in windows, you should go to Settings -> Preferences -> New document and change the format of Line ending to LF (UNIX). Or you can switch to Linux... :P

Dofamin commented 6 years ago

For everyone who does not work. Add the following line to the code #define KEY_RETURN 0xB0 In the key definition block at the very beginning.

ghost commented 6 years ago

Hi, I added #define KEY_RETURN 0xB0 at the very beginning where KEY_MENU etc are defined. The issue is still there. I even tried to change Keyboard.press(KEY_RETURN) by its hexadecimal value.

Could I please get a little help?

**Using \n as return character does not work either.

I tried flashing with the script from Seytonic and it works but I want to be able to change script with serial port.

Dofamin commented 6 years ago

You can try to change the location in the queue for the line #define KEY_RETURN 0xB0 I tried to change too Keyboard.press(KEY_RETURN) This led to incorrect firmware operation. Try after changing places in the definition, use a USB different port.

ghost commented 6 years ago

The issue is fixed.

After trying to change every position of #define KEY_RETURN 0xB0 I was beginning to lose hope. I opened up Notepad++ and enabled "Show all characters" to notice that I had CRLF... I changed it to LF and now it works.

Thank you for your help! @Dofamin

Dofamin commented 6 years ago

Happy to help! @antoinelafond

RChadwick7 commented 5 years ago

I originally thought it was an ENTER issue, where Windows likes ASCII 10 and 13.

Well, I'm getting closer. It's not just the ENTER key. It's SPACE and arrow keys as well. If I change the ENTER command to print spaces instead, spaces don't get printed either. It looks like a logic issue where it's not even trying to send certain keys. I'm still looking, but I don't know C.

RChadwick7 commented 5 years ago

Nevermind, my brain fart cleared , and realized the problem was in the ducky script file having a CR and LF and not being parsed properly. I updated the code on my github to fix the problem. I didn't fully test it, but seems fine so far. It should work fine on scripts written on Windows, Android, IOS, and Linux.

mahdidlp commented 3 years ago

Hi buddy , here is an easy way to solve , delete this command typeKey(KEY_RETURN); and replace it with Keyboard.press(KEY_ENTER);

GorrionJS commented 3 years ago

Hi,

this issue has already been posted by donovanmagryta, but hasen't been closed with a suitable solution for me. for testing iam using demo2.txt, my system is a windows 7 64-bit german language.

The HID is opening the command interface with " GUI r", also "notepad.exe" is written, but the "Enter" command is not working, so "Hello World!" is written right behind "notepad.exe".

what I have tried so far is using diffrent delay times before & after the "notepad.exe" also a couple of rows with the "ENTER" command, nothing working at all.

Iam kindly asking for your support.

Hi, did you finally get some solution? I have entered in this world and I have the same problem, the command ENTER doesn't work.

ic32k commented 2 years ago

Had the exact same issue, ENTER no working with this one. Tried all tricks in this post plus several versions of keyboard.h libraries, even the new one wich let you choose the layour with Keyboard.begin(KeyboardLayout_es-ES) Tried several values of enter, digispark one uses 0x40 as KEY_RETURN and with that chip i have no problem, but this one is useless because of the enter issue.... After so much try and error, I managed to make it work, the last try was deleting all keyboard libraries, installing the 1.0.2 Keyboard Arduino library and this repo, also script write only with LF, abd the most important thing is add delays after and before the ENTER in the payload scripts