How to fix an inverted touch axis (and a small request) - G2 and Desire Z General

So I have something to offer to you and something to ask in return
I've built Atmel's mxt-app (https://github.com/atmel-maxtouch/obp-utils), and have attached it to this thread. On the Desire Z, it can be used as such, from a root prompt:
Code:
#chmod 755 mxt-app
#./mxt-app -d 0 -a 4a
You won't be able to grant execute permissions on a fat32 partition (for example, your SD card), so copy it to somewhere on an ext partition first (/data/local/tmp works well).
It's probably of questionable utility to most, but certainly interesting to play around with.
Anyway, now my own request: I've installed a replacement digitizer, and the x axis is inverted. My gut says this is a config issue with the screen's firmware, but Atmel have a really weird strategy whereby their driver is completely open source but you need to sign an NDA to get the config specification. So, I would like to grab a working configuration from somewhere and just load the whole thing into mine. This is where you come in! If you are feeling helpful:
Code:
#./mxt-app -d 0 -a 4a
S
output.cfg [i]or whatever you want here[/i]
Q
#cp output.cfg /sdcard
Then upload output.cfg from your SD card to here (or just copy/paste its contents, looks like ASCII encoded octal :/) For bonus points, tell me what ROM you are using, as copying configs between different driver versions may not work so nicely.
Cheers!
Jarrad

OK! So I've had a little success and managed to fix the x-axis on my touchscreen being inverted. This goes for anyone using a phone with the mxt224 touchscreen, though the fix isn't perfect - it needs to be reapplied every boot.
TL;DR:
Code:
#./mxt-app -d 0 -a 4a -T9 -W -r9 -n1 [b]01[/b]
should do it for the DZ/G2.
To be more exact, you need to flip the third bit (bit 2, with the least significant bit on the right being bit 0) of Register 9 of the T9 config block - you can read this register like
Code:
#./mxt-app -d 0 -a 4a -T9 -R -r9 -n1 -f
On my touch screen, this outputs (among other things) a value of
Code:
0000 0[b]1[/b]01
. This equals 05 - flipping the bit makes this value equal to
Code:
0000 0[b]0[/b]01 = 01
. The number at you are using to set needs to be specified with a two-hex-digit byte, so say if you are changing 1100 0111 to 1100 0011, you would need to write C3 as your number. Windows calculator in Programmer mode can help with this. It's also important to write zero as the first digit - the program will interpret 1 as 10! You need to write 01.
It would still be really useful to have an output config of a stock touchscreen posted here, as detailed in the previous post, as there are a few other things that the aftermarket controller does differently to the factory DZ part (reporting rate and edge detection are the things I've noticed).

Akdor 1154 said:
OK! So I've had a little success and managed to fix the x-axis on my touchscreen being inverted. This goes for anyone using a phone with the mxt224 touchscreen, though the fix isn't perfect - it needs to be reapplied every boot.
TL;DR:
Code:
#./mxt-app -d 0 -a 4a -T9 -W -r9 -n1 [b]01[/b]
should do it for the DZ/G2.
To be more exact, you need to flip the third bit (bit 2, with the least significant bit on the right being bit 0) of Register 9 of the T9 config block - you can read this register like
Code:
#./mxt-app -d 0 -a 4a -T9 -R -r9 -n1 -f
On my touch screen, this outputs (among other things) a value of
Code:
0000 0[b]1[/b]01
. This equals 05 - flipping the bit makes this value equal to
Code:
0000 0[b]0[/b]01 = 01
. The number at you are using to set needs to be specified with a two-hex-digit byte, so say if you are changing 1100 0111 to 1100 0011, you would need to write C3 as your number. Windows calculator in Programmer mode can help with this. It's also important to write zero as the first digit - the program will interpret 1 as 10! You need to write 01.
It would still be really useful to have an output config of a stock touchscreen posted here, as detailed in the previous post, as there are a few other things that the aftermarket controller does differently to the factory DZ part (reporting rate and edge detection are the things I've noticed).
Click to expand...
Click to collapse
Hi,
How you figured which bits to flip?

I think I found a list of the different registers somewhere and set about flipping bits in the ones that seemed appropriate, haha. It took a bit of mucking around.
Sent from my XT1053 using XDA Premium 4 mobile app

Akdor 1154 said:
I think I found a list of the different registers somewhere and set about flipping bits in the ones that seemed appropriate, haha. It took a bit of mucking around.
Sent from my XT1053 using XDA Premium 4 mobile app
Click to expand...
Click to collapse
Can you recover that list somehow? It's very needed for some other crappy atmel controller.
Thanks,
Vadim

vadimbrk said:
Can you recover that list somehow? It's very needed for some other crappy atmel controller.
Thanks,
Vadim
Click to expand...
Click to collapse
It's in atmel_mxt_ts.c in the linux kernel from memory.

Akdor 1154 said:
It's in atmel_mxt_ts.c in the linux kernel from memory.
Click to expand...
Click to collapse
Thanks. Have you found a way to make it pernenent?
My device runs windows, in linux I can make it work, as soon as I reboot, ghost touches again...

Nope, I ended up just dropping a script in init.d. On Windows you could just stick a batch file in start-up.
Sent from my XT1053 using XDA Premium 4 mobile app

Akdor 1154 said:
Nope, I ended up just dropping a script in init.d. On Windows you could just stick a batch file in start-up.
Sent from my XT1053 using XDA Premium 4 mobile app
Click to expand...
Click to collapse
To run it on windows it needs to be ported first.
I found a solution to my specific problem, putting the controller in bootloader mode, reboot to windows(touch doesn't work) and disconnecting the controller. Upon connecting it back the device ghost touches disappeared.
Same method of sticking a controller in bootloader mode works on another(android) device with a similar problem to yours. Try it.

vadimbrk said:
To run it on windows it needs to be ported first.
I found a solution to my specific problem, putting the controller in bootloader mode, reboot to windows(touch doesn't work) and disconnecting the controller. Upon connecting it back the device ghost touches disappeared.
Same method of sticking a controller in bootloader mode works on another(android) device with a similar problem to yours. Try it.
Click to expand...
Click to collapse
From the command line that you using its looks like you used an old version of the utility.
Have you tried the --backup parameter? Its save the config to nvram and making the change permanent.

Ah yeah that was a brain fail on the porting, in my defence it was 7am when I replied I haven't needed to play with it much since this thread was posted, I upgraded to a Moto X at the start of the year. I guess if I could make the config permanent I could happily sell my dz though, so thanks for that
Sent from my XT1053 using XDA Premium 4 mobile app

Hi, i also replaced my digitizer with a replacement and the x-axis is flipped.
How can i modify the driver?
mxt-app does not start: error: only position independent executables (PIE) are supported

Related

[APP]SensorMaze - a little game

I wrote this little program, called SensorMaze. It generates mazes and allows you to steer a little blue dot using the movement sensors in the HTC Diamond. It is based on the original SensorTest program and since it has been a while since I programmed for any PDA, it is a bit simple.
Usage:
Try to send the blue dot to the red dot by tilting your Diamond in the required directions.
Commands:
- New Maze: create a new maze in the same level
- Next Level: increase the complexity.
As mentioned, it is my first attempt, so there is still some work that needs to be done.
TODO:
- Implement timer, so you can compete against yourself
- remove the "Position" text and replace with timer output
- MessageBox instead of Dialog ?
- Replace the blue dot with a "ball" like structure
- Release the source code (after cleaning it a bit more)
Question:
When I try to use MessageBox from my code, the MessageBox fails to close and I can never get back to the Shell without a reset. Any one any idea what I could be doing wrong here ?
Changes ( 07-Aug-2008)
- Replaced the target with a cheese and the moving dot with a mouse icon.
- Added some text to show the current level.
- Initial level is lowered, so that kids could play it too.
Screenshots are provided in the attached .png files. I also added the sources, so that other people can see how you can use the acceleration meter
If you like my applications, consider a donation to Koushik.
After all it is thanks to his (and the many other developers) work and readiness to share it that I can write these programs. I (currently) still get enough satisfaction in writing these programs.
just tested, awsome little game! keep working on this! perhaps add some vibration and sound feedback, maybe change the dots to somthing like a mouse and some cheese? if you changed it to a ball it may be too simaler to teeter?
Adam
cgeboers said:
Question:
When I try to use MessageBox from my code, the MessageBox fails to close and I can never get back to the Shell without a reset. Any one any idea what I could be doing wrong here ?
Click to expand...
Click to collapse
I haven't had any issues using C#.Net ... what are you writing in? The only thing I can think of is to make sure the MessageBox is shown from the same thread that created the form.
Really like the concept - gave it a play, and it works well! Looking forward to new and improved versions!
Great, Cheers dude
Some screens would be nice!
SensorMaze - suggestions
Thanks for the reviews. I will implement the changes, like the mouse and the cheese. I am currently working on an other "gadget" application, as soon as that one is finished I will take care of it.
As for the question about the MessageBox, I use C++ in this program and have a workaround, so I will let it at rest for the moment.
I will try to get some screendumps too later.
cgeboers said:
I wrote this little program, called SensorMaze. It generates mazes and allows you to steer a little blue dot using the movement sensors in the HTC Diamond. It is based on the original SensorTest program and since it has been a while since I programmed for any PDA, it is a bit simple.
Usage:
Try to send the blue dot to the red dot by tilting your Diamond in the required directions.
Commands:
- New Maze: create a new maze in the same level
- Next Level: increase the complexity.
As mentioned, it is my first attempt, so there is still some work that needs to be done.
TODO:
- Implement timer, so you can compete against yourself
- remove the "Position" text and replace with timer output
- MessageBox instead of Dialog ?
- Replace the blue dot with a "ball" like structure
- Release the source code (after cleaning it a bit more)
Question:
When I try to use MessageBox from my code, the MessageBox fails to close and I can never get back to the Shell without a reset. Any one any idea what I could be doing wrong here ?
Changes ( 07-Aug-2008)
- Replaced the target with a cheese and the moving dot with a mouse icon.
- Added some text to show the current level.
- Initial level is lowered, so that kids could play it too.
Screenshots are provided in the attached .png files. I also added the sources, so that other people can see how you can use the acceleration meter
Click to expand...
Click to collapse
have other sensor game.
SensorMaze mouse
I love this little game. However I found that in challenging myself and advancing the game to higher levels, the little white mouse became rather difficult to see as he became smaller. Perhaps changing the colour f the mouse or the colour of the paths in the maze. Currently the mouse and the maze are the same colour. other than that the game is great.
Awesome program, but I feel like I'm epileptic now, the screen was constantly flickering during it, I think it's a compatibility issue with my Raphael.
Awesome program
hmmm...wasn't able to get it working.
Got error (Unable to load Sensor DLL).
Any ideas?
sensor
unable to load DLL? can u tell me how to fix it?
that's a fun little game, thanks
Nice man : D
Hi, when i try to lunch the game, i got sensor dll, what shell i do to run the game ? i have samsung omnia i900
fadoody said:
Hi, when i try to lunch the game, i got sensor dll, what shell i do to run the game ? i have samsung omnia i900
Click to expand...
Click to collapse
you need to replace the sensor.dll file with the Samsung's...it is preinstalled with HTCs. Change that file and it should work fine.
I replaced sensor.dll with Samsung's .. but the problem is still persisting.. what shall i do now?
It would be nice if this could work on our LGs.
(the working LG sensors.dll created by iamspv at thread number 471591 in this forum.)

[Q] Compiling PSFreedom for Blackstone?

PSFreedom's recent port to various Android devices using the msm72k chipset got me thinking. Has anyone taken a look at building it for the HD?
I currently use an X10 which unfortunately isn't supported but I have a Blackstone lying around that would be perfect. The hardware *should* be able to handle it but I have no clue how to even begin.
I can cross-compile modules for my X10 and so on but that's about it. I have no experience building a working kernel, the external module and finally making boot images for use with haret.
Anyone working on it?
ddewbofh said:
PSFreedom's recent port to various Android devices using the msm72k chipset got me thinking. Has anyone taken a look at building it for the HD?
I currently use an X10 which unfortunately isn't supported but I have a Blackstone lying around that would be perfect. The hardware *should* be able to handle it but I have no clue how to even begin.
I can cross-compile modules for my X10 and so on but that's about it. I have no experience building a working kernel, the external module and finally making boot images for use with haret.
Anyone working on it?
Click to expand...
Click to collapse
for educational purposes only..
oNNoZeLe said:
for educational purposes only..
Click to expand...
Click to collapse
Naturally.
So after some intense googling I've worked out a plan but I have some questions on compiling and assembling images. The plan goes like this:
Since I don't use the device as an actual phone I'm not bothered about losing things like making phone-calls or things like that. So I'll probably used a stripped down version of Donut or Eclair depending on whichever's the easiest.
Any recommendations on guides for compiling custom kernels, building external modules and preparing the kernel for use with haret?
I've set up toolchains for building Donut modules in the past and earlier I got a Blackstone toolchain set up from a guide over at www.androidonhtc.com but then I got stuck. Any help would be much appreciated, I've been at this way too long now.
Thanks
This would rock..
Sent from my MSM using XDA App
I would also love to see this happen.
I maybe wrong, but currently the Android releases are setup on the Blackstone it doesnt give you access to the card (for files) or USB connection (for transfer) yet as it's still in an unstable state...?
the battery issue is keeping me away from android.
usb connection is not there and access to card is not there from pc .
but access to card is there... using terminal emulator.
to check the usb config , i copied config.gz from /proc folder to /sdcard and copied it back while using windows..
so if the activsync type of connection is not there to put or get the files... that can still be done thru winmo... unless it is also hindering some other functionality that i'm not aware of
edit:
i'm using Android 2.2 (FroYo) On HTC [03 Sep 2010] (V1.6)
sunish said:
the battery issue is keeping me away from android.
usb connection is not there and access to card is not there from pc .
but access to card is there... using terminal emulator.
to check the usb config , i copied config.gz from /proc folder to /sdcard and copied it back while using windows..
so if the activsync type of connection is not there to put or get the files... that can still be done thru winmo... unless it is also hindering some other functionality that i'm not aware of
edit:
i'm using Android 2.2 (FroYo) On HTC [03 Sep 2010] (V1.6)
Click to expand...
Click to collapse
I have atleast ADB working over USB but it requires that I boot with the cable plugged in. So USB works, but I don't know to what extent.
ddewbofh said:
I have atleast ADB working over USB but it requires that I boot with the cable plugged in. So USB works, but I don't know to what extent.
Click to expand...
Click to collapse
did you try droid explorer? several things work with ADB enabled..
I have a lot of time on my hands, but no knowledge of what needs to be done in order to work out how to get this working.
Is there any system already ported that we can look at that has similar devices to the Blackstone - perhaps the HD2?
If not, if someone can advise on what needs to be worked out, I dont mind putting the time in.
DejaVu1977 said:
I have a lot of time on my hands, but no knowledge of what needs to be done in order to work out how to get this working.
Is there any system already ported that we can look at that has similar devices to the Blackstone - perhaps the HD2?
If not, if someone can advise on what needs to be worked out, I dont mind putting the time in.
Click to expand...
Click to collapse
did you check one of the other threads on "getting this to work on XDA?"
I've been on checking XDA-Dev (as well as other sites) since the release of psgroove/psfreedom for updates.
I've been watching all the other devices getting ported too (Nexus One, Bravo, Dream, Desire, Sapphire, TI-84+ (CALCULATOR!), Dingoo), but really dont know where to start for the Blackstone - which has been dishearting as the Teensy++ boards are sold out worldwide!
But surely, if a calculator can do it...!!
Supposedly, the USB Device is the same as the others (MSM72K) that have already been ported. It just needs to be written into the psfreedom code I guess and run a certain way depending on the system the Blackstone would use.
I dont think Windows Mobile has 'root access' so hence the use of Android via Haret. Although it's not stable as such, I think it should be sufficient to run this (if possible through Haret?)
Some of this may seem like complete crap - but I will be the first to admit, I dont know what I'm talking about. It's just the gist I'm getting from surfing the internet over the last few days.
From what I gather, all the (hardest?) work has been accomplished (it's proven it can work with Android!) and I'm sure the Dev's that have completed it will share their findings to help other devices to work?
Also, looking through most the forums on here, Blackstone being THE most popular, I think the port would be appreciated by a lot more people.
The reason that Blackstone is the most popular IMHO is that Windows Mobile running on it is terrible. When I got mine originally from O2, the ROM was sooo slow. The great work the Chef's do on here are appreciated by thousands as they are making the phone usable again. Bring on Adroid for this phone... IT NEEDS IT!!!
If it's pointed out what needs doing. I'll happily do it - I've flashed my phone sooo many times lately, a few more wont hurt!
It'll be Awesome!!!!
I was under the impression that Blackstone has MSM72K (reference to which I found in a very old thread.
following is the text form config.gz which uses MSM_HSUSB
so only a ROM chef can tell us which driver is used in blackstone.
We can only request all the developers on this site to look into this and guide us.
Code:
# USB Function Support
#
CONFIG_USB_FUNCTION=y
CONFIG_USB_FUNCTION_MSM_HSUSB=y
# CONFIG_USB_FUNCTION_NULL is not set
# CONFIG_USB_FUNCTION_ZERO is not set
# CONFIG_USB_FUNCTION_LOOPBACK is not set
CONFIG_USB_FUNCTION_ADB=y
# CONFIG_USB_FUNCTION_UMS is not set
CONFIG_USB_FUNCTION_MASS_STORAGE=y
# CONFIG_USB_FUNCTION_DIAG is not set
CONFIG_USB_FUNCTION_ETHER=y
CONFIG_USB_FUNCTION_RNDIS=y
# CONFIG_USB_FUNCTION_FSYNC is not set
# CONFIG_USB_FUNCTION_SERIAL is not set
# CONFIG_USB_FUNCTION_PROJECTOR is not set
# CONFIG_USB_FUNCTION_MTP_TUNNEL is not set
http://forum.xda-developers.com/showthread.php?t=777120 The HD2 get a haret Port
It doesn't work on a HTC Touch HD T8282, Won't boot. I think, as a WM6.1 phone it can't be rooted.
HD1
sunish said:
I was under the impression that Blackstone has MSM72K (reference to which I found in a very old thread.
following is the text form config.gz which uses MSM_HSUSB
so only a ROM chef can tell us which driver is used in blackstone.
We can only request all the developers on this site to look into this and guide us.
Code:
# USB Function Support
#
CONFIG_USB_FUNCTION=y
CONFIG_USB_FUNCTION_MSM_HSUSB=y
# CONFIG_USB_FUNCTION_NULL is not set
# CONFIG_USB_FUNCTION_ZERO is not set
# CONFIG_USB_FUNCTION_LOOPBACK is not set
CONFIG_USB_FUNCTION_ADB=y
# CONFIG_USB_FUNCTION_UMS is not set
CONFIG_USB_FUNCTION_MASS_STORAGE=y
# CONFIG_USB_FUNCTION_DIAG is not set
CONFIG_USB_FUNCTION_ETHER=y
CONFIG_USB_FUNCTION_RNDIS=y
# CONFIG_USB_FUNCTION_FSYNC is not set
# CONFIG_USB_FUNCTION_SERIAL is not set
# CONFIG_USB_FUNCTION_PROJECTOR is not set
# CONFIG_USB_FUNCTION_MTP_TUNNEL is not set
Click to expand...
Click to collapse
Afaik msm72k and msm_hsusb are different drivers for the same hardware. The kernel in use for the Blackstone port is 2.6.27 and it uses msm_hsusb. Newer kernels are probably different.
psfreedom-for-htc-touch-pro1-2diamond-1-2
Look at this site, you got to copy 3 things and you must have Xandroid 2.2
h**p://howtohackps3.com/psfreedom-for-htc-touch-pro1-2diamond-1-2-is-now-available/
^^ will try it once i get home
It Works !!!!
Yeah Yeah Yeah !!
good temp solution.
as u need to connect the phone to pc when android is booted.
will wait for dongle's price to fall down

Can someone support the USB GPS

Though Iconia has gps inside, but I don't think it can receive the satellites faster than the usb gps. I've got one for my laptop and works fine. But the notebook is too heavy, so can someone to let the pad support the usb gps?
Specifiction:
Model Nr:BU-353
development information:http://www.usglobalsat.com/forum/index.php?PHPSESSID=ja5juv3c1rc9d7npsoi4f9lvq3&topic=3408.0
use BlueGPS4Droid if you dont like the internal gps function.
that has been used for ages on tablets without gps.
Dexter_nlb said:
use BlueGPS4Droid if you dont like the internal gps function.
that has been used for ages on tablets without gps.
Click to expand...
Click to collapse
But I want usb GPS not a bluetooth one.
liu2002 said:
But I want usb GPS not a bluetooth one.
Click to expand...
Click to collapse
i dont think any android software support it, at least something i seen..
earthmate-lt40
I would love to use my earthmate USB GPS as well.its super fast lock with precision accuracy on my notebook.in the thread mentioned by Dexter there is possible solution if you know some programing.but no talk there about the earthmate one.there are alot of people interested in a module for this a Dec could make some moneyi do think hint hint
Giggles
erica_renee said:
I would love to use my earthmate USB GPS as well.its super fast lock with precision accuracy on my notebook.in the thread mentioned by Dexter there is possible solution if you know some programing.but no talk there about the earthmate one.there are alot of people interested in a module for this a Dec could make some moneyi do think hint hint
Giggles
Click to expand...
Click to collapse
important is: can you find regular linux support for it? then we can probably use it here too. otherwise not, so if you search and find references to it..
post it, and i can look at your links for linux support if such exists..
source
http://cateee.net/lkddb/web-lkddb/USB_SERIAL_CYPRESS_M8.html
not sure if this will help bilut I think its what you are asking for
Have you tried the fix in this thread here?
http://forum.xda-developers.com/showthread.php?t=1103585&highlight=gps+fix
yes that works withbthe internal gps.
Yes I have done that and it does help with the internal GPS.but I would like to get my GPS USB reciever to work.it locks quick and can be put on top my van.
Does anybody run the code:
Code:
su root
stty -F /dev/ttyUSB0 ispeed 4800 && cat < /dev/ttyUSB0
I ran it and it works like gps status in windows. GPS can get the data but how to let the system to know these data.
I drive with my tablet and gps all the time and it works great!
I mean how fast do you need it to be?
Dexter_nlb said:
use BlueGPS4Droid if you dont like the internal gps function.
that has been used for ages on tablets without gps.
Click to expand...
Click to collapse
Hem, finally vindication for not having thrown out my Pharos USB GPS receiver with its Bluetooth cradle for my old WinMo phone
liu2002 said:
Does anybody run the code:
Code:
su root
stty -F /dev/ttyUSB0 ispeed 4800 && cat < /dev/ttyUSB0
I ran it and it works like gps status in windows. GPS can get the data but how to let the system to know these data.
Click to expand...
Click to collapse
Can do a
Code:
hexdump -c /dev/ttyUSB0
and show us what kind of data you have
I suppose standard NMEA sentences (GGA / RMC / ...). In that case we can perhaps do something...
If you could also do a
Code:
stty -a -F /dev/ttyUSB0
it would also give us more informations
herbert1 said:
Can do a
Code:
hexdump -c /dev/ttyUSB0
and show us what kind of data you have
I suppose standard NMEA sentences (GGA / RMC / ...). In that case we can perhaps do something...
If you could also do a
Code:
stty -a -F /dev/ttyUSB0
it would also give us more informations
Click to expand...
Click to collapse
I am sorry that I thought my thread had been abandoned. So I didn't see your reply. Now I use galaxy 1.05 and I try to run the code you give to me. However this rom can not recogize my gps, the acer original rom (HB3.0 can). So I can not test the code. Or I should PM M-dj to add the support for the PL2303(usb to serial) and this can let the pad to find my gps.
Here is a quick and dirty adapted version of BlueGPS4droid in order to read NMEA data from a file/device.
Instead of giving the name of a bluetooth device you have to give the path of a file.
Don't know if it will work: since I don't have any usb Gps, I cannot test.
However it's working with plain files, so I hope it will also work with /dev/ttyUSB0.
You should be able to see on the logcat if it recognizes NMEA sentences or not.
If you can post a copy of the logcat it could be useful for me.
If it's working, I will put the code in a new repository (forked from BlueGps4Droid), clean the code, re-inject other languages and advanced functionalities we have inblueGPS4droid, etc.
How to use it :
0) plug the GPS usb device
1) allow GPS use, if possible (don't know if you can)
2) enable mock locations in "Settings/Applications/Development/Allow mock locations" (It's important !)
3) start UsbGps
4) choose a NMEA device (device path: ako /dev/ttyUSB0 - it has to be readable ! )
5) eventually activate "auto-enable location provider" in "location provider options" (useful if you cannot enable "Use GPS satellites" option (in step 1)
6) start the service using the start checkbox
7) look if something happens in the logcat...
Do you have an android phone? ShareGPS from the market will turn your phone into a Bluetooth GPS device, then use the aformentioned BlueGPS4Droid to connect to the phone for its GPS. Also ensure you have enabled Mock Locations on your tablet, and set up a internet share from your phone if the tablet doesn't have it itself.
I used this on a trip recently and it works great. My Inc2 shared its GPS and Internet link with the Iconia. I really like the ability to use the Inc2's superior GPS through the tablet with its 10 inch screen. We all know the Iconia has a lower than Subpar GPS implementation.
I looked around for a way to use the LT40 from Delorme on the Iconia and couldn't find anything good.
herbert1 said:
Here is a quick and dirty adapted version of BlueGPS4droid in order to read NMEA data from a file/device.
Instead of giving the name of a bluetooth device you have to give the path of a file.
Don't know if it will work: since I don't have any usb Gps, I cannot test.
However it's working with plain files, so I hope it will also work with /dev/ttyUSB0.
You should be able to see on the logcat if it recognizes NMEA sentences or not.
If you can post a copy of the logcat it could be useful for me.
If it's working, I will put the code in a new repository (forked from BlueGps4Droid), clean the code, re-inject other languages and advanced functionalities we have inblueGPS4droid, etc.
How to use it :
0) plug the GPS usb device
1) allow GPS use, if possible (don't know if you can)
2) enable mock locations in "Settings/Applications/Development/Allow mock locations" (It's important !)
3) start UsbGps
4) choose a NMEA device (device path: ako /dev/ttyUSB0 - it has to be readable ! )
5) eventually activate "auto-enable location provider" in "location provider options" (useful if you cannot enable "Use GPS satellites" option (in step 1)
6) start the service using the start checkbox
7) look if something happens in the logcat...
Click to expand...
Click to collapse
According your steps, gps running, but it seemed not get the data. No gps searching notification icon flashed and in the log data I don't see any thing. The information in my pm is not correct. I use the wrong device folder. But changed back to \dev\ttyUSB0, I can connect but no data.
Nova5 said:
Do you have an android phone? ShareGPS from the market will turn your phone into a Bluetooth GPS device, then use the aformentioned BlueGPS4Droid to connect to the phone for its GPS. Also ensure you have enabled Mock Locations on your tablet, and set up a internet share from your phone if the tablet doesn't have it itself.
I used this on a trip recently and it works great. My Inc2 shared its GPS and Internet link with the Iconia. I really like the ability to use the Inc2's superior GPS through the tablet with its 10 inch screen. We all know the Iconia has a lower than Subpar GPS implementation.
I looked around for a way to use the LT40 from Delorme on the Iconia and couldn't find anything good.
Click to expand...
Click to collapse
I beg to differ.my Ionia gets GPS connection under 7 seconds.try this it worked for me
http://forum.xda-developers.com/showthread.php?p=17668407
Sent from my A500 using xda premium
I support it!
liu2002 said:
According your steps, gps running, but it seemed not get the data. No gps searching notification icon flashed and in the log data I don't see any thing. The information in my pm is not correct. I use the wrong device folder. But changed back to \dev\ttyUSB0, I can connect but no data.
Click to expand...
Click to collapse
I don't have any usb GPS, so I cannot test anything myself! If you want something I will need a little more informations.
So here are some little things you can do to provide more details.
First you can verify if you receive something from your usb GPS:
Connect your android device to you computer and open a command shell on your android device using
Code:
adb shell
Then you can use
Code:
hexdump -c /dev/ttyUSB0
to display what the gps is sending (replace /dev/ttyUSB0 with your usb gps dev). You should see standard nmea sentences...
If you don't see valid nmea sentences you can use
Code:
stty -a -F /dev/ttyUSB0
to obtain more informations on your dev.
You can also verify read/write access rights of the device
Code:
ls -l /dev/ttyUSB0
We need at least read access. If we don't then you will need to root the android device in order to be able to change the access rights on the dev.
If the hexdump command works well then you can run usbGps and use the
Code:
logcat
command to obtain more informations on what happens in the the usbGps app (it would help me a lot!).
Also if usbGps doesn't work it should display a notification (not very useful but it can help a little).
Herbert
PS: the name of the device should really be something like /dev/ttyUSB0 with "/" not "\", so if you try to use "\dev\ttyUSB0" as your device name il will not work and it's normal.

Developing Auto-DisableRefresh-When-Dragging App [New Video Added]

I know some people have already discussed this in the noRefresh App thread.
But I got a new idea
I don't wanna create a module and embed that to applications
Instead, I created a new Input Device in the kernel
After that, I set the device ( dev/input/event3 ) permission to allow read / write for others.
Then, write an app using JNI to catch the Input Device and set the mode of refreshing.
The prototype proved that this idea works, as i worked out it already, but not very perfect, still in experiment
I am just in some problems of threading, as I am not a professional programmer
This is wt i have now:
http://www.youtube.com/watch?v=GkFyvRR6In8
NEW!! : http://www.youtube.com/watch?v=cucG03rg3tg
I know that my method is a bit dirty,
but at least it works XD
I hope that someone would like to help
Upload those code soon
By the way, why can't i change content of init.rc ?
It removes my changes after reboot..... How to solve?
wheilitjohnny said:
By the way, why can't i change content of init.rc ?
It removes my changes after reboot..... How to solve?
Click to expand...
Click to collapse
You need to modify uRamdisk to change init.rc.
Would you like to tell me how to unpack the uRamdisk? I use both Windows and Ubuntu, any methods on these two platform is ok. Thanks!
Try the script from this post http://forum.xda-developers.com/showpost.php?p=24135886&postcount=72
This is simply amazing. Since you already have it working, polishing it shouldn't take too long (I think, I'm still a beginner programmer).
I don't think /dev/input is a good place to park that.
There are any number of things that could show up there and affect order.
Why not put it in its own directory?
Maybe I'm missing something, but if we use your method you still expect applications to have to be modified to read/write from event3 to control display mode?
As it is now, you only need a single function call to switch display modes. Yes, there is a little bit of housework to do before that, but what could be simpler than a single function?
I think no place else is more suitable than /dev/input.
As /dev/input is the linux kernel's input system.
In the driver, I would only use the input report system but not use the I/O system.
Maybe even setup a input/event searching function to solve the problem later.
The case now is that, the touch screen originally just provide event2,
but if we need to extract move and fingerup information on upper level, it may waste some time.
In order to make the whole algorithm easier and faster, I added 1 more event in the zForce driver,
to only output FingerMove and FingerUp state.
As the reporting system is starting from the kernel, this hack would need to change uImage + uRamdisk + Add an App. The project is quite huge.
My final target is to make the application remembering your choice on what mode u need for the focusing application.
AlwaysOn / OnlyWhenDragging / AlwaysOff, so on.
Of coz the click-to-call function still work.
Isn't it a better workflow and more intuitive, isn't it the thing that we would expect?
I already have an dev/input/event3 on my system and sometimes event4, 5, 6.
That's why I don't think that whatever it is you are doing belongs there.
Is the point to allow coders for user applications to interface with your driver?
Is this supposed to work without modifying user applications?
What information would be going in/out of event3?
Clearly I am missing something here.
Actually not necessary to be event3, the system will auto-ly create a new eventx, just in normal case, without any extra USB devices, a nook should only have up to event2. So, I use event3 as an example here.
We can later make the program auto-ly search back which is the needed eventx.
Yes, u r right, we no need to modify any other applications and this is exactly the point y i am creating this!
Anyone know how to call a FullScreen Refresh in a service?
always on?
Look really great. Since blinking after scrolling is incomfortable is it possible to have also "always on " mode using your new ideas?
My final target is to make the application remembering your choice on what mode u need for the focusing application.
AlwaysOn / OnlyWhenDragging / AlwaysOff, so on.
Of coz the click-to-call function still work.
Also an Over-Ride mode, for more flexible using.
But the most basic part need to be handled well now, as it is not very perfect now.
I still don't figure out how to call the e-ink driver to refresh the screen =-=
wheilitjohnny said:
I still don't figure out how to call the e-ink driver to refresh the screen =-=
Click to expand...
Click to collapse
Have you tried
Code:
echo 1 > /sys/class/graphics/fb0/epd_refresh
?
wheilitjohnny said:
Yes, u r right, we no need to modify any other applications and this is exactly the point y i am creating this!
Click to expand...
Click to collapse
Are you saying that your idea does not require modifying user applications?
If it doesn't, then there is no need to have a public interface.
It will be only your code talking to your code.
What is the point of this /dev/input/event3? You say that it will be writable. What's going in and out?
Some apps will be using gestures, some dragging. How are you going to keep track of that all?
I have one application that works perfectly fine now, one activity uses swipe gestures to page up/down while another activity uses drag with a user choice of A2 and display while dragging or else only panning at ACTION_UP.
All this requires less than 10 lines of code.
With multitouch, many applications don't even need A2. Even normal panning in Opera Mobile works much better now that Opera doesn't try to display while panning.
Maybe my english is too bad, cannot express the idea well.
I know, we can make such an application with noRefreshDrag working on its own well.
But how about other applications, it is impossible for us to change all applications.
So, my idea is making it system based.
My prototype is very good now, after several adjustment.
Not limited to only 1 application, but the whole system.
The approach is like this:
1. zForce driver provide extra information to InputEvent
2. A JNI catch the InputEvent
3. A service get the data and set the update mode
We only need to write 1 application to handle the setting of this chain.
This is what i mean, hope that u get what i mean now.
mali100 said:
Have you tried
Code:
echo 1 > /sys/class/graphics/fb0/epd_refresh
?
Click to expand...
Click to collapse
Let me try it now!
wow, it works great
wheilitjohnny said:
zForce driver provide extra information to InputEvent
Click to expand...
Click to collapse
I guess that this is the part that I don't understand.
What is this extra information?
Renate NST said:
I guess that this is the part that I don't understand.
What is this extra information?
Click to expand...
Click to collapse
It created an extra Event, l called it Event3 before.
Driver reports only move and finger_up to Event3.
Just providing a channel to pass an information from driver to user-space.
You may ask why not directly using the existing Event, need to create another one.
That is because, the original one only have touch and position information, parsing them back to move information need a bit of work. As the hardware provided the move information, then don't waste it.
Code:
public boolean dispatchTouchEvent(MotionEvent event)
{
switch(event.getAction())
{
case MotionEvent.ACTION_DOWN:
break;
case MotionEvent.ACTION_MOVE:
break;
case MotionEvent.ACTION_UP:
break;
}
return(true);
}
}
Isn't that everything that you could ask for?

Everything to know about Nokia Care Suite and Flashing Lumias

As there has been little progress made, I thought I could get the ball rolling myself. The purpose of this is to find a way to execute AT commands either on the device or via USB (for internet tethering purposes/general phone modification), and to discover how the bootloader works to devise a method to install a custom rom, or just installing unbranded/different roms for the same device, but different product code.
As a note before starting this, is my first device that's a Nokia, I'm taking this as a shot completely in the dark.
I haven't had any experience with Navifirm nor any of the Nokia utilities used in the past to flash either Symbian or WP7 devices, but I'm quickly learning.
PREREQUISITES:
http://www.seidea.com/2013/08/10/how-to-download-nokia-firmware-with-nokia-care-suite/ (the edited usergroupsconfiguration.cfg file)
http://www.seidea.com/2013/07/14/nokia-care-suite-pst-5-0-2013-27-1-3/ (the latest version of the Nokia Care Suite - 5.0 2013.27.1.3)
The USB drivers need to be installed first. The WinUSB drivers that were included are the only drivers that seem to apply to this device, but I went ahead and installed all the drivers in D:\Program Files (x86)\Nokia\Nokia Care Suite\Drivers
Driver Level Stuff
There are still a few devices shown without a driver. Here's the list
Code:
USB\VID_0421&PID_0660&REV_0100&MI_03 + USB\VID_0421&PID_0660&MI_03
USB\VID_0421&PID_0660&REV_0100&MI_06 + USB\VID_0421&PID_0660&MI_06
USB\VID_0421&PID_0660&REV_0100&MI_02 + USB\VID_0421&PID_0660&MI_02
USB\VID_0421&PID_0660&REV_0100&MI_01 + USB\VID_0421&PID_0660&MI_01
USB\VID_0421&PID_0660&REV_0100&MI_00 + USB\VID_0421&PID_0660&MI_00
I have no idea whats the purpose of these devices and using the driver update inside of Device Manager, it couldn't find anything.
Using my google-fu gave no results either.I could use some help in this department.
The following two are listed as Nokia USB Connectivity (which pst uses to run diagnostics)
Code:
USB\VID_0421&PID_0660&REV_0100&MI_04 + USB\VID_0421&PID_0660&MI_04
USB\VID_0421&PID_0660&REV_0100&MI_05 + USB\VID_0421&PID_0660&MI_05
which have the following files listed: winusb.sys WdfCoInstaller01009.dll and winusbcoinstaller2.dll
EDIT: found what the following devices functions are
ultrashot said:
Test mode devices:
MI_1 = MODEM
MI_2 = NMEA
MI_3 = TRACE
MI_4 = NOKIA_JSONRPC
MI_5 = NOKIA_ISI
MI_6 = DIAG
Click to expand...
Click to collapse
ultrashot said:
[Mi_4] uses a generic remote control protocol used by NCS (All the data shown in NCS is retrieved using JSONRPC). Contains functions like WriteNvData, WriteEfsFile, ReadManufacturerModelName, SetDeviceMode etc. Commands are in json form.
There is an old post with example of command: http://forum.xda-developers.com/showpost.php?p=35256188&postcount=8
Same protocol is supported in MainOS device mode. Some of operations have different names, but in general it is the same.
Click to expand...
Click to collapse
The following is a walk-through for initiating these protocols
ultrashot said:
How to Access a USB Device by Using WinUSB Functions
Click to expand...
Click to collapse
NOTE: The link above is not for the faint of heart. Its a link to a MSDN library. The walk-through assumes that you understand Windows already and have some background in programming.
The following process is the diagnostics TEST mode. It mostly relates to various hardware tests, like color pallets and tone generators.
So far, I have installed it on Win8Pro and started the Product Support Tool For Store. I then switched the product mode from Normal to Test and reboots into something that looks like a bootloader menu.
Since the text is blurry, It says:
NOKIA
ENOSW
RM680 1232.5957./9200.10211
181341 2013/02/28
RF INACTIVE​
When it has reconnected in the phone information tab, this is shown.
Code:
Software Version (Test) RM860 1232.5957.9200.10211 181341 2013/02/28 //alpha_engine/ENO_LASER_F3
Software Version (Normal) 1532.5957.1318.3021
Product Code 059R224
Software Status Up-to-date
NCSd Version (Normal) 1.24
Module Code 0205229
Basic Product Code 059N5M4
PSN Number CGQ790279
Hardware Version 1000
Bluetooth Id ************
Public Id ****************************************
Wlan Mac Address ************ ************ ************ ************
Label App Version (Test) Security LabelSW 4.24.0.55964
Hardware info
===========
MAIN ASIC
Main Asic Version 4.1
POWER ASIC
Pmic Model 1
Pmic Number 0
Pmic Revision 4
NFC
Firmware Version 1.26
Hardware Version 0.3
Model Id 0.1
DISPLAY
Manufacturer 0xFE
Display Type 0x90
Display Consecutive Number 0xBC
Display Horizontal Resolution In Pixels 768
Display Vertical Resolution In Pixels 1280
MAIN CAMERA
Model Id 18497
Revision 0.2
Serial Number 0A0101AE00000000
Manufacture Id 16
Sensor Id 10484100
FRONT CAMERA
Model Id 27184
Revision 3.0
Serial Number 0115323500000000
Manufacture Id 10
Sensor Id 0A6A3003
CAMERA FLASH
Hardware Design 18
Hardware Version 4
Flash Info 1 46
Flash Info 2 17
ACCELEROMETER
Manufacturer KIONIX
Model KXTNK-1000
ALS
Manufacturer AVAGO
Model QPDS-T900
PROXIMITY
Manufacturer AVAGO
Model QPDS-T900
Test Tab
When in this mode, the following options may be performed in NCS.
Self Test:
Test audio components, the accelerometer (gives positioning), gyroscope (same), the magnometer(gives positioning as well), the proximity sensor (pass/fail for if it works or not), nfc and its antenna, wlan, bt interface, temperatures (in Celsius) for Bluetooth, pa and osc (whatever those parts are), the display interface, the touch interface, camera interface and ois (idk what these are besides odd x,y values) and miscellaneous flash tests (which include a xenon charging time and its lifetime counter.
Touch Display Test:
Gives x and y coordinates for a single touch point.
Display Test:
Displays a white pattern, a black pattern, a checkerboard pattern, and different rgb shades with black.
Vibra Test:
Vibrates the phone based on percentage.
SIM Test:
Checks if a SIM card has been inserted. (fails with Verizon shipped sim EDIT: Now succeeds since PST update) It also is supposed to perform something else, but can't validate.
Mic Test:
Records and plays audio back through various inputs and outputs.
Accelerometer Test:
Gives "gravity" data in x,y,z format.
Audio Output Test:
Plays four tones through various outputs at three different volumes.
Another interesting thing: When powering off the phone and turning it back on, Windows attempts to find drivers for "Nokia BOOTMGR", but it occurs too quickly to install.
Can someone with experience with Nokia other phones contribute assistance? It seems like I'm just meddling with NCS and I could possibly brick my main phone. (I was told to only install the ffu it was designed for.)
Flashing ffus from the same device, but using a different product code
I haven't been around to know enough, and its unknown if the Lumia 928 will be launched on any different carrier or in a different country.
Anyways I'll quote snickler's post to summarize.
snickler said:
Hi All,
I've spent the past 4 days looking for a solution to get the Amber Update on my AT&T Branded Lumia 920 without installing a European ROM and changing to RM-821. After searching endlessly, I've found my solution that works!
Prerequisites
* Nokia WP8 Drivers
* Nokia Care Suite 2013.13.4.4
* WperHelper v1.2 Note: This is in Chinese. I don't know Chinese AT ALL, but I've been able to figure my way around the app
* Rogers Pre-Poritco ROM. Download the last group of files for Roger, not the AT&T ones.
Steps:
* DONT PLUG IN YOUR PHONE YET TO THE COMPUTER.
* Extract/Install Nokia Care Suite. Open Care Suite when it's done installing and just put it to the side
* Install WperHelper. It's all in chinese, but the buttons should be easy to navigate through
* Download the last group of files for the pre-portico ROM if you haven't done so already.
* Go to the Run menu on your system and go to "C:\programdata\nokia\Packages\Products". Create a new folder named "RM-820". If you already have files in here from a previous ROM installation, move them somewhere else. The group of files you downloaded for the Pre-Portico ROM will need to be moved inside of this folder.
* Rename the pre-portico files removing the checksum from beginning of the file name.
Here's what you should have as files
* RM820_1232.2109.1242.1002_RETAIL_nam_canada_200_02_100347_prd_signed.ffu
* RM-820_RM-821_RM-822_TypeLabel_Group1_DM_5.33x5.33_CoO_Eng__001.xml
* CustomerNvi_31019d17537fb461136cdf3481825681_12421_100343_8410.nvi
* RM820_059R2L8_1232.2109.1242.1002_039.vpl
* 112545v3.pcx
* RM820_059R2L8_1232.2109.1242.1002_039.dcp
* RM820_059R2L8_1232.2109.1242.1002_039_signature.bin
* RM820_059R2L8_ccc_v039.bin
* RM820_059R2L8_hwt_v039.bin
* NWP8_WP8_Rogers_Fido_simlock_crcFCB5.bin
* DC_template_development_v4.bin
* Go back to NCS and double click on the Product Support Tool. If you don't see the little menu with the choices of apps to install, go to "C:\Program Files (x86)\Nokia\Nokia Care Suite\Product Support Tool For Store 5.0" and click on ProductSupportToolForStore.exe (Make sure the icon is an arrow. We don't need to open the .MANIFEST file).
* When the Sign in popup comes on the screen. click Work offline.
Click File -> Open Product and type in RM-820 in the filter then press Open
* At the bottom left panel, click on Programming -> Recovery.
* In the Properties listing, you should see 059R2L8 RM-820_Rogers_Canada_VAR240202_V2_Yellow 1232.2109.1242.1002
* Click on that line that shows the data that I listed above then click the Start button.
* Plug in your phone to the USB now, hold the Vol-Down + Power buttons until the phone restarts and you hear a vibration.
* When you hear the vibration, press Retry.
* You should see a little menu saying that the Product Code doesn't match, press Okay to continue.
* Let it flash.
* After the phone has flashed, set it up, but don't login to your Microsoft account yet (It's pointless at this point). Configure Wi-Fi though.
* Go to Settings -> Phone update and check for updates. The first round of updates will put you on to Portico.
* After these updates go through (It will take forever for it to finish Preparing to Install), you'll have to check for updates two more times in order to install Nokia Updates.
* After these two extra updates, your phone will be up to date.
* Now comes the fun part. Open up the WperHelper that you installed earlier.
* On the Top group of text links(The bigger text), chose the second one from the left. It should bring up a screen with 4 drop downs.
* From left to right, choose the following as values: Nokia, Lumia 920, RM-820, 3047.0000.1326.2001.
* Click on the 059R2L5 button that is located under the first dropdown. At the bottom right part of the screen, you'll see a download icon (downward facing arrow with a line underneath of it). Click it.
* This will start to download the ROM. When complete, Click on the Top group of text links, click on the third one then click on the second smaller text link underneath of it.
* You should see bbs.wper.com_059R2L5.7z. Click on it then click the lightning bolt on the bottom left corner. This will extract the FFU package.
* After it's complete, you'll see a new screen with a picture of a Windows phone and a bunch of Chinese text (I wish I had a translation). At this point you'll want to click the button that is listed directly under ( Step ).
* This will automatically begin the ROM updating process. You'll be able to see a little log running at the bottom of the screen on whether the Flashing is working or not.
* The place where the Windows Phone is showing will display the actual progress of flashing as it appears on your phone. You should be seeing the red screen with the progress bar on your windows phone by now. If this happens for you, then you're on your way to having the Amber Update.
A few things to note
After fully flashed, it'll bring you back to the typical phone set up screen. After you get to the main homescreen, wait a minute or so because it will require a reboot. After you bring the phone back up, go to Settings -> Access Point and choose AT&T - LTE 2 - Lumia. This will set up the MMS and Data settings correctly.
Have fun!
Click to expand...
Click to collapse
Photos/Screenshots will be posted later.
Thanks for reading the long post!
Nokia Software Updater for Retail
This is a SIMPLE tool that will allow a user to reflash/update his device. It has a checkbox that can be unchecked to prevent it to erase user data.
It can be downloaded from seidea.com
To be covered:
Nokia Data Package Manager
Test mode itself isn't really interesting AFAIK. There are plenty of other bootloader modes which may sound more interesting.
ultrashot said:
Test mode itself isn't really interesting AFAIK. There are plenty of other bootloader modes which may sound more interesting.
Click to expand...
Click to collapse
Well, the purpose is a catch all tutorial, to access features of the phones not normally available to all. My first venture was the NCS, but as more is discovered, it will be covered in the things to do.
I updated the OP with the new Nokia Care Suite that's been available for a while. Also, I'm going to start to look into some of the Qualcomm MSM Mode soon. Hopefully someone has documented info how that whole process works. I'm looking at you AdvanceBox (the "first" external software/hardware that will flash the Lumia 928...)
Well, it isn't hard to trigger different USB modes. "Nokia USB Connectivity" device is WINUSB compatible. But Qualcomm Diagnostics Mode device available in Test mode (there are no drivers, but you may edit existing ones...) isn't working well since it is restricted. Although, SPC seems to be 000000, but it isn't enough.
Useful addon for you. Test mode devices:
MI_1 = MODEM
MI_2 = NMEA
MI_3 = TRACE
MI_4 = NOKIA_JSONRPC
MI_5 = NOKIA_ISI
MI_6 = DIAG
as for
Another interesting thing: When powering off the phone and turning it back on, Windows attempts to find drivers for "Nokia Bootloader", but it occurs too quickly to install.
Click to expand...
Click to collapse
you're definitely talking about Nokia BOOTMGR. It has commands to boot into different modes, and it is indeed possible to make phone stay in this mode. However, overall it isn't interesting.
ultrashot said:
MI_4 = NOKIA_JSONRPC
Click to expand...
Click to collapse
ultrashot, do you know what is that mode for? The mode name sounds interesting ("remote procedure call via JSON requests"?)
sensboston said:
ultrashot, do you know what is that mode for? The mode name sounds interesting ("remote procedure call via JSON requests"?)
Click to expand...
Click to collapse
It is generic remote control protocol used by NCS (All the data shown in NCS is retrieved using JSONRPC). Contains functions like WriteNvData, WriteEfsFile, ReadManufacturerModelName, SetDeviceMode etc. Commands are in json form.
There is an old post with example of command: http://forum.xda-developers.com/showpost.php?p=35256188&postcount=8
Same protocol is supported in MainOS device mode. Some of operations have different names, but in general it is the same.
ultrashot said:
It is generic remote control protocol used by NCS (All the data shown in NCS is retrieved using JSONRPC). Contains functions like WriteNvData, WriteEfsFile, ReadManufacturerModelName, SetDeviceMode etc. Commands are in json form.
There is an old post with example of command: http://forum.xda-developers.com/showpost.php?p=35256188&postcount=8
Same protocol is supported in MainOS device mode. Some of operations have different names, but in general it is the same.
Click to expand...
Click to collapse
How do we initiate these protocols? (Yes, epic noob question here, but you know your stuff)
snickler said:
How do we initiate these protocols? (Yes, epic noob question here, but you know your stuff)
Click to expand...
Click to collapse
Its not a noob question. If I asked, it would be a noob question (I can read code, but writing code is an uphill battle)
Sent from my RM-860 (Lumia 928) using the OFFICIAL Tapatalk app.
snickler said:
How do we initiate these protocols? (Yes, epic noob question here, but you know your stuff)
Click to expand...
Click to collapse
http://msdn.microsoft.com/en-us/library/windows/hardware/ff540174(v=vs.85).aspx
ultrashot said:
http://msdn.microsoft.com/en-us/library/windows/hardware/ff540174(v=vs.85).aspx
Click to expand...
Click to collapse
You are a hero. This needs added to one of the main posts.
snickler said:
You are a hero. This needs added to one of the main posts.
Click to expand...
Click to collapse
Added. I wish I could understand the process a little better; I only had one course in programming and I hated to start with vanilla java. Trial by fire, I guess.:silly:
thals1992 said:
Added. I wish I could understand the process a little better; I only had one course in programming and I hated to start with vanilla java. Trial by fire, I guess.:silly:
Click to expand...
Click to collapse
I'm going to attempt to make a program that will kick the device into those multiple modes.
snickler said:
I'm going to attempt to make a program that will kick the device into those multiple modes.
Click to expand...
Click to collapse
http://goodmovieslist.com/movie-quotes/There is no try - Yoda.jpg
Code:
data = "Test", "Flash", "Normal", "PowerOff", "PowerOffImmediate";
strcpy(buffer, "{\"jsonrpc\":\"2.0\",\"id\":55,\"method\":\"SetDeviceMode\",\"params\":{\"MessageVersion\":0,\"DeviceMode\":\"");
strcat(buffer, data);
strcat(buffer, "\",\"ResetMethod\":\"HwReset\"}}");
+
WriteToBulkEndpoint
I'll check if anything from my research on this thread is worth sharing - i have lots of snippets, but it is not that useful atm.
ultrashot said:
http://goodmovieslist.com/movie-quotes/There is no try - Yoda.jpg
Code:
data = "Test", "Flash", "Normal", "PowerOff", "PowerOffImmediate";
strcpy(buffer, "{\"jsonrpc\":\"2.0\",\"id\":55,\"method\":\"SetDeviceMode\",\"params\":{\"MessageVersion\":0,\"DeviceMode\":\"");
strcat(buffer, data);
strcat(buffer, "\",\"ResetMethod\":\"HwReset\"}}");
+
WriteToBulkEndpoint
I'll check if anything from my research on this thread is worth sharing - i have lots of snippets, but it is not that useful atm.
Click to expand...
Click to collapse
You are way too awesome to be human.
ultrashot said:
http://goodmovieslist.com/movie-quotes/There is no try - Yoda.jpg
Code:
data = "Test", "Flash", "Normal", "PowerOff", "PowerOffImmediate";
strcpy(buffer, "{\"jsonrpc\":\"2.0\",\"id\":55,\"method\":\"SetDeviceMode\",\"params\":{\"MessageVersion\":0,\"DeviceMode\":\"");
strcat(buffer, data);
strcat(buffer, "\",\"ResetMethod\":\"HwReset\"}}");
+
WriteToBulkEndpoint
I'll check if anything from my research on this thread is worth sharing - i have lots of snippets, but it is not that useful atm.
Click to expand...
Click to collapse
Any research is good research. If the right people see it, they will come and possibly contribute.
Sent from my RM-860 (Lumia 928) using the OFFICIAL Tapatalk app.
Can anyone compile this? I'm having a hard time following the MSDN article... :crying:

Categories

Resources