I'm in the quest of open lining my SM-G532F. For starters when typing `#7465625*638*#` on my phone keypad, an application pop ups which asks me to enter a number of digits (I assume it to be 8 digits number). This package name is `com.sec.android.app.personalization` when I compared running `sudo ps aux | grep perso` with the application running and one without.
With this, and obtaining the PID from `ps aux`, I managed to attached gdb to the PID and analyze it. It spawns about 8 threads with thread 1 breaking at __epoll_pwait:
Code:
(gdb) info thread
Id Target Id Frame
* 1 LWP 21739 "personalization" 0xb6d4cb18 in __epoll_pwait () from target:/system/lib/libc.so
2 LWP 21744 "Signal Catcher" 0xb6d4cdec in __rt_sigtimedwait () from target:/system/lib/libc.so
3 LWP 21745 "ReferenceQueueD" 0xb6d22738 in syscall () from target:/system/lib/libc.so
4 LWP 21746 "FinalizerDaemon" 0xb6d22738 in syscall () from target:/system/lib/libc.so
5 LWP 21747 "FinalizerWatchd" 0xb6d22738 in syscall () from target:/system/lib/libc.so
6 LWP 21748 "HeapTaskDaemon" 0xb6d22738 in syscall () from target:/system/lib/libc.so
7 LWP 21749 "Binder_1" 0xb6d4cc40 in __ioctl () from target:/system/lib/libc.so
8 LWP 21750 "Binder_2" 0xb6d4cc40 in __ioctl () from target:/system/lib/libc.so
Very not interesting. What I wanted to do now is dump the memory and search for the string, "Enter Network Lock Key", to confirm I'm in the right track. But the problem right now is '/proc/pid/maps' has a ton of memory and it would take days to dump it in. So I only decided to dump only the line containing `stack ` and `libpersona.so` from /proc/pid/maps cat /proc/pid/maps | grep libpersona.so | grep stack > ~/maps
I added libpersona.so because I suspect something fishy with it. (1) It rhymes with package name (very logical I think), (2) it is mapped to /proc/pid/maps, (3) it references symbols of strcmp which used to comparing string,
And then using memdump from https://security.stackexchange.com/a/109068 (Modifying "/proc/%s/maps" to "maps" so it uses the one I catted)
But still, I haven't got a clear sign of it.
As a last resort I would brute force all 1,814,400 permutations.
Related
Iv'e tried as many solutions to my problem, as I can find, but still have no adb interface. I have a huawei ascend M860(I know it's old), It's rooted, rom'ed with Playfulgod's CM7.2 rom, and the dalvik was moved to the sdcard. Before I installed this rom, I replaced ADW launcher, with GoLauncher(winzip). I like his rom, except for one thing, since I replaced it from cm6, my adb isn't working. I changed the rom back to cm6, and it started working again, put cm7 back, same problem. Today, I looked into my adbd file, and found alot of errors, and my block file, said I had so many bad blocks, I lost count! This is the end of my adbd file:
ro.debuggable service.adb.root Local port disabled
service.adb.tcp.port persist.adb.tcp.port %d /dev/android_adb OK
failed to allocate an apacket Calling send_connect
host %s:: Calling send_ready
Calling send_close
handle_packet() %d
Enqueue the socket
handle_packet: what is %08x?!
all adb sockets packets rwx usb sync sysdeps transport jdwp %s: select missing fde for fd %d
fd out of range (%d)
fd_table out of sync fde %p not created by fdevent_create()
bogus negative fd (%d)
bogus huuuuge fd (%d)
could not expand fd_table to %d entries
check_header(): invalid magic
check_header(): %d > MAX_PAYLOAD
unknown run_transport_disconnects: %p (%s)
%02x writex: %d %p %d: writex: %d %d %s
writex: %d ok
transport_write_action: on fd %d, error %d: %s
write_packet: %d [%08x %s] %08x %08x (%d) write_packet: %d error %d %d
readx: %d %p %d
readx: %d %d %s
readx: %d ok: transport_read_action: on fd %d, error %d: %s
read_packet: %d error %d %d
read_packet: %d ok: [%08x %s] %08x %08x (%d) transport: %p registered
cannot write transport registration socket
transport: %p init'ing for usb_handle %p (sn='%s')
transport: %p removed
transport: %p R- (ref=%d)
transport: %p kicking and closing
Transport is null Transport is null
cannot enqueue packet on transport socket transport: %p init'ing for socket %d, on port %d
device not found insufficient permissions for device more than one device more than one emulator more than one device and emulator device offline invalid device state cannot open transport registration socketpair cannot read transport registration socket transport: %p removing and free'ing %d
cannot open transport socketpair transport: %p (%d,%d) starting
transport: %p install %d
cannot create input thread cannot create output thread from_remote: starting thread for transport %p, on fd %d
from_remote: transport %p SYNC online (%d)
from_remote: failed to write SYNC apacket to transport %p from_remote: data pump for transport %p
from_remote: received remote packet, sending to transport %p
from_remote: failed to write apacket to transport %p from_remote: remote read failed for transport %p
from_remote: SYNC offline for transport %p
from_remote: thread is exiting for transport %p
to_remote: starting input_thread for %p, reading from fd %d
to_remote: failed to read apacket from transport %p on fd %d
to_remote: transport %p SYNC offline
to_remote: transport %p SYNC online
to_remote: trandport %p ignoring SYNC %d != %d
to_remote: transport %p got packet, sending to remote
to_remote: transport %p ignoring packet while offline
to_remote: thread is exiting for transport %p, fd %d
failed to read packet from transport socket on fd %d
remote local: write terminated
remote local: read terminated (message)
bad header: terminated (data)
remote local: terminated (data)
bad data: terminated (data)
server client transport: local %s init
cannot create local socket %s thread transport: server_socket_thread() starting
server: cannot bind socket yet
server: trying to get new connection from %d
server: new connection on fd %d
host client: connected on remote on fd %d
%s%d emulator- transport: usb
remote usb: 1 - write terminated
remote usb: 2 - write terminated
remote usb: read terminated (message)
remote usb: check_header failed
remote usb: terminated (data)
remote usb: check_data failed
Creating smart socket
cannot allocate socket SS(%d): created %p
Connecting to smart socket
SS(%d): ready
SS(%d): closed
LS(%d): discarding %d bytes
LS(%d): closed
LS(%d): closing
OKAY Connect_to_remote call
destination oversized LS(%d): connect('%s')
Calling remote_socket_ready
Calling remote_socket_enqueue
RS(%d): created
remote_socket_disconnect RS(%d)
Calling remote_socket_close
RS(%d): closed
LS(%d): created (fd=%d)
jdwp track-jdwp LS(%d): bound to '%s'
LS(%d): enqueue %d
LS(%d): not ready, errno=%d: %s
FAIL%04x SS(%d): enqueue %d
SS(%d): overflow
SS(%d): bad size (%d)
SS(%d): len is %d
SS(%d): waiting for %d more bytes
SS(%d): '%s'
unknown failure device offline (x) closed cannot create service socket pair cannot allocate stinfo cannot create service thread service thread started, %d:%d
invalid port
%d service.adb.tcp.port restarting in TCP mode port: %d
EXTERNAL_STORAGE /system/bin/vdc volume unmount force reboot failed: %s
0 restarting in USB mode
/tmp/update FAIL /tmp/update.begin OKAY adbd is already running as root
ro.debuggable 1 adbd cannot run as root in production builds
service.adb.root restarting adbd as root
/dev/ptmx [ cannot open /dev/ptmx - %s ]
[ trouble with /dev/ptmx - %s ]
- fork failed: %s -
- exec '%s' failed: %s (%d) -
/proc/%d/oom_adj adb: unable to open %s
tcp: local: localreserved: localabstract: localfilesystem: dev: framebuffer: recover: jdwp: log: shell: /sbin/sh -c /system/bin/sh - sync: remount: reboot: root: tcpip: usb: sync: failure: %s
mkdir("%s") -> %s
invalid data message: expected ID_DATA oversize data message invalid data message: expected ID_DONE invalid data message sync: waiting for command
command read failure invalid namelen filename read failure sync: '%s' '%s'
unknown command sync: done
not enough memory to create new JDWP process
could not create fdevent for new JDWP process
oops, the JDWP process died really quick
weird accept() failed on jdwp control socket: %s
%d
%04x looking for pid %d in JDWP process list
search failed !!
%s: too many pending JDWP connection for pid %d
%s: socket pair creation failed: %s
weird unknown JDWP process failure: %s
weird end-of-stream from unknown JDWP process
could not decode JDWP %p PID number: '%s'
Adding pid %d to jdwp process list
terminating JDWP %d connection: %s
ignoring unexpected JDWP %d control socket activity (%d bytes)
remove pid %d to jdwp process list
trying to write to JDWP pid controli (count=%d first=%d) %d
sending new file descriptor to JDWP %d failed: %s
sent file descriptor %d to JDWP process %d
could not create vm debug control socket. %d: %s
could not bind vm debug control socket: %d: %s
listen failed in jdwp control socket: %d: %s
could not create fdevent for jdwp control socket
jdwp control socket started (%d)
/dev/graphics/fb0 /proc/mounts %255s %255s %*s %*s %d %d
/system none remount succeeded
remount failed: %s
usb_kick
[ usb_thread - opening device ]
/dev/android_adb /dev/android [ opening device succeeded ]
[ usb_thread - registering device ]
[ read %d ]
ERROR: n = %d, errno = %d (%s)
[ write %d ]
[ done ]
/dev/android_adb_enable failed to open /dev/android_adb_enable
[ usb_init - starting thread ]
cannot create usb thread /dev/log/ /dev/socket/ property_service :
/dev/pts/%u 0123456789ABCDEF Inf 0123456789abcdef (null) NaN 0 . Infinity inf inity nan Unknown error: Operation not permitted No such file or directory No such process Interrupted system call I/O error No such device or address Argument list too long Exec format error Bad file number No child processes Try again Out of memory Permission denied Bad address Block device required Device or resource busy File exists Cross-device link No such device Not a directory Is a directory Invalid argument File table overflow Too many open files Not a typewriter Text file busy File too large No space left on device Illegal seek Read-only file system Too many links Broken pipe Math argument out of domain of func Math result not representable Resource deadlock would occur File name too long No record locks available Function not implemented Directory not empty Too many symbolic links encountered No message of desired type Identifier removed Channel number out of range Level 2 not synchronized Level 3 halted Level 3 reset Link number out of range Protocol driver not attached No CSI structure available Level 2 halted Invalid exchange Invalid request descriptor Exchange full No anode Invalid request code Invalid slot Bad font file format Device not a stream No data available Timer expired Out of streams resources Machine is not on the network Package not installed Object is remote Link has been severed Advertise error Srmount error Communication error on send Protocol error Multihop attempted RFS specific error Not a data message Value too large for defined data type Name not unique on network File descriptor in bad state Remote address changed Can not access a needed shared library Accessing a corrupted shared library .lib section in a.out corrupted Attempting to link in too many shared libraries Cannot exec a shared library directly Illegal byte sequence Interrupted system call should be restarted Streams pipe error Too many users Socket operation on non-socket Destination address required Message too long Protocol wrong type for socket Protocol not available Protocol not supported Socket type not supported Operation not supported on transport endpoint Protocol family not supported Address family not supported by protocol Address already in use Cannot assign requested address Network is down Network is unreachable Network dropped connection because of reset Software caused connection abort Connection reset by peer No buffer space available Transport endpoint is already connected Transport endpoint is not connected Cannot send after transport endpoint shutdown Too many references: cannot splice Connection timed out Connection refused Host is down No route to host Operation already in progress Operation now in progress Stale NFS file handle Structure needs cleaning Not a XENIX named type file No XENIX semaphores available Is a named type file Remote I/O error Quota exceeded No medium found Wrong medium type Operation Canceled Required key not available Key has expired Key has been revoked Key was rejected by service Owner died State not recoverable Stupid C library hack !! abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 :+-._ Local time zone must be set--see zic manual page posixrules ,M4.1.0,M10.5.0 localtime /system/usr/share/zoneinfo / /system/usr/share/zoneinfo/zoneinfo.idx /system/usr/share/zoneinfo/zoneinfo.dat TZ persist.sys.timezone -0 %d %2d %H:%M:%S %e-%b-%Y + - %4d %04d %c Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec January February March April June July August September October November December Sun Mon Tue Wed Thu Fri Sat Sunday Monday Tuesday Wednesday Thursday Friday Saturday %a %b %e %T %Y AM PM %a %b %e %H:%M:%S %Z %Y /acct/uid/%d/tasks w+ <unknown> /proc/self/exe /dev/urandom ANDROID_PROPERTY_WORKSPACE HTC_RIL /dev/log/main /dev/log/radio /proc/cpuinfo processor /proc/stat cpu /proc/meminfo MemTotal:
Is there a problem that's rom related, and why does my adb interface only show in device mgr, when my phone's in cwm recovery?
Dear XDA-Members
After some have requested me to post my tasker profile here is a noob friendly walk trough.
This is the first time I make a tutorial like this so any corrections are more then welcome (since English isn't my native language)
I haven't made this fully on my own, some ideas I got from other posts.
So here it goes:
It was hard to find a good trigger for the task to start and I decided to add it to opening/closing of the camera app.
Profiles:
Application -> (Your default photo app (you can add more then one)
Start task:
Variable / Variable set / name = %Camerastart / To %TIMES - 15 //Set a variable so you can later compare which photos are new and which are old
Exit task:
1. File / List FIles / Dir = DCIM/Camera (Location of the map the photos go in) / Match = *.jpg / Variable = %Files // For each file in the folder create a variable
2. Task / For / Variable = %File / Items = %Files(1 // For every variable do the next loop
-3. File / Test File / Type = Modified / Data = %File / Store result In = %Filetime / Continue Task After Error = True // Look when the photo was taken (modified)
-4. Task / If / Condition = %Filetime > %Camerastart // Compare the variables to see if the photo is either new or old
--5. File / Copy File / From = %File / To = DCIM/Backup (Location of folder you want to copy the new photos too) / (Use root = true // optional) // If true copy the photo to another map
-6. Task / End If // Self explanatory
7. Task / End for // End the loop
I Hope you guys liked this tutorial and I helped some of you out.
I also uploaded the .txt file, rename it to .xml so you can easily import it to tasker. (This was made with the newest version (4.5u1)
Edit: Forgot to add one thing, add a file named .nomedia to the folder where you place the extra photos (Do this with root explorer or some other that displays hidden items), this will prevent the photos from displaying in the gallery app.
// Old
Dear XDA-Members,
I'm not sure if something like this already exists but after a while of searching I haven't found anything like this.
We probably all had one of those moments in our life that we took a photo of something or someone that we wanted to keep really badly but someone forced us to delete it from the gallery.
So my idea was that after a photo gets taken by the camera app and saved to the default location /sdcard/DCIM/camera (or other place, dependence on the camera app (possibly customizable setting?)) a backup is instantly made to a folder (of choice) that isn't displayed in any gallery. And I know dropbox could instantly sync this to the cloud but this firstly drains my data plan and you can't save it locally and only on the cloud (not talking about the huge amount of battery that is drained).
Maybe it's easier to make a camera app that saves a photo on 2 places (one displayed in the gallery and the other one is saved in a secret folder that you can assign yourself and see with the most file browsers.)
I hope you guys like this idea and maybe someone could work this out if they have the time for it.
tldr; Lightweight app that secretly 'backups' photos to a secret folder that isn't displayed in the gallery app.
Sorry for my English, it isn't my native language.
Tasker can do that
Tasker?
mushipkw said:
Tasker can do that
Click to expand...
Click to collapse
What would be the trigger event then?
I have explored all the tasker options but weren't able to find anything that could reproduce this.
Tasker worked
Mikhail5555 said:
What would be the trigger event then?
I have explored all the tasker options but weren't able to find anything that could reproduce this.
Click to expand...
Click to collapse
Wow, I can't believe how powerful tasker actually is.
I managed to make a task for backing up photos made by my standard camera. It took me an hour but it is working now.
If anyone interested in the task send me a pm and I will send the task.
Mikhail5555 said:
Dear XDA-Members
After some have requested me to post my tasker profile here is a noob friendly walk trough.
This is the first time I make a tutorial like this so any corrections are more then welcome (since English isn't my native language)
I haven't made this fully on my own, some ideas I got from other posts.
So here it goes:
It was hard to find a good trigger for the task to start and I decided to add it to opening/closing of the camera app.
Profiles:
Application -> (Your default photo app (you can add more then one)
Start task:
Variable / Variable set / name = %Camerastart / To %TIMES - 15 //Set a variable so you can later compare which photos are new and which are old
Exit task:
1. File / List FIles / Dir = DCIM/Camera (Location of the map the photos go in) / Match = *.jpg / Variable = %Files // For each file in the folder create a variable
2. Task / For / Variable = %File / Items = %Files(1 // For every variable do the next loop
-3. File / Test File / Type = Modified / Data = %File / Store result In = %Filetime / Continue Task After Error = True // Look when the photo was taken (modified)
-4. Task / If / Condition = %Filetime > %Camerastart // Compare the variables to see if the photo is either new or old
--5. File / Copy File / From = %File / To = DCIM/Backup (Location of folder you want to copy the new photos too) / (Use root = true // optional) // If true copy the photo to another map
-6. Task / End If // Self explanatory
7. Task / End for // End the loop
I Hope you guys liked this tutorial and I helped some of you out.
I also uploaded the .txt file, rename it to .xml so you can easily import it to tasker. (This was made with the newest version (4.5u1)
// Old
Dear XDA-Members,
I'm not sure if something like this already exists but after a while of searching I haven't found anything like this.
We probably all had one of those moments in our life that we took a photo of something or someone that we wanted to keep really badly but someone forced us to delete it from the gallery.
So my idea was that after a photo gets taken by the camera app and saved to the default location /sdcard/DCIM/camera (or other place, dependence on the camera app (possibly customizable setting?)) a backup is instantly made to a folder (of choice) that isn't displayed in any gallery. And I know dropbox could instantly sync this to the cloud but this firstly drains my data plan and you can't save it locally and only on the cloud (not talking about the huge amount of battery that is drained).
Maybe it's easier to make a camera app that saves a photo on 2 places (one displayed in the gallery and the other one is saved in a secret folder that you can assign yourself and see with the most file browsers.)
I hope you guys like this idea and maybe someone could work this out if they have the time for it.
tldr; Lightweight app that secretly 'backups' photos to a secret folder that isn't displayed in the gallery app.
Sorry for my English, it isn't my native language.
Click to expand...
Click to collapse
Excellent, just what i was looking for. Great tutorial.
---------- Post added at 01:29 AM ---------- Previous post was at 01:19 AM ----------
Might want to change the title of the post
Since your request was pretty much solved by yourself.
GerManiac said:
Excellent, just what i was looking for. Great tutorial.
---------- Post added at 01:29 AM ---------- Previous post was at 01:19 AM ----------
Might want to change the title of the post
Since your request was pretty much solved by yourself.
Click to expand...
Click to collapse
Completely forgot about the title, sorry [emoji15]
How you import?
eloko said:
How you import?
Click to expand...
Click to collapse
Just follow the instructions and make it yourself, the directories might not work if you import
eloko said:
How you import?
Click to expand...
Click to collapse
Otherwise download the .txt file, rename it to .xml and import it into tasker. (Don't forget to change the dirs)
Mikhail5555 said:
Otherwise download the .txt file, rename it to .xml and import it into tasker. (Don't forget to change the dirs)
Click to expand...
Click to collapse
I don't see the option to import.
I try when I have the chance to be on pc.
Thanks
Mikhail5555 said:
Exit task:
1. File / List FIles / Dir = DCIM/Camera (Location of the map the photos go in) / Match = *.jpg / Variable = %Files // For each file in the folder create a variable
Click to expand...
Click to collapse
Thanks for the very nice tutorial of yours
I have a question or rather a problem!
What if I wanted to make a backup of videos too, how should I add to the list?
M S T F said:
Thanks for the very nice tutorial of yours
I have a question or rather a problem!
What if I wanted to make a backup of videos too, how should I add to the list?
Click to expand...
Click to collapse
Thanks for the nice words, It is actually pretty easy to add more files to the list of items that are gettings copied.
Exit task:
1. File / List FIles / Dir = DCIM/Camera (Location of the map the photos go in) / Match = *.jpg / Variable = %Files // For each file in the folder create a variable
Just edit the "Match = *.jpg" to for instant "Match = *.jpg/*.mp4/*.png".
The / means OR so you can add almost all the file extentions that you want and/or need.
Don't forget the scan will take longer the more items you add.
Mikhail5555 said:
Thanks for the nice words, It is actually pretty easy to add more files to the list of items that are gettings copied.
Exit task:
1. File / List FIles / Dir = DCIM/Camera (Location of the map the photos go in) / Match = *.jpg / Variable = %Files // For each file in the folder create a variable
Just edit the "Match = *.jpg" to for instant "Match = *.jpg/*.mp4/*.png".
The / means OR so you can add almost all the file extentions that you want and/or need.
Don't forget the scan will take longer the more items you add.
Click to expand...
Click to collapse
Thanks for the reply,
After adding mp4 to the list I ran into error, as you can see in the following screenshot.
Actually the remaining photos after the first video file in the folder aren't backed up. but the first video file itself is copied to the destination folder.
Any idea what could be the reason
M S T F said:
Thanks for the reply,
After adding mp4 to the list I ran into error, as you can see in the following screenshot.
Actually the remaining photos after the first video file in the folder aren't backed up. but the first video file itself is copied to the destination folder.
Any idea what could be the reason
Click to expand...
Click to collapse
Try disabling 'use root', i'm not sure why the copying times out though
Could you also show the bottem lines from the error that tasker gives?
Mikhail5555 said:
Try disabling 'use root', i'm not sure why the copying times out though
Could you also show the bottem lines from the error that tasker gives?
Click to expand...
Click to collapse
Here I have copied the whole log for your consideration. I am looking forward for a solution.:good:
Code:
16.28.14/Variables doreplresult: |%File| -> |/storage/extSdCard/DCIM/CamTest/20140905_182414.mp4|
16.28.14/Variables doreplresult: |%File| -> |/storage/extSdCard/DCIM/CamTest/20140905_182414.mp4|
16.28.14/Shell runSync test -e '/storage/extSdCard/DCIM/CamTest/20140905_182414.mp4' root: true timeout: 3000
16.28.14/Shell have process
16.28.14/Shell write cmd: test -e '/storage/extSdCard/DCIM/CamTest/20140905_182414.mp4'
16.28.14/Shell start process timeout timer 3000ms for: test -e '/storage/extSdCard/DCIM/CamTest/20140905_182414.mp4'
16.28.14/Shell start process-thread ID 530
16.28.14/Shell joined with 530
16.28.14/Shell exit result: 0
16.28.14/Shell non-null timeout
16.28.14/Shell runSync test -f '/storage/extSdCard/DCIM/CamTest/20140905_182414.mp4' root: true timeout: 3000
16.28.14/Shell have process
16.28.14/Shell write cmd: test -f '/storage/extSdCard/DCIM/CamTest/20140905_182414.mp4'
16.28.14/Shell start process timeout timer 3000ms for: test -f '/storage/extSdCard/DCIM/CamTest/20140905_182414.mp4'
16.28.14/Shell start process-thread ID 532
16.28.14/Shell joined with 532
16.28.14/Shell exit result: 0
16.28.14/Shell non-null timeout
16.28.14/Shell runSync test -d '/storage/extSdCard/DCIM/CamTest/20140905_182414.mp4' root: true timeout: 3000
16.28.14/Shell have process
16.28.14/Shell write cmd: test -d '/storage/extSdCard/DCIM/CamTest/20140905_182414.mp4'
16.28.14/Shell start process timeout timer 3000ms for: test -d '/storage/extSdCard/DCIM/CamTest/20140905_182414.mp4'
16.28.14/Shell start process-thread ID 534
16.28.15/Shell joined with 534
16.28.15/Shell exit result: 1
16.28.15/Shell non-null timeout
16.28.15/Shell runSync test -e '/storage/extSdCard/Camera-Backup' root: true timeout: 3000
16.28.15/Shell have process
16.28.15/Shell write cmd: test -e '/storage/extSdCard/Camera-Backup'
16.28.15/Shell start process timeout timer 3000ms for: test -e '/storage/extSdCard/Camera-Backup'
16.28.15/Shell start process-thread ID 536
16.28.15/Shell joined with 536
16.28.15/Shell exit result: 0
16.28.15/Shell non-null timeout
16.28.15/Shell runSync test -f '/storage/extSdCard/Camera-Backup' root: true timeout: 3000
16.28.15/Shell have process
16.28.15/Shell write cmd: test -f '/storage/extSdCard/Camera-Backup'
16.28.15/Shell start process timeout timer 3000ms for: test -f '/storage/extSdCard/Camera-Backup'
16.28.15/Shell start process-thread ID 538
16.28.15/Shell joined with 538
16.28.15/Shell exit result: 1
16.28.15/Shell non-null timeout
16.28.15/Shell runSync test -d '/storage/extSdCard/Camera-Backup' root: true timeout: 3000
16.28.15/Shell have process
16.28.15/Shell write cmd: test -d '/storage/extSdCard/Camera-Backup'
16.28.15/Shell start process timeout timer 3000ms for: test -d '/storage/extSdCard/Camera-Backup'
16.28.15/Shell start process-thread ID 540
16.28.15/Shell joined with 540
16.28.15/Shell exit result: 0
16.28.15/Shell non-null timeout
16.28.15/Shell runSync cp '/storage/extSdCard/DCIM/CamTest/20140905_182414.mp4' '/storage/extSdCard/Camera-Backup' root: true timeout: 7000
16.28.15/Shell have process
16.28.15/Shell write cmd: cp '/storage/extSdCard/DCIM/CamTest/20140905_182414.mp4' '/storage/extSdCard/Camera-Backup'
16.28.15/Shell start process timeout timer 7000ms for: cp '/storage/extSdCard/DCIM/CamTest/20140905_182414.mp4' '/storage/extSdCard/Camera-Backup'
16.28.15/Shell start process-thread ID 542
16.28.22/Shell joined with 542
16.28.22/Shell exit result: 9
16.28.22/Shell non-null timeout
When will there be an AirMirror support for Linux?
Perhaps we can start deconstructing the windows app and then see if we can bring that to wine
---------- Post added at 08:14 PM ---------- Previous post was at 08:13 PM ----------
Perhaps we can start deconstructing the windows app and then see if we can bring that to wine. The feature request has been open for a while. I'd be interested to know how the mirroring works. I would imagine alot of root users run linux
jago25_98 said:
Perhaps we can start deconstructing the windows app and then see if we can bring that to wine
---------- Post added at 08:14 PM ---------- Previous post was at 08:13 PM ----------
Perhaps we can start deconstructing the windows app and then see if we can bring that to wine. The feature request has been open for a while. I'd be interested to know how the mirroring works. I would imagine alot of root users run linux
Click to expand...
Click to collapse
Very useful feature! Native Linux support will be great. Does anyone tried to run it under Wine?
UPD.
Tried to run under Wine 1.7.30 - does not start after installation:
Code:
$ wine AirDroid.exe
fixme:mscoree:ConfigFileHandler_startElement Unknown element L"configSections" in state 2
fixme:mscoree:ConfigFileHandler_startElement Unknown element L"sectionGroup" in state 6
fixme:mscoree:ConfigFileHandler_startElement Unknown element L"section" in state 6
fixme:mscoree:ConfigFileHandler_startElement Unknown element L"system.net" in state 2
fixme:mscoree:ConfigFileHandler_startElement Unknown element L"settings" in state 6
fixme:mscoree:ConfigFileHandler_startElement Unknown element L"httpWebRequest" in state 6
fixme:mscoree:ConfigFileHandler_startElement Unknown element L"servicePointManager" in state 6
fixme:mscoree:ConfigFileHandler_startElement Unknown element L"connectionManagement" in state 6
fixme:mscoree:ConfigFileHandler_startElement Unknown element L"add" in state 6
fixme:mscoree:ConfigFileHandler_startElement Unknown element L"applicationSettings" in state 2
fixme:mscoree:ConfigFileHandler_startElement Unknown element L"iTong.My.MySettings" in state 6
fixme:mscoree:ConfigFileHandler_startElement Unknown element L"setting" in state 6
fixme:mscoree:ConfigFileHandler_startElement Unknown element L"value" in state 6
Unknown heap type: #GUlD
Unknown heap type: #Blop
Unhandled Exception:
System.TypeInitializationException: An exception was thrown by the type initializer for <Module> ---> System.InvalidProgramException: Invalid IL code in gRpfcjfJ9IflOON1qqa.EVhIvFfNiVUIg77JM3y:gUqkvCGVHdK (): IL_002b: brtrue IL_3894
at <Module>..cctor () [0x00000] in <filename unknown>:0
--- End of inner exception stack trace ---
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: An exception was thrown by the type initializer for <Module> ---> System.InvalidProgramException: Invalid IL code in gRpfcjfJ9IflOON1qqa.EVhIvFfNiVUIg77JM3y:gUqkvCGVHdK (): IL_002b: brtrue IL_3894
at <Module>..cctor () [0x00000] in <filename unknown>:0
--- End of inner exception stack trace ---
expecting too ...
Still no Linux support...
Still looking forward for some Linux support!
Airdroid client om wine
It looks like the desktop client is a Mono application.
I will make a 32-bit prefix in wine with dotnet45 and try it out.
Run in wine
I have got it to start in wine after installing in a 32-bit prefix with dotnet42.
However it is slow and barly usable.
But it it a step on the way
I'll post my progress here.
This threads will contains extensions for the navigation system based on NNG iGO PRIMO NextGen
Extend the functionality of regular buttons VIApoi remove from the route.
Standard button appears, if you have to route waypoints (VIApoi).
So it stays ... but when you click on it (click) menu appears, listing all VIApoi and
you are free to either tapnut elsewhere and remove the first in the queue
either by the victim ... long tapom remove everything to her ... and her too
Conveniently this is the case when you route with intermediate points and you for some reason "spilled" from it.
Re-start will lead to the fact that the navigator will lead to the first point ... but you have somewhere Intermedia ... here come in handy.
Plant ... in all weather conditions))
debugger
Debugger - debugging tool due to lack of log. You can view the result in ONLINE. You can "ON THE FLY" ... take snapshots directly from the cab.
Debugger You can use one or all of three ways at once.
*#
Call in the right place at the right time ... and save the data
If the variable Global - transferred to the "name", or simply herself. The number of input parameters is not limited.
Example
var1 = "hello"
local var2 = 8
t = {2,5, { "Bonnie Parker", "Clyde Barrow"}}
VW_Debugger ( "-------------------------------",
"Hex (var1)", - var1 must be GLOBAL
var1, var2, "t", "-------------------------------")
The result in the ... / lm_DebugToList.txt:
Variable # 1 = -------------------------------
Variable # 2 = 68 | 65 | 6C | 6C | 6F |
Variable # 2 = h | e | l | l | o |
Variable # 3 = hello
Variable # 4 = 8
t = {
[1] = 2,
[2] = 5,
Table # 3 = {
[1] = Bonnie Parker,
[2] = Clyde Barrow,
}
.
}
Variable # 6 = -------------------------------
*#
Enter code snippet ONLINE
Enter the line of code as you write in the body of the program.
Example
return hex (Help)
The results are on the screen and a file.
*#
Complex. But requires some setup allows to get a snapshot at any time
For this purpose has already been declared a global table VW_Debugger_Table and the following structure is used:
Example:
hook_DebugSnapshot: register (function ()
****UX_Name = "<name of your utilities>" --osoboe attention. Utility field
****VW_Debugger_Table.v_integer = v_integer - your variable
****VW_Debugger_Table.v_char = v_char --Your variable
****VW_Debugger_Table.v_table = v_table --Your variable
end)
It is desirable to place at the end of your utility body.
In other words - you need to put in your section (lua chunk) here such fragments, which will ensure the filling of the table
you desired variables. The process you manage yourself using SnapShot keys
I note that the third method does not require cleaning after the source code debugging. This tool can be left in the body of the program.
It can be activated at any time by pressing the button or VW_Debugger_Get_Snapshot () of the body of the program and does not interfere with the functionality of standard code.
All results are displayed on the screen and are available in /save/profile/01/userlist/lm_DebugToList.txt ... unless of course you do not erase.
CommonRouteWarnings.zip
Utility - informer. The name speaks for itself: CommonRouteWarnings.zip
All sounds and warning match again utverdennomu standard: SetAudioSignal.
Long press - access to the configurator.
Informer as a button in the cockpit. Informs about 12 developments on the route of choice.
They will be "PROKRUCHIVATYA" at one location in the cabin, but with different icons of different information and ... according to the chosen event he or events.
Upper information - the distance to the event, the bottom - time in the scene.
Now click on the icon will get a third of the current screen with an overview of the place, the relevant event, well, or automatically.
On the TMC. Upper infa - distance sobyliya, lower - latency, which makes this event (not to be confused with the overall delay)
Full set here
Hi there. working igo 8 would be interested. samsung s8 phone. I would like a link. Thanks
Backstory: I have an old (2008?) vizio VA22L FHDTV10T. 1920x1080 60hz panel. I want to connect it to my pc, but if I use anything other than the VGA port (eg HDMI) it overscans and applies all this crap to the image. It's clear and crisp and beautiful if I use VGA (tested with old VGA gpu), but alas, my pc doesn't have a VGA output. (Yes I tried all the settings, no they don't fix it. Yes, I tried adjusting the graphics driver settings, no they haven't fixed it without being a PITA every time I turn the tv off.)
On to the important stuff: I can access the tv with a serial connection via "Service port" and can see a Das U-boot boot sequence and issue commands. I just don't know linux and can't get anywhere past the help menus. If someone could guide me on modifying this thing I'd be rather grateful!
For starters, here's the output when I first turn it on whilst pc is plugged in via VGA, wait for it to finish booting, and press enter.
PS: using PuTTY @ 115200baud
Code:
â–’Boot-
Bank 0 : DQS(3 ~ 42), Size 39, Middle = 22
Bank 1 : DQS(-1 ~ 41), Size 42, Middle = 20
DRAM is set as 16 bits
Boot
Starting C main
0x00001b04
LZHS addr:0x00001b80
LZHS size:0x0002fcd8
LZHS checksum:0x00000084
U-Boot 1.1.4 (Oct 9 2009 - 12:58:21)
U-Boot code: 00D00000 -> 00D2FCD8 BSS: -> 00D7430C
RAM Configuration:
Bank #0: 00000000 64 MB
Detect flash #0: MXIC(25L320)
Flash: 4 MB
0.0.0.0
In: serial
Out: serial
Err: serial
DramSizing: 0x02000000
Finding Image...
Decompression image to 0x00010000...
Booting
Nucleus Heap is at 0x00603208(0x00be5f80)
Main task stack is at 0x00603218 (0x00002000)
============================================
Memory for Image at 0x00010000(0x005eda08):
Memory for OSAI at 0x00605228(0x00ae5f80)
Memory Reserved for ARM lib at 0x010ec000(0x00100000)
Memory Reserved for FBM at 0x011ec000(0x00e10000)
Memory Reserved for MMU at 0x01ffc000(0x00004000)
Find panel index 102(PANEL_LG_LM215WF1) from GPIO
TunerInit.....................MUSBStack-S v2.303 Init pBase = 0x20029000.
Image ROBase:0x0001099c ROLimit:0x004483f4
Protect readonly memory from 0x00000000 to 0x004483e8
MMU protect: 0x01ffc000 ~ 0xfffffff8
Successed to initialize Memory Intrusion Detection!
DTV>Detect flash #0: MXIC(25L320)
[SRM] DISP CTRL 0 0 0 0
[SRM] DISP CTRL 0 1 0 0
[DM] VT = 1111 (1111)
DM Panel V(1089 1099 1200) H(1999 2175 2239) P(120000000 143472527 175000000) F(50 75)
DM H MIN(1800 2048) H MAX(2624)
DM OK V(1111) H(2176) F(60)
[DM] VT = 1111 (1111)
DM OK HS(254)
[DM] VT = 1111 (1111)
DM Panel V(1089 1099 1200) H(1999 2175 2239) P(120000000 143472527 175000000) F(50 75)
DM H MIN(1800 2048) H MAX(2624)
DM OK V(1111) H(2176) F(60)
[DM] VT = 1111 (1111)
DM OK HS(254)
Watchdog enable:405000000
W: 1920 H: 1080 Rate: 60 DSH:800 DSV: 800 USH: 800 USV: 800 VSP: 0 TUNE: 0 bStackSize: 1
[Help]
cd: Change current directory
do: Repeat command
alias(a): Add/Show current alias
read(r): Memory read(word)
write(w): Memory write(word)
basic_(b): basic command
mtktool(0): mtktool command
customer(cust): Get customer name
pmx: pmx (scpos) command
musb: MUSB command
sif: Sif command
eeprom: Eeprom command
nim: Nim command
ir: Ir command
rtc(rtc): RTC commands
aud: Aud command
nptv(n): Nptv command
dbs: Dbs command
dmx(d): Demux commands
memtest: Memory test
pdwnc(pdwnc): PDWNC commands
bwt: BWT command
gpio: Gpio interface
DTV>
Again, thanks in advance!
Mmm, so right after posting, I figured out that I had to change directory to one of the commands listed in the first help in order to issue commands from the sub-help of each one instead of using them as arguments. EG: cd pmx [enter] pattern 1 [enter] would turn on the test pattern instead of pmx pattern or pmx pattern 1 or pmx -p and other such variants. There's probably a guide for this out there somewhere but most of my searches just turned up historical info on German submarines... Oh, and this thread which is kinda along the same lines: https://forum.xda-developers.com/android/software/rooting-mediatek-based-linux-smart-tv-t3150281
I guess now I just have to find which setting(s) fix my apparent problem, then I'll need to append the firmware, assuming I can't do it from the serial console. And that'll be the part I definitely need help with.
Maybe I can just use commands to do this, but I don't know what most of this is, and my searches aren't yielding much... That said, I can run the commands and post back the results since I don't expect anyone to have this same model.
Here's the menu and submenus with my comments in quotes:
Code:
cd: Change current directory "Figured out this one"
do: Repeat command "Self explanatory"[HIDE]
Usage: do loop cmd ex: do 10 read 0x200 0x10
CLI Command Return Value (-1)[/HIDE]
alias(a): Add/Show current alias "not quite sure what this does"
read(r): Memory read(word) "I guess these are self explanatory? no output if I just run the commands"
write(w): Memory write(word)
basic_(b): basic command [HIDE]
[Help]
stop: Stop RS232 transparent mode
sv: System mode detection
version(ver): System version/build date
reboot: System reboot/restart
getpllclk(gpc): close loop, gpc [cpu|sys|ps|vo|adc|b2r|apl1|apl2] [[band num]]
backup(bk): backup command
[/HIDE]
mtktool(0): mtktool command "the help kinda explains?[HIDE]
[Help]
et: Enter RS232 transparent mode
ft: Set RS232 factory mode
st: Stop RS232 transparent mode[/HIDE]
customer(cust): Get customer name "returns [TPV] and nothing more"
pmx: pmx (scpos) command "looks promising?"[HIDE]
[Help]
enable(e): enable/disable LVDS
pattern(p): enable/disable test pattern
list(l): show panel list
query(q): dump pmx(scpos) info
set(s): set parameter
[/HIDE]
musb: MUSB command "probably controls the usb port on the back?" [HIDE]
[Help]
debug_on(d_on): MUSB.d_on
debug_off(d_off): MUSB.d_off
debug_level(d_l): MUSB.d_l
init(i): MUSB init
speed(speed): MUSB speed
hmsd(hm): MUSB host msd test
htst(ht): MUSB host compilance test
suspend(s): USB bus suspend
resume(r): USB bus resume
[/HIDE]
sif: Sif command "I know what edid is basically, maybe I could make the computer think this is a non-hdtv type connection?"[HIDE]
[Help]
init(i): Sif init
read(r): Sif read
write(w): Sif write
writebyte(wb): Sif write byte
hdcp: Sif write HDCP SRAM default value
rhdcp: Sif read HDCP
wbhdcp: Sif write byte to HDCP
rbhdcp: Sif read byte from HDCP
wallhdcp(wah): Sif write all 320 bytes to HDCP
rallhdcp(rah): Sif read all 320 bytes from HDCP
edid: Sif write EDID default value
redid: Sif read EDID
walledid(wae): Sif write all 256 bytes to EDID
ralledid(rae): Sif read all 256 bytes from EDID
tunerread(tr): Tuner I2C No-sub-addr read
tunerwrite(tw): Tuner I2C No-sub-addr write
multipleread(mr): Multiple sub-addr I2C read
multiplewrite(mw): Multiple sub-addr I2C write
scan1(s1): Scan BUS0 (System I2C)
scam2(s2): Scan BUS1 (Tuner I2C)
sif_x_read(xr): fully functional sif read
sif_x_write(xw): fully functional sif write
edidreadbyte(edidrb): edid read byte
[/HIDE]
eeprom: Eeprom command "there's an 8 pin eeprom on the mainboard" [HIDE]
[Help]
readbyte(rb): eeprom.rb [eeprom-offset]
writebyte(wb): eeprom.wb [eeprom-offset] [byteval]
uartwrite(uw): Get data from Uart and write to eeprom.[/HIDE]
nim: Nim command "I assume this controls the onboard tv tuner"[HIDE]
[Help]
id: Set Tuner ID
ver: Tuner version
dtd: Nim dtd
atd: Nim atd
d_l: Set Debug Level
go: Start Nim
up: Channel Up
down: Channel Down
channel: Channel Set
freq: Freq Set
init(i): Nim init
open(o): Nim open
close(c): Nim close
setcable(sc): Nim set cable parameters
setBW(sbw): Nim set BW
getcablelevel(gclv): Nim get cable signal level
getcablesignal(gcsc): Nim get cable signal parameter
getcablelock(gclk): Nim get cable lock status
detachmw(dm): Nim Detach MW
detachi2c(dei2c): Detach Tuner I2C
[/HIDE]
ir: Ir command "InfraRed as in the remote I s'pose" [HIDE]
rx(rx): RX commands
[/HIDE]
rtc(rtc): RTC commands "returns [HELP] and nothing more. Real Time Clock I'd wager unless that has another meaning"
aud: Aud command "onboard speakers and other audio functions"[HIDE]
[Help]
ptsdly(ptsd): Delay audio startup by increasing PTS
dd_banner(banner): DD banner turn on for DD Test
spdif: spdif command
adac: adac command
interdac: inter dac command
dsp: dsp command
uop: audio uop
cfg: configuration
t: test
Clip: Aud Clip
factory(fac): Factory mode
[/HIDE]
nptv(n): Nptv command "not the foggiest idea of what these do."[HIDE]
[Help]
Ycproc(ycproc): YCPROC Command
TVD(tvd): TVD Command
NR(nr): NR Command
SCART(scart): SCART Command[/HIDE]
dbs: Dbs command "not this either"[HIDE]
[Help]
init(i): Dbs init
print(p): Dbs print at once
reset(r): Dbs reset[/HIDE]
dmx(d): Demux commands "This looks like the solution, except... the one command does nothing..."[HIDE]
[Help]
query(q):[/HIDE]
memtest: Memory test[HIDE][Help]
run(r): Memory test[/HIDE]
pdwnc(pdwnc): PDWNC commands "another one that just returns [Help]. no idea what it is"
bwt: BWT command "BandWidth Testing. not what I'm looking for I don't think"[HIDE]
[Help]
init: BandWidth Testing Preliminaries
testing: BandWidth Testing (BWT)
report: BandWidth Testing Report
chgchannel: Change Channel Number
dtv: BWT for DTV
atv: BWT for ATV
cvbs: BWT for CVBS
ypbpr: BWT for YPbPr
hdmi: BWT for HDMI
vga: BWT for VGA
src: Get current input source
mtime: Set BWT measure time
pippop: BWT for PIP/POP[/HIDE]
gpio: Gpio interface "General Purpose I/O. Don't think this is what I need either as it's hardware" [HIDE]
[Help]
output(out): gpio.out [gpio num] [[0|1]]
input(in): gpio.in [gpio num]
servo(servo): gpio.servo [0-4][/HIDE]
Wake times are also over 10 seconds, and the bright blue when there's no signal is rather jarring, so I suppose I'll need to extract and modify the firmware. Can anybody help with this?
Bump I s'pose. Still stuck, so for now I'm working on other things till I find someone who can help with this. I'd rather not drop $25 on a chinese basic mainboard for the panel or whatever I can get away with paying for a dubious identical-looking universal mainboard.
So I'm at it again trying to make this work. Glad I posted everything I did since I totally forgot how to work this thing... Still need help. I'm trying to dump the firmware with u boot so I can try to modify and reupload it with my custom values.
I also have this TV and would like to disable overscan. How should I connect my PC to one of its service ports? It has two service ports: a type A USB port and some port that I think is called 'ISP' or something like that. For what it's worth, I already have several USB to RS232 adapters (male USB type A on one end of the cable, male RS232 on the other end of the cable), but this TV doesn't have an RS232 port. I've already downloaded a third-party PuTTy app ("PuTTy (Unofficial)", if I recall correctly, from the Microsoft Store).
Edit: Made a correction.
I also have an adapter that is USB type B on both ends. It is called "SharkPort", IIRC. It was designed for connecting a PC to a PlayStation 2 to transfer PS2 game save files. It *might* be a USB host-to-host adapter. It is probably USB 1.0 or 1.1.
Big love for this thread even though I'm probably useless at the moment.
I'm ambitiously following some of your footsteps to tinker with my all-but-entirely defunct Vizio E3D420VX.
Curious how this story played out though; it looks like it relies more on TV knowledge than Linux-- these settings are pretty dense.