AppSwitcher v3 - smart SWC launcher (for Junsun, Xtrons and similar devices) incl. autostart - Android Head-Units

AppSwitcher v3​SWC (Steering Wheel Control) app launcher
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Stay focused on the street and don't touch the head units display to switch between apps.​
Your browser is not able to display this video.
Support the development of this free app via
ko-fi.com/appswitcher​

What is AppSwitcher?​
AppSwitcher enhances your steering wheel key to switch between apps.
Hereby you can select which apps should be offered and you can choose stock apps (e.g. the radio app) and 3rd party apps like your favorite mp3 or DAB player. You can switch between media and navigation app by only one key press.
Additionally AppSwitcher offers a lot of options:
- start the last used media app after boot and after sleep automatically.
- long button press to cancel (if dialog is shown) or to jump to home screen.
- reactivate accessibility service of Automate and start initial Automate Flow to realize your own automations
- enable/disable DuraSpeed to prevent the head unit from killing your apps
- change system property to make Android status bar visible (work as on other Android devices)
- automatic screen dimming based on sunset / sunrise information
- allows to start the (Junsun) equalizer app
- supports SWC key "mode" even if CAN box is in place (if modded MainUI gets used)
- ...

How it works​
AppSwitcher has two options to register for a SWC key. A basic understandinghow it works will help you to do the initial setup of AppSwitcher.
Option 1 - GPS​
The head units main app (MainUI) writes by default a log message on each key press. AppSwitcher can listen to the Android log and react on a log message.
This will not overwrite the standard behavior of the original key function but we can configure a SWC key and assigned it to "open navigation app". With a special app (AppSwitcherStarter) set as navigation app there is no need to modify system files or system apps.
This will only work if
a) a dedicated SWC key to start the navigation app is present. If no CAN box is used every SWC key can be configured
b) a dedicated SWC key to switch between apps (mode button) is present AND the radio app is not used/required
Option 2 - MainUI​
Replacing the head units main app (MainUI) with a modded version.
In this version, the SWC mode key is disabled so that its functionality can be overridden (replaced) by AppSwitcher.
Additionally the modded version starts AppSwitcher after boot / sleep and sends a broadcast on each key press. This allows AppSwitcher to register for the broadcasts to receive a trigger. Other apps (e.g. Automate) can also register for these broadcasts.
This will only work if
a) a modded version of MainUI is available
b) you are not afraid of replacing a system app and know how to flash a firmware in case of problems. You're replacing the system app at your own risk.

Installation​
Option 1 - GPS​
Please read previous post to check if this is the best installation type for you.
Spoiler
- Install AppSwitcher AND AppSwitcherStarter.
- Enable automatic start of navigation app in factory settings
and let your device reboot.
Please be aware that changing factory settings will reset some settings on your device like equalizer and radio station presets. This is not an issue of AppSwitcher(Starter).
- Open AppSwitcher and select your navigation and media apps. Additionally activate the log listener:
- Set 'AppSwitcher Starter' as navigation app:
Don't set AppSwitcher itself as navigation app.
- Configure one button of steering wheel to start navigation app (if not already done)
With this setup the head unit will start AppSwitcherStarter after each reboot/sleep whereby AppSwitcherStarter will start the service of AppSwitcher.
Pressing the SWC navigation key will also start AppSwitcherStarter but this will have no effect if the service is already running. Nevertheless the AppSwitcher service will recognize the log entry and can present the AppSwitcher dialog.
The log entry can vary from head unit to head unit so it may be required to adjust the log listener settings https://forum.xda-developers.com/t/...-devices-incl-autostart.4593865/post-88620913
​Option 2 - MainUI​
Please read previous post to check if this is the best installation type for you.
You choose this way of installation at your own risk. It may lead to a bootloop and you should be familiar how to flash a firmware to restore your device in case of problems.
Spoiler
- First you need to check if a suitable modded version of MainUI is available for your device.
You can find a list of modded versions here: https://forum.xda-developers.com/t/...-devices-incl-autostart.4593865/post-88620949
- Download the modded MainUI version, place it in the "Download" folder on the device and rename it to MainUI.apk
- Install MainUiUpdater and perform the replacement of MainUI system application. If the device freezes after the update simply use the reset hole to force a reboot.
- Install AppSwitcher
- Open AppSwitcher and select your navigation and media apps.
Ensure the log listener is disabled.
- Reboot your device. E.g. by using the Reboot.apk from here: https://forum.xda-developers.com/t/...r-aux-bt-music-carinfo-from-launcher.4237797/

Installation files​
Attached installation files are only for testing purposes.
V3 is still under construction and may be not stable. This version is not supported.
AppSwitcher: Core application
AppSwitcher Starter: Starter of AppSwitcher and dummy navigation app. Only needed for installation option "Option 1 - GPS".
MainUiUpdater: Helper tool to replace MainUI. Only needed for installation option "Option 2 - MainUI".
Reboot: Adds an icon to launcher for an easy reboot of the head unit. Can be found here.
Changelog
AppSwitcher
3.0.3
- Adjusted to new broadcast key
MainUiUpdater
0.7
- Changed backup dir to /sdcard/MainUIbackups

Adjust the log listener​
Installation type "Option 1 - GPS" may require to adjust the log listener settings. They are pre-configured for systems without CAN box and a SWC key assigned to the GPS function (see Installation instruction on previous posts).
First you have to identify which log entries get written as soon as you press the SWC key. I suggest to use "Logcat Reader" from Google Playstore to identify usable log messages.
The log listener settings​
Log tag: Tag of the log entry. On most systems this is "MainUI".
Short button press log entry: If this log entry occurs AppSwitcher will show the dialog or jump to the next app.
This is the most important entry.
If you get a set of log entries as soon as you push and release a SWC key "Short button press log entry" should be set to the log message which gets written as soon as you release the key after a short amount of time.
Optional:
On button press log entry: This log message gets written as soon as you push down the SWC key. AppSwitcher will stop the countdown as soon as this message gets detected. This allows to set a very short countdown time.
Long button press log entry: If you hold down the button you can cancel the AppSwitcher dialog or jump to the home screen / launcher if the dialog is currently not visible.
The log entries need not to contain the whole message. It's sufficient to enter a substring if this is unique and not part of other log messages.

Modded MainUI​
For MTK825X​
MainUI_825X_1.3.apk​Version 1.3 from 8259P_军灿UI02v1280x720-国外_v81_20230427
Changelog
23/6/18
- Allow remap of SWC keys even if CAN box is in place
For 8667​To bring this version on the same level as 825X I need your testing support!
MainUI_8667_1.1.apk​Version 1.1 from 8667Q军灿UI02-国外-1280x720_v28_20230302.zip

Remap SWC keys​
If a CAN box is in place Junsun devices doesn't allow to remap SWC keys and assign other functions to it. But if you install a modded MainUI it is possible to define a config file with a mapping according to your needs.
The mapping file must be called "keyMapping.ini" and must be stored on the top level of the memory next to the "Download" folder.
The file is a simple text file containing key code mappings:
Code:
[from value 1]:[to value 2]
[from value 2]:[to value 1]
[from value 3]:[to value 4]
This is an example to swap the volume keys:
Code:
19:20
20:19
The most used key codes:
Mode = 10
Vol + = 19
Vol - = 20
next track = 44
prev track = 45
All key codes:
Spoiler
0 = 31;
1 = 32;
2 = 33;
3 = 34;
4 = 35;
5 = 36;
6 = 37;
7 = 38;
8 = 39;
9 = 40;
AIR = 105;
AM = 53;
AMS = 58;
ANGLEDN = 74;
ANGLEUP = 73;
APPS = 100;
APP_LONG = 115;
APP_SHORT = 114;
AUDIO = 101;
AUX = 2;
AVIN = 3;
AVM = 107;
BKL = 6;
BT = 23;
BT_A2DP = 111;
CAMERA = 108;
CARINFO = 106;
CAR_DEVICE = 110;
CAR_PLAY = 103;
CLOCK = 5;
DEL = 109;
DELETE = 84;
DIM = 24;
DIMDN = 88;
DIMUP = 87;
DISP = 85;
DN = 67;
DTV = 1;
DVD = 13;
DVR = 27;
ECAR = 89;
EJECT = 71;
EJECT_L = 83;
ENT = 21;
EQ = 17;
FAV = 86;
FCAM = 26;
FEEL_BACKWARD = 198;
FEEL_CCW = 200;
FEEL_CW = 199;
FEEL_DOWN = 196;
FEEL_FORWARD = 197;
FEEL_LEFT = 194;
FEEL_RIGHT = 193;
FEEL_UP = 195;
FEEL_WAVE = 201;
FF = 46;
FM = 52;
FMAM = 51;
FR = 47;
HOME = 99;
INFO = 98;
IPOD = 25;
J = 41;
LEFT = 68;
LOC = 55;
LOUD = 18;
MEDIA = 28;
MEDIA_PP = 60;
MEDIA_RDM = 61;
MEDIA_RPT = 62;
MEDIA_SCAN = 63;
MEDIA_SEARCH = 65;
MEDIA_STOP = 64;
MENU = 8;
MODE = 10;
MODE_DN = 94;
MODE_UP = 93;
MUTE = 16;
NAVI = 11;
NEXT = 44;
OPEN = 72;
PAUSE = 91;
PHONE_SIM = 104;
PLAY = 90;
POWER = 70;
POWER_OFF = 82;
POWER_ON = 81;
PRE = 45;
RADIO = 12;
RADIO_1S = 75;
RADIO_2S = 76;
RADIO_3S = 77;
RADIO_4S = 78;
RADIO_5S = 79;
RADIO_6S = 80;
RADIO_BAND = 43;
RADIO_SCAN = 59;
RDS_AF = 48;
RDS_PTY = 50;
RDS_TA = 49;
RETURN = 22;
RIGHT = 69;
SD = 15;
SET = 7;
SPEAKER = 95;
SPEAKER_SW = 96;
ST = 54;
TELCALLOF = 30;
TELCALLON = 29;
TOGGLE_LEFT = 112;
TOGGLE_RIGHT = 113;
TOUCH = 9;
TPMS = 102;
TUNEDEC = 57;
TUNEINC = 56;
TV = 4;
UP = 66;
USB = 14;
VIEW360 = 92;
VIEW360_UP = 97;
VOLDN = 20;
VOLUP = 19;
X = 42;

reserved

reserved

TorstenH said:
Installation
Option 1 - GPS
Please read previous post to check if this is the best installation type for you.
- Install AppSwitcher AND AppSwitcherStarter.
- Enable automatic start of navigation app in factory settings
View attachment 5927899
and let your device reboot.
Please be aware that changing factory settings will reset some settings on your device like equalizer and radio station presets. This is not an issue of AppSwitcher(Starter).
- Open AppSwitcher and select your navigation and media apps
- Set 'AppSwitcher Starter' as navigation app:
View attachment 5927901
Don't set AppSwitcher itself as navigation app.
- Configure one button of steering wheel to start navigation app (if not already done)
View attachment 5927903
With this setup the head unit will start AppSwitcherStarter after each reboot/sleep whereby AppSwitcherStarter will start the service of AppSwitcher.
Pressing the SWC navigation key will also start AppSwitcherStarter but his will have no effect if the service is already running. Nevertheless the AppSwitcher service will recognize the log entry and can present the AppSwitcher dialog.
The log entry can vary from head unit to head unit so it may be required to adjust the Log listener settings.
Option 2 - MainUI
Please read previous post to check if this is the best installation type for you.
You choose this way of installation at your own risk. It may lead to a bootloop and you should be familiar how to flash a firmware to restore your device in case of problems.
Click to expand...
Click to collapse
Some models of a car - like mine , does not allow changing swc buttons and settings, is there a way to bypass that ?

Anton TNT said:
Some models of a car - like mine , does not allow changing swc buttons and settings, is there a way to bypass that ?
Click to expand...
Click to collapse
Sure. You can help to let the magic happen:
Junsun V1 - Codes
Code description from {Mod edit} Please note: Don't just try a code without to know what happens. E.g. 9191 will lead to the message "device not activated" and you need a file called license.dat. 8888 - restricted settings menu 8878 - full...
forum.xda-developers.com

TorstenH said:
Sure. You can help to let the magic happen:
Junsun V1 - Codes
Code description from {Mod edit} Please note: Don't just try a code without to know what happens. E.g. 9191 will lead to the message "device not activated" and you need a file called license.dat. 8888 - restricted settings menu 8878 - full...
forum.xda-developers.com
Click to expand...
Click to collapse
Thanks good to know

Here is working with mainui option

ramig said:
Here is working with mainui option
Click to expand...
Click to collapse
If you want to test the SWC key remapping via config file, let me know...

I can install MainUI on my unit (8667L), I need to know if the 8667L version is compatible or only for 8667. If it is compatible, is key mapping available for this version?

elalvaro19 said:
I can install MainUI on my unit (8667L), I need to know if the 8667L version is compatible or only for 8667. If it is compatible, is key mapping available for this version?
Click to expand...
Click to collapse
Could you please let me know which firmware you have currently installed by providing a link to the firmware zip file?
Key mapping can be made available but I need you to test because I don't have a 8667(L) unit.

TorstenH said:
Could you please let me know which firmware you have currently installed by providing a link to the firmware zip file?
Key mapping can be made available but I need you to test because I don't have a 8667(L) unit.
Click to expand...
Click to collapse
This is the firmware I currently have installed:
8227L 固件 - Google Drive
drive.google.com

elalvaro19 said:
This is the firmware I currently have installed:
8227L 固件 - Google Drive
drive.google.com
Click to expand...
Click to collapse
Unfortunately I can't extract the firmware with the same tools I use for 8867 and 825X.
Could you please install MainUiUpdater and perform replacement without a MainUI.apk in Download folder? This should create a backup of your MainUI.apk file you can share here.

Hello TorstenH, I have a Junsun 8667Q and I would like to reassign the steering wheel keys, I have a 2019 kia Sportage with CAN, does your MAINUI work for my radio?
The VOICE button opens the google search for me and I would like it to open the google assistant.
Thank you so much

Related

volume setting

I am trying to set the volume to my needs then put it back after. I have use the code from ppc developer network and when that did not set the correct volume I also did the registry as well. Don't worry about "reg", its my registry class and it works fine.
DWORD oldReg=0;
oldReg=reg->readDWORDfromReg(name,path);
reg->saveDWORDtoRegistry(name,path,0xffffffff);
WAVEFORMATEX wf;
wf.wFormatTag = WAVE_FORMAT_PCM;
wf.nChannels = 1;
wf.nSamplesPerSec = 8000 * 1000;
wf.wBitsPerSample = 8;
wf.nBlockAlign = wf.nChannels * wf.wBitsPerSample / 8;
wf.nAvgBytesPerSec = wf.nSamplesPerSec * wf.nBlockAlign;
wf.cbSize = 0;
HWAVEOUT hwo;
DWORD dwVolume=0xffffffff;
DWORD oldVolume=0;
int waveDevice=-1;
UINT numberOfDevices=waveOutGetNumDevs();
for(UINT id=0;id<numberOfDevices;id++)
{
if (waveOutOpen(&hwo,id,&wf,0,0,CALLBACK_NULL)==MMSYSERR_NOERROR)
{
waveDevice=id;
waveOutGetVolume(hwo,&oldVolume);
waveOutSetVolume(hwo,dwVolume);
waveOutClose(hwo);
break;
}
}
.........playing sound here all ok....
//put the volume back
if(waveDevice!=-1)
{
if (waveOutOpen(&hwo, waveDevice, &wf, 0, 0, CALLBACK_NULL) == MMSYSERR_NOERROR)
{
waveOutSetVolume(hwo, oldVolume);
waveOutClose(hwo);
}
}
reg->saveDWORDtoRegistry(name,path,oldReg);
I can set the volume to any value below the origional volume but any attempt to set a volume higher just dose nothing. There are no errors (checking left out here), just the same level. I did not seriously expect the registry part to work as I guess there is some event to trigger that change, but others seem to get results from waveOutSetVolume.
Well, I never tried changing volume by code, but I know TCPMP player does it well and it's open source so might be worth taking a look at.
Thanks levenum, I will give it a look.
Before I got a chance to look at that code I got a result. I have been using PlaySound to play a resource with no volume change working. When I use waveOutWrite to play a buffer containing the same data I can get the volume change I am after. There is still something wrong with my code because the sound gets garbled but I think I will figure that part out. I also want to next test playsound with a file instead of a resource.
<edit>
using playsound with the same file plays clear sound but the volume change is not working. Its a pity because to get the waveoutwrite to work properly i had to fill in the WAVEFORMATEX with the CORRECT values. This means that if I am allowing the user to specify files to play I will have to find out the samples per second and bits per sample info before I can use the file.

A Call To Lock/Hardware Button Experts

Hello,
Im currently working on a custom control in managed code(vb.net) and have decided to implement it in a lock application as its initial demo. I have written code which catpures the base hardware keys available to windows mobile(1-6) this captures all of the hardware buttons on my wizard except for the Phone Buttons, Volume/Vibrate Button, and power button. im not particularly worried about trapping the power button because i like the tap to standby feature but im up the creek on the phone/volume buttons.
I found the hardware buttons 1-6 in the registry under (HKLM\Software\Microsoft\Shell\Keys) but i cant seem to find the other keys anywhere including where this person says they are
http://www.mobipocket.com/forum/viewtopic.php?p=2367&sid=c3b2c704a729c2d6e5a47d0ee38ecb54
basically from my understanding of what he's saying the keys for these options(at least the phone ones) should have been listed under "HKEY_CURRENT_USER\Software\Microsoft\Today\Keys\"
I had one key there 112 pointng to my calendar(so that i thought confirmed him) I added a key called 114 with a path to calendar as well. but the button still directs to phone/ so im not sure what's up.
Here's some logic from the hardware button capturing... Any insight into the location of these items would be greatly appreciated
Code:
Dim hk As HardwareKeys = HardwareKeys.ApplicationKey1
Dim i As Integer = 0
While i < 6
Try
Dim hwb As HardwareButton = New HardwareButton
hwb.AssociatedControl = Me
hwb.HardwareKey = hk + i
Catch ex As Exception
Me.Label1.Text &= ex.Message
End Try
i += 1
End While
Dim regkey As RegistryKey =
Registry.LocalMachine.OpenSubKey("Software\Microsoft\Shell\Keys", True)
Me.Label1.Text = regkey.SubKeyCount
For Each skey As String In regkey.GetSubKeyNames
Me.Label1.Text &= skey.ToString & ","
Next
regkey.Close()
Thanks in advance for any insight anyone can provide
DrewG
Well ive found some russian page talking about the
Dated Post on russian site with Broken English Translation said:
HKEY_LOCAL_MACHINE\Software\Microsoft\Shell\KeyMaps]
"195"= - =-hitting "record" on the three pozic. phone (one that najmeshy story)
"196"= hitting "power" and "house"
"197"= Opening screen
"198" = "red tube"
dword:00000000 - nothing
dword:00000001- mobile phone
dword:00000002 - quick menu
dword:00000003 - lock (for the press release #)
dword:00000004 - 00000004 fast-locking
Click to expand...
Click to collapse
Do you guys think this is a good start? At that location i have dword 197 val of 5. Im adding entries now for the othr buttons to see if i can catch
Here's What I have so far for Cingular 8125 HTC Wizard as the hardware buttons/software key maps which i get from a call onkeypress. I believe im going to have to go an unmanaged route for the phone buttons/Volume.
Code:
'not code just looks better this way
SoftKey Left = Key Code 112
SoftKey Right = Key Code 113
Email Button(top left corner) = Key Code 193 (Cf Hardware Button 1)
Web Button(top right corner) = Key Code 194 (Cf Hardware Button 2)
Camera Button(bottom right side) = Key Code 195 (Cf Hardware Button 3)
Voice Button(top right side) = Key Code 196(Cf Hardware Button 4)
Record(hold voice) = Key Code 197(not firing well) (Cf Hardware Button 5)
Comm Button = Key Code 198 (Cf Hardware Button 6)
All of those I can catch and react to but i cant seem to find any info for the phone and volume buttons/ Is there a specific api call I can make thats related to button press or catching? Possibly a way of forcing an association to an app only while its running?
Thanks in advance for any help. Ill post the full app here if i can get over this hump

##634# Codes etc

Ok just saw this as part of the know your MAC address thread but wanted to pursue this just in case we find something new
##634# takes the phone into Diagnostic mode
*#1234# lists PDA: Phone and CSC version (like in Android?)
Does this mean Odin could flash it?
when in Diag mode:
*#1111# Testing Mode Software - potential for other commands
keep entering numbers until you see a - minus number then keep presing back until only the minus sign left, you will then see a new menu
Go into Debug, then option 8 Phone Control, then option 6 Network Lock and report findings please.
1 Debug Screen
| |
| 1 Basic Info
| 2 MM Information
| 3 RR Information
| 4 Neighbour Cell
| 5 GPRS Information
| 6 SIM Informtion
| 7 Handover
| 8 Phone Control
| 9 Antenna/ADC
2 Version Information
| |
| 1 SW Version
| 2 HW Version
3 UMTS RF NV
| |
| 1 RF NV Read
| 2 RF NV Write
4 GSM RF NV
| |
| 1 RF NV Read
| 2 RF NV Write
5 Audio
| |
| 1 Handset
| 2 Headset
| 3 Speaker
| 4 BT Headset
| 5 Rebuild All
| 6 TTY Mode Set
6 Common
| |
| 1 FTM
| 2 Debug Info
| 3 RF Scanning
| 4 Diag Config
| 5 WCDMA Set Channel
| 6 NV Rebuild
| 7 Factory Test
| 8 Force Sleep
| 9 GPS
*#2222# Testing Mode Hardware - potential for other commands
same menu as *#1111# using same minus sign procedure to get to it
*#0987# Multitouch test mode
*#2580# Integrity Control On / Off (1 is on 2 is off)
*#03# SMD Header Info 70120001127750
*#05# Simple Test (1, Vibration; 2, Camera; 3, Acceleration; 4, Proximity; 5, Light; 6, Key; 7, TSP; 8, Battery; 9, Loopback)
*#80# check pattern input co-ordinates?
*#777# Vphone 777 Done
*#9090# Test Mode 1, USB; 2, UART[*]; 3, DBG MSG On; 4, DBG MSG Off[*]
Shall I shutup now?
No don't shutup, creating this thread was a good idea.
Apparently in this menu there is a way to get tethering to work!
*#7284# is what you might be looking for
funny thing is, once you've set this my PC recognises it as an Android ADB Interface!!! Windows and Drivers, don't you just love 'em
More info here: http://mobilitydigest.com/windows-phone-7-tethers-you-can-do-it-now-heres-how/
pLUSpISTOL said:
No don't shutup, creating this thread was a good idea.
Apparently in this menu there is a way to get tethering to work!
Click to expand...
Click to collapse
*#0*# LCD test and other sensors
*#0011# enter Test Mode
*#0228# enter Debug Mode with battery info
*#1472365# enter in Location Service
*#7284# to setting tethering usb
*#7465625# for Personalize - Lock Status - Network Lock - Subset - SP Lock - Cp Lock
Can we unlock the phone using these codes? I mean to use other carriers SIM card, and also fix the MMS issue
gnasher666 said:
Go into Debug, then option 8 Phone Control, then option 6 Network Lock and report findings please.
Click to expand...
Click to collapse
All I see is:
Diagnostic Application
Test Mode
6
Hope this helps someone.
I was hoping to find a way in these options to turn off the damn screen blanking when a call is made! My phone does not want to recover from the blank screen even when placed on a flat surface during the call.
EDIT: Have just noticed that you can enter numbers after the [6] Network Lock screen displays 6. First few I have tried returns to "Menu not exist press back key - Current command is 1827364" screen
Keep tapping 6.... untill there is a - sign.... i got caught out with that too... i'll upload a video quicly on pootube...
Accelerometer
Just ****ed up my accelerometer in the *#0*# menu, and now the screen doesn't rotate at all anymore.
There's a "Cal" button that I used, presumably to be able to configure the correct rotation of the phone, but I don't understand how to use the "True" or "False" returns that come up...
How do I use these controls?
Can I reset it? How?
SengUK said:
All I see is:
Diagnostic Application
Test Mode
6
Hope this helps someone.
I was hoping to find a way in these options to turn off the damn screen blanking when a call is made! My phone does not want to recover from the blank screen even when placed on a flat surface during the call.
EDIT: Have just noticed that you can enter numbers after the [6] Network Lock screen displays 6. First few I have tried returns to "Menu not exist press back key - Current command is 1827364" screen
Click to expand...
Click to collapse
Crap record, Will find a better device to record it on in the morning, but shows the basic jist of how to get into the menu past the bit your on about.
http://www.youtube.com/watch?v=bRUgFzgjNCM
Necroman_AI said:
Can we unlock the phone using these codes? I mean to use other carriers SIM card, and also fix the MMS issue
Click to expand...
Click to collapse
guys... any news here?
I'll get mine early next week, and try this out as soon as I do... Has anyone tried the "Antenna / ADC" Menu? It's not all that likely, but ADC could stand for "Automatic Data Configuration" (the system used to set the MMS settings) rather than "Analog to Digital Converter" there...
Hi all, thanks for this info. Does anyone know if it is possible to calibrate the touchscreen of the Samsung Omnia 7? I noticed that the calibration is a little bit off. I can see that when I do the multi-touch test or when I use the app called "fingerpaint". I saw the "LCD Test" which has an item "Touch" but it is only a test, not a 'cal' (calibration), like some of the other menu's have.
When I touch the screen on the left side, the responsive area is a little on the left of my finger. It is not much, but I might consider returning the device if I cannot fix this myself. The device is only one day old, and I like it very much. If I would return it they will probably be able to recalibrate it, but I'm afraid that it may take a few weeks before I get it back. And I really don't like missing it already.
Thanks!
http://forum.xda-developers.com/showthread.php?p=9199305&mode=linear
turn off 3G
Hi
There is a possibility to turn off 3G. You have to go into "Debug Screem" like gnasher666 has written. Then you choose Phone Control and then Network Control. There you choose Band Selection, where you can choose which network you want.
Bye,
Pinggi
**ALL** diagnostic codes for SAMSUNG devices
I reverse engineered the Diagnostic Menu Application. It contains a list of configuration "Titles" with corresponding hash-codes. I made a tool to reverse the hash-codes to dial-codes. The dial-codes may not be the same as some codes that were already known, but the dial-codes are absolutely correct for these menu. Differences are due to hash-collisions (same hash-code may have multiple possible dial-codes). I just used the shortest dial-codes for every menu.
The list of menu's is very long and I discovered that not all menu-codes were not actually implemented. I guess this list of codes is used for all Samsung devices (possibly also for Galaxy S and older Windows Mobile devices). So not all dial-codes may actually work on your device.
WARNING!! The menu's can configure low-level settings of your phone. And if you don't know what you're doing you may brick your device or maybe hard-reset the device and loose all your data and settings. Or you may faulty calibrate your sensors. Be very, very careful with experimenting!! I will not take any responsibility for damaging your device in any way.
I would personally be very interested if anyone finds a way to get the device in download-mode by using these menu's (I have a bad bootloader which does not let my Samsung Omnia 7 go into download-mode to flash it to a newer firmware).
This is the list with menu-titles, dial-codes and their hashcode:
Code:
FTAMain = 15 (0x686)
QUALCOMM TEST = *09# (0x17DB96)
TMOServiceMenu = *74*# (0x31710C2)
SMDINFO = *#03# (0x30C0953)
SIMPLE FUNCTION TEST = *#05# (0x30C0995)
IMEI NUMBER = *#06# (0x30C09B6)
VIEWHISTORYNW = *#07# (0x30C09D7)
LCDTEST = *#0*# (0x30C082A)
QWERTYTEST = *#1*# (0x30C0C6B)
BATT TEST = *#2*# (0x30C10AC)
BRIGHTNESS TEST = *#3*# (0x30C14ED)
TouchDelta 80 = *#80# (0x30C2AF8)
LIGHTTEST = *#12*# (0x648DBCDD)
BTLOGDUMP = *#232# (0x648E4E87)
WIFI FACTORY TEST = *#526# (0x648FEFED)
RILNETLOG = *#638# (0x649080D1)
RILDUMP = *#745# (0x64911110)
VPHONE770 = *#770# (0x64911D2E)
VPHONE771 = *#771# (0x64911D4F)
VPHONE772 = *#772# (0x64911D70)
VPHONE773 = *#773# (0x64911D91)
VPHONE774 = *#774# (0x64911DB2)
VPHONE775 = *#775# (0x64911DD3)
VPHONE776 = *#776# (0x64911DF4)
VPHONE777 = *#777# (0x64911E15)
VPHONE778 = *#778# (0x64911E36)
VPHONE779 = *#779# (0x64911E57)
SR TEST = *#780# (0x6491216F)
VT DUMP = *#938# (0x649225F4)
Disable Testbed = #12358# (0xFC28BE89)
Enable Testbed = *12358# (0x170067D0)
DEBUGMODE1 = *#0011# (0xF63246F2)
BATTERYINFO = *#0228# (0xF63364DC)
PHONELOOPBACKTEST = *#0283# (0xF6337DBD)
AUDIOTEST2 = *#0289# (0xF6337E83)
FMRADIORX = *#0368# (0xF6340241)
LIGHTSENSORTEST = *#0589# (0xF63523A6)
RRCVERSION = *#0599# (0xF63527E7)
AUDIOTEST = *#0673# (0xF635AB00)
SOUNDTEST = *#0675# (0xF635AB42)
RTC = *#0782# (0xF6363B81)
DEVICETEST = *#0842# (0xF636B6DE)
ILLUMINATIONTEST = *#0843# (0xF636B6FF)
MultiTouch = *#0987# (0xF63754E8)
SWversionFTA = *#1111# (0xF644EBD4)
MOUSETEST = *#121*# (0xF645774E)
SWversionEx = *#1234# (0xF645811A)
MOUSECAL = *#123*# (0xF6457FD0)
MOUSECAL06 = *#126*# (0xF6458C93)
GPSTEST = *#1575# (0xF6473762)
MICROUSB TEST = *#1793# (0xF6485864)
HWversionFTA = *#2222# (0xF6579518)
BANDSELECTION = *#2263# (0xF657A63D)
PHONEDUMP = *#2454# (0xF658BADF)
CAMERAUPDATE = *#2470# (0xF658C2DD)
CAMERADISABLE = *#2480# (0xF658C71E)
NAVIKEY TEST = *#2486# (0xF658C7E4)
INTEGRITY = *#2580# (0xF659537F)
TouchFirmare 2663 = *#2663# (0xF659D7C1)
TouchDelta 2664 = *#2664# (0xF659D7E2)
TouchDelta 2665 = *#2665# (0xF659D803)
RILNETLOG OFF = *#6380# (0xF6A09CC1)
RILNETLOG ON = *#6381# (0xF6A09CE2)
NETLOCK NETWORK = *#6955# (0xF6A3DAE9)
USBPATHCHANGE = *#7284# (0xF6B22965)
POWERONATTACH = *#7298# (0xF6B22E2A)
SELF DIAGNOSTIC MODE = *#7353# (0xF6B2A8E2)
DebugOption = *#7450# (0xF6B334E0)
ERROR REPORT ON = *#7451# (0xF6B33501)
ERROR REPORT VERIFY = *#7452# (0xF6B33522)
NETLOCK SERVICE = *#7755# (0xF6B4DAA8)
VPHONE DISABLED = *#77*0# (0xF6B4AB38)
VPHONE ENABLED = *#77*1# (0xF6B4AB59)
UARTCHANGER = *#9090# (0xF6D54562)
DEBUGDUMP = *#9900# (0xF6DA0E82)
PILEDUMP = *#9901# (0xF6DA0EA3)
NETLOG LOG START = *#9905# (0xF6DA0F27)
DEBUG RIL DUMP = *#9906# (0xF6DA0F48)
ERRORREPCAB INSTALL = *#9907# (0xF6DA0F69)
GUMITEST3G CAB INSTALL = *#9908# (0xF6DA0F8A)
SUWON3G CAB INSTALL = *#9909# (0xF6DA0FAB)
UARTPATH = *#9910# (0xF6DA12C3)
BATTERYMONITOR = *#9911# (0xF6DA12E4)
CONNECTION SETTING = *#9920# (0xF6DA1704)
VERIFYCOMPARE = *#9990# (0xF6DA34CB)
YSSHINTEST = *#9999# (0xF6DA35F4)
VersionScript = 19104#2* (0xD21FC43E)
BLUETOOTH LOG DISABLE = 20652609 (0x1598F3DE)
BLUETOOTH LOG ENABLE = 20652619 (0x1598F3FF)
BT SSPDEbugModeEnable = 20652629 (0x1598F420)
BT SSPDEbugModeDisable = 20652639 (0x1598F441)
OMADMCLIENT LOG DISABLE = 20653609 (0x1599803F)
OMADMCLIENT LOG ENABLE = 20653619 (0x15998060)
CELOG LOG DISABLE = 20654609 (0x159A0CA0)
CELOG LOG ENABLE = 20654619 (0x159A0CC1)
TOTALCALLTIME = 2934331* (0xC35403F3)
RESET CUSTOM = 35180948 (0x77496B66)
RESET FACTORY = 35190718 (0x775B7B02)
ERASE IMEIITEM = 35190728 (0x775B7B23)
IMEI ADJUST = 35190738 (0x775B7B44)
BLUETOOTH RF TEST = 3##65*88 (0xECE73A9E)
BLUETOOTH AUDIO TEST = 3##65*98 (0xECE73ABF)
AutoSimSetting = 40*047#3 (0xD1C556DF)
PVKKey = 40*549#3 (0xD21FD9E6)
RESET FACTORY WITHDEFAULTLANGUAGE = 76264513 (0x777E1362)
NONSLEEPCALL OFF = *#069*0# (0xBCEBFF49)
NONSLEEPCALL ON = *#069*1# (0xBCEBFF6A)
LEDTEST = *#14789# (0xBF1C1ADD)
DMSessionInit = *#15428# (0xBF2C7494)
CIPHERING = *#32489# (0xC3A095FA)
CAMERAUPDATESVC = *#32589# (0xC3A1225B)
LOGDUMPMGR = *#33284# (0xC3B19514)
SR DISABLED = *#780*0# (0xCD5F5D49)
SR ENABLED = *#780*1# (0xCD5F5D6A)
NETLOCK SUBSET = *#78255# (0xCD60A57B)
LAUNCH UAEDIT = *#92782# (0xD1A12DFC)
PdaBuildTime = *#99820# (0xD2204C1C)
VersionTime = *#99821# (0xD2204C3D)
WIFI TEST = 0373385#6 (0xECE73BA6)
EN LOCK NW = 074578132 (0xBBF27D35)
GCFTESTMODE ENTER = 086#58023 (0x1807BAE3)
FILE SYSTEM TEST = 089559715 (0x28F3F681)
AUDIOGAINCONTROL = 08#766104 (0x902D68E3)
DIS LOCK SUB NW = 17#991#3* (0x1D45A6AE)
PVKFileName = 18*357#25 (0x161B193C)
EN LOCK SUB NW = 193582504 (0xBC073A15)
GPSTESTTOOL = 1#8865#55 (0xF61EC09C)
EN LOCK CORP = 1*0273411 (0xF62C007D)
EN LOCK SVC = 1*0278411 (0xF62EBE62)
DIS LOCK NW = 20789802* (0x1D30E9CE)
SellOutSMS = 2615#0922 (0xD04CA8DE)
TFlashUnPairing = 30334*733 (0x51B892C4)
DIS LOCK SVC = 38025*93# (0xCA957BDB)
GPSTESTTOOL2 = 400#40*08 (0xB9F6D60D)
GPSTESTXTRA = 400#40*18 (0xB9F6D62E)
SerialNumber = 5317*0648 (0x6E256D8C)
EN LOCK SIM = 5494585*3 (0xBC051995)
SERVERURL = 553378683 (0xD8389060)
SLIDECOUNT = 584644021 (0xF0BF3052)
SellOutSMSTestMode = 597#*224# (0x96E7B26D)
APPSLAUNCHER = 5**6244*3 (0x33B0B76)
SLOGSERIAL M2 = 66#6757#1 (0x7050E07C)
AutoReceive Enable = 7160*5088 (0xEF2C5E0D)
TESTMODE = 718071#49 (0x8A09ACC8)
RESET SERVICE = 72673#00# (0xEC5B4BEF)
ReactivateSellOutSMS = 74201#086 (0x807DB65F)
AUDIOCODEC = 7#16#1#37 (0x902D68C2)
ADMIN GENERIC = 838*5448* (0xC8E890AC)
SLOGSERIAL ALL ON = 8644*3081 (0x705107AC)
VT MANUALSETTING = 8802*7*5# (0x104384B5)
DISLOCK SIM = 98217*243 (0x1D43862E)
DMTESTMENU = 9#7357764 (0x414D9633)
SLOGSERIAL ALL OFF = #22#6214# (0x7050E03A)
SLOGSERIAL M1 = #22#6215# (0x7050E05B)
SLOGSERIAL M3 = #22#6217# (0x7050E09D)
SLOGSERIAL M4 = #22#6218# (0x7050E0BE)
SLOGSERIAL M5 = #22#6219# (0x7050E0DF)
ADMIN VODAFONE = #75471648 (0x1C42130D)
DisableSellOutSMS = *4587*676 (0x903477AF)
BLUETOOTH SEARCH TEST = *#232333# (0xECE73AE0)
RANDOM BT MAC = *#232336# (0xECE73B43)
BLUETOOTH MAC VIEWER = *#232337# (0xECE73B64)
WIFI MAC VIEWER = *#232338# (0xECE73B85)
PRECONFIGURATION = *#638738# (0x213EF313)
SELF DIAGNOSTIC MODE DISABLE = *#7353*0# (0x6E008D7C)
SLOGSERIAL M6 = *#745*06# (0x7050E100)
DIS LOCK CORP = 00*2*2#524 (0xCA92BDF6)
ADMIN TMOBILE = 0612824763 (0x1BFBCA67)
AutoReceive Disable = 09925572#3 (0xD4B8217D)
SWversionIn = 1309653522 (0xECB23FC4)
GPSTTFFTESTTOOL = 154*068271 (0xF61EBC7C)
SellOutSMSProductionMode = 1#3341#5#0 (0x96D7C68A)
LOCK STATUS INFO = 28##**23*0 (0x7D8C72E3)
SWversionNewIn = 32456464#7 (0xFD58D7FC)
zyborg said:
Just ****ed up my accelerometer in the *#0*# menu, and now the screen doesn't rotate at all anymore.
There's a "Cal" button that I used, presumably to be able to configure the correct rotation of the phone, but I don't understand how to use the "True" or "False" returns that come up...
How do I use these controls?
Can I reset it? How?
Click to expand...
Click to collapse
Go back to the setting, put the phone on a flat surface like a table and then press CAL.
Cal = Calibrate. It basically sets the accelerometer position when the phone is in default position.
*#0*# compass not working?
*#0*# -> compass .... but compass values are not well updated and does not reflect the real north?
Any hints ?
Uh, maybe a stupid question, but once I entered the diagnosis menu dialing the ##634#, I now have a Diagnosis application in the application list which takes me there as well. My question is that is it safe to 'uninstall' it? I mean will it just make the icon in the list go away or is there a chance it could actually uninstall the entire diagnosis program..?
Here is how to increase yr volume in OMNIA 7
==============================
Increase Speaker Volume
Enter the phone dialer
##634#, tap Call.
Enter code: *#0002*28346# or *#0002*28345#
Tap: Get, under the Device Gain (max/min)
First Box: 7
Second Box: change to 16000
Third Box set to 0
Tap: Set
Be sure that audience.cfg is set to on
Tap: Start
Tap: Home
Restart your phone.
After reboot, enter the same menu and just tab get to verify the settings
Increase Headphone Volume
Note: Make sure your headphones are plugged in first
Enter the phone dialer
##634#, tap Call
Enter code: *#0002*28346# or *#0002*28345#
Tap: Get under the Device Gain (max/min)
For "device gain" leave number 5, set 1100 (max) and -1100 (low)
Tap: Set
Verify that AUDIENCE.CFG is ON
Tap: Start
Tap Home
Restart your phone.
After reboot, enter the same menu and just tab get to verify the settings
Enjoy

Galaxy Note: tips and tricks

This thread is for you to discover what more you can do with your Samsung Galaxy Note GT-N7000
Special thanks to:
1. Jamieross for initiating the index and summary. You are the man!
2. Thread mod reinbeau for sticking the thread and for her help. SHE is "Ann- not a man!" - that's her signature
Please note:
1. [*] marked posts are those central to the concept of Galaxy Note or are relevant to it
2. The index/summary are not real time- I am curating them manually
3. You are welcome to add your Galaxy Note specific tips and tricks by replying to the thread
4. Once we have 100 items, and if mods allow, I will attach the summary as a pdf here
Floating Index (manually curated)
Current listed tips sorted by time of posting are:
1. Clipboard with archive*
2. Shortcut to toggle keyboard in browser
3. Specific resizable widgets
4. Brightness shortcut in Browser
5. Music tagging
6. Recording music on FM radio
7. Reducing screen brightness beyond permitted level
8. Shortcut to brightness level
9. Ways to take screenshots*
10. PDF annotation with pen*
11. Noise Reduction toggle
12. Swipe contact name to call or text
13. Shortcut to camcorder
14. Code for hardware test mode
15. Searching contacts with first two letters of the name
16. Phone wakes with home button too
17. Alarm is audible via earphones
18. Some more secret codes
19. Invoking s-memo lite by double taping the s-pen*
20. Remote tracking your device
21. Camera zoom in-out by pinch-zoom on screen]
22. Rotate photos with your thumb
23. Edit camera shortcuts
24. Use 3 fingers to scroll all the way up or down (so far seems to work in contacts only)]
25. Keyboard toggle by swiping it down on stock keyboard
26. Extensive list of secret codes
27. Answer or end call using physical buttons and screenshot here
28. Sync s-memo with Google Docs*
29. Tagging s-memo notes*
30. Email spilt screen toggle
31. Sync s-memo with evernote
32. Browser new window shortcut
33. Long pressing menu button acts as search
34. Loud music setting
35. Swype shortcuts more here
36. Select all text workaround for email app
37. Notification bar toggle
38. S-planner pinch-zoom*
39. Video player shortcuts
40. Gallery shortcuts
41. Mute ringer by placing finger on speaker grill on the back*
42. Alternative clipboard app
43. Photo cropping and pasting in Photo Editor app*
44. Calculator in basic scientific mode
45. Handwriting Recognition Calculator
46. Notification bar toggle shortcut
47. Flip to mute the phone notifications
48. Noting with s-memo lite in s-planner directly*
49. Muting the phone as opposed to rejecting
50. Swipe actions in messaging app just like those in Contacts app
Floating Summary: this post and next few ones (manually curated by Jamieross)
1. Pressing and holding the menu key brings up google search... it also it toggles the keyboard in the browser, even when a text input box isn't selected... (Jade Eyed Wolf)
2. Certain widgets from Samsung are resizable: Bookmarks, Weather, and S-memo. These are again only seen in galaxy note i guess.. Link2Post (galaxytab1)
Hold the widget until it gets big and the desktop gets small, indicating it's able to be moved. Then let go and it'll drop back down and the resizing lines will appear. Touch and hold the grey triangle on the lower right corner, and drag to resize the widget. (maxh)
3. The new browser in 2.3.6 upgrade has this new brightness option in the settings tab. (galaxytab1)
4. There is the ability to tag your music for easier searching. (galaxytab1)
5. You can also do live recording using the built in FM Radio. (galaxytab1)
6. Long pressing on the status bar then sliding your finger left and right adjusts the screen brightness but only when NOT using auto-brightness. (djowett)
7. Three ways to take a screen shot:
I: Using the S-Pen hold in the button then press on the screen until the shot is taken.
II: Like you were doing a hand shake, swipe the bottom of your palm across the screen either left to right or right to left.
III: Press The home button and power button together. (dr.ketan)
8. There is a toggle for the noise reduction during calls. Press menu AFTER call is connected to invoke the option. (Galaxytab1)
9. When you open your contacts list if you swipe your finger over their name to the right it calls them and when you swipe left it opens up an SMS to them. (Braxos)
10. The contacts can be made to search not only with the first letter but second also. Try touching the letters 'A,B,C...'on the right edge of the contacts list and then swipe away towards left, you will see the second letters appearing by which to look up contacts. (Galaxytab1)
11. Pressing the home button wakes the screen up from sleep. (ItsMathematics)
12. The built-in alarm app will ring out the headphones, when plugged in. (eksasol)
13. Pressing the button on the S-Pen and then double tapping on any screen at any point will bring up the S-Memo app. (zs6wdl)/(BaconDanny)
14. Track and remote control various options using 'Find My Mobile' activate in Settings/Location and Security. See this post for a more detailed description http://forum.xda-developers.com/showthread.php?t=1410757 Very handy if you loose your phone. (dr.ketan)
15. Pinch to zoom also works in the camera app. (hagba)
16. You can control the FM radio using the packaged earphones. Long pressing the call button starts and stops the player and single presses moves you to the next station. (Strategist )
17. Touch and twist with one finger to rotate photos in gallery, don't use the top of your finger, more like if you were pressing in a fingerprint and then twist 90 degrees. (Darius)
18. Pause your music using the palm of your hand. When playing music and the screen is active place your palm of your hand over the entire screen to pause it until you remove your hand. (Darius)
19. In camera settings choose "edit shortcuts" and you can drag the ones you want onto the left for quick access. Also works for video mode shortcuts as well, useful for quick resolution change. (Darius)
20. Use three fingers to scroll completely up or down entire pages. (masiegel)
21. Long pressing the home button will bring up the last 6 programs used and a short-cut to the task manager. (hagba)
22. To make the keyboard disappear quickly, swipe downward on the keyboard. (imajin)
23. Don't use voice commands? Don't want it to pop up when double clicking home button? It can be easily disabled in apps/Voice Talk/Menu. (Galaxytab1)
24. To mute your ring or alarm just gently turn over the phone so the its face down on a flat surface. (mcatt66)
25. Long pressing the back button in the browser brings up the history list. (katyarevishal)
26. In settings-accessibility at the bottom is a sub menu called answering/end calls, there you can toggle the use of the power button to end the call. I like this one as there is always a small delay in the seen coming on to highlight the end call button.
There's also a toggle for answering a call using the home button and an automatic answer option using the stereo headset. (jamieross)
Pictures supplied by galaxytab1 Link2Post
27. S-memo syncs with Google Docs, just go to S-Memo/Menu/Sync. (Galaxytab1)
28. Tips on S-memo sync with Google Docs:
I. Search option in Docs searches the whole of your document and not just the title. So, of you type something in the notes, it is searchable.
II. Title can be entered at the top, however, any text that you enter on the notes becomes the title.
III. S-Memo also has a tag system (Edit Tag) which neatly arranges your memos together, go to S-Memo/Menu/Sort by tag. (Galaxytab1)
IV. If you are syncing with google docs, deleting a memo doesn't delete the memo on google cloud. So any memo you deleted will be back next time you sync unless you login in at docs and delete the memo.
29. In the stock browser if u pinch to zoom out while fully zoomed out it brings up the new and choose window feature. (jamieross)
30. Upon pressing the status bar for a few seconds,when its pulled right till the bottom of the screen,it disappears immediately,without the need it to pull it up or going back. (NoRmAlY_CrAzY)
31. In S Planner, pinch to zoom will take you to year/month/week/day/now views quickly. Pretty slick. (Croak)
32. While playing a video touch the screen and slide up or down to control the volume. And slide left or right to control the elapsed time. (hagba)
33. I. When opening the calculator you got the standard use of it switching to landscape mode your phone then the calculator switches to a more scientific mode. Not a fully scientific but it gets some good things. (Braxos)
II. Just to add if u slide down the arrow u get all your past calculations.... (jamieross)
34. You can fast forward and rewind while watching videos in the stock galaxy note app. (Chillz88)
35. The photo editor provided by Samsung has this one nifty feature:
Crop a photo and paste into another/The cropped image colour scheme will adjust to the new background. Link2Post (galaxytab1)
36. 3rd party launchers don't support widgets from s-memo, s-planner etc (galaxytab1)
37. Here is one more use of the pen:
Install Handwriting Recognition Calculator from Samsung Apps (not in Market). It works most of the time and even if recognition is not good, there is an edit option to reenter the figures. Kinda cool with the pen! Link2Post (galaxytab1)
Tips and tricks that help better use of your Note
1. To read at night, display brightness can be dimmed using the app 'screen filter' at http://market.android.com/search?q=pname:com.haxor . (Galaxytab1)
2. ezPdf has this 'freehand' annotation, pen can write on the pdf file and saved there itself, visible on any platform as comments within the pdf.
https://market.android.com/details?id=udk.android.reader&hl=en (Galaxytab1)
3. Use this app to get to camcorder directly, bypassing camera.
http://market.android.com/search?q=p...wens.Camcorder (Galaxytab1)
4. You can connect any mouse and keyboard plus any samsung printer to galaxy note just using on-the-go cable. (bdodge1989)
5. It is not something exclusive to galaxy note, butI discovered these Swype keypad shortcuts on my note: (galaxytab1)
I. Swype key to '123' key swipe: edit options
II. Swype key to 'a'key swipe: select all
III. Swype key to 'x', 'c', 'v'key swipe: cut, copy, paste respectively.
IV. Swype key to 'r' or 't' or 'y' key swipe: numeric keyboard. (este548)
6. One of the best features I like on the GNote is the Clipboard,I havn't noticed this in any other Android device.
one can select the text in almost any application and it will be copied to the Clipboard,I have downloaded an App called AndClip from the Market(free),with it I can View,copy,Delete etc. all the texts which are copied to the Clipboard.
Very usefull feature. (hagba)
7. The notification bar is tough to draw on such a large screen with single hand use, which is why I am using this app:
https://market.android.com/details?i...tusbarexpander Place it on swipepad or other launchers or home screen. (galaxytab1)
8. In the Note, you can set your physical buttons to both answer and end calls.
Go to settings-> accessibility-> Call answering and ending and enable these options
9. In S Planner, letting go after a held tap on a date box in Month view, or [the small space under the date]* in Week/3Days/Days view, will bring out S Memo Lite and what you scribble will be saved to the day where you entered it.
10. Just like in contacts, while in messaging, the swiping to the left to send a text (why?) and swiping to the right to call are still functional.
Technical Information and Tips
1. dial *#0*# to enter hardware test mode. (bnapalm)
2. Some general codes:
*#*#4636#*#**- Shows*Phone information,*Battery information,*Battery history,*Usage statistics
*#*#8255#*#**- Show GTalk service monitor
*#*#1111#*#**- Service Mode
*#*#232331#*#**- Bluetooth test
*#*#3264#*#**- RAM version
*#*#0588#*#**- Proximity sensor test
*#*#2664#*#**- Touch screen test
*#*#0842#*#**- Vibration test
(Galaxytab1)
3. Probably the full list of codes, but some may not work, use at your own risk:
*#06# = IMEI Number.
*#1234# = Firmware Version.
*#2222# = H/W Version.
*#8999*8376263# = All Versions Together.
*#8999*8378# = Test Menu.
*#4777*8665# = GPSR Tool.
*#8999*523# = LCD Brightness.
*#8999*377# = Error Menu.
*#8999*327# = EEP Menu.
*#8999*667# = Debug Mode.
*#92782# = PhoneModel. (Wap)
#*5737425# = JAVA Mode.
*#2255# = Call List.
*#232337# = Bluetooth MAC Adress.
*#5282837# = Java Version.
#*4773# = Incremental Redundancy.
#*7752# = 8 PSK uplink capability bit.
#*7785# = Reset wakeup & RTK timer cariables/variables.
#*7200# = Tone Generator Mute.
#*3888# = BLUETOOTH Test mode.
#*7828# = Task screen.
#*#8377466# = S/W Version & H/W Version.
#*2562# = Restarts Phone.
#*2565# = No Blocking? General Defense.
#*3353# = General Defense, Code Erased.
#*3837# = Phone Hangs on White screen.
#*3849# = Restarts Phone.
#*3851# = Restarts Phone.
#*3876# = Restarts Phone.
#*7222# = Operation Typ: (Class C GSM)
#*7224# = !!! ERROR !!!
#*7252# = Operation Typ: (Class B GPRS)
#*7271# = CMD: (Not Available)
#*7274# = CMD: (Not Available)
#*7337# = Restarts Phone. (Resets Wap Settings)
#*2787# = CRTP ON/OFF.
#*2886# = AutoAnswer ON/OFF.
#*3737# = L1 AFC.
#*5133# = L1 HO Data.
#*7288# = GPRS Detached/Attached.
#*7287# = GPRS Attached.
#*7666# = White Screen.
#*7693# = Sleep Deactivate/Activate.
#*7284# = L1 HO Data.
#*2256# = Calibration info? (For CMD set DEBUGAUTONOMY in cihard.opt)
#*2286# = Databattery.
#*2527# = GPRS switching set to (Class 4, 8, 9, 10)
#*2679# = Copycat feature Activa/Deactivate.
#*3940# = External looptest 9600 bps.
#*4263# = Handsfree mode Activate/Deactivate.
#*4700# = Please use function 2637.
#*7352# = BVMC Reg value (LOW_SWTOFF, NOMINAL_SWTOFF)
#*2558# = Time ON.
#*3370# = Same as 4700.
#*3941# = External looptest 115200 bps
#*5176# = L1 Sleep.
#*7462# = SIM Phase.
#*7983# = Voltage/Freq.
#*7986# = Voltage.
#*8466# = Old Time.
#*2255# = Call Failed.
#*5187# = L1C2G trace Activate/Deactivate.
#*5376# = DELETE ALL SMS!!!!.
#*6837# = Official Software Version: (0003000016000702)
#*7524# = KCGPRS: (FF FF FF FF FF FF FF FF 07)
#*7562# = LOCI GPRS: (FF FF FF FF FF FF FF FF FF FF FF FE FF 01)
#*2337# = Permanent Registration Beep.
#*2474# = Charging Duration.
#*2834# = Audio Path. (Handsfree)
#*3270# = DCS Support Activate/Deactivate.
#*3282# = Data Activate/Deactivate.
#*3476# = EGSM Activate/Deactivate.
#*3676# = FORMAT FLASH VOLUME!!!
#*4760# = GSM Activate/Deactivate.
#*4864# = White Screen.
#*5171# = L1P1.
#*5172# = L1P2.
#*5173# = L1P3.
#*7326# = Accessory.
#*7683# = Sleep variable.
#*8465# = Time in L1.
#*2252# = Current CAL.
#*2836# = AVDDSS Management Activate/Deactivate.
#*3877# = Dump of SPY trace.
#*7728# = RSAV.
#*2677# = Same as 4700.
#*3728# = Time 2 Decod.
#*3725# = B4 last off.
#*7372# = Resetting the time to DPB variables.
#*7732# = Packet flow context bit Activate/Deactivate.
#*6833# = New uplink establishment Activate/Deactivate.
#*3273# = EGPRS multislot. (Class 4, 8, 9, 10)
#*7722# = RLC bitmap compression Activate/Deactivate.
#*2351# = Blinks 1347E201 in RED.
#*4472# = Hysteresis of serving cell: 3 dB
#*2775# = Switch to 2 inner speaker.
#*9270# = Force WBS.
#*7878# = FirstStartup. (0=NO, 1=YES)
#*3757# = DSL UART speed set to. (LOW, HIGH)
#*8726# = Switches USBACM to Normal.
#*8724# = Switches USBACM to Generator mode.
#*8727# = Switches USBACM to Slink mode.
#*8725# = Switches USBACM to Loop-back mode.
#*3838# = Blinks 3D030300 in RED.
#*2077# = GPRS Switch.
#*2027# = GPRS Switch.
#*0227# = GPRS Switch.
#*0277# = GPRS Switch.
#*8370# = Tfs4.0 Test 0.
#*8371# = Tfs4.0 Test 1.
#*8372# = Tfs4.0 Test 2.
#*8373# = Tfs4.0 Test 3.
#*8374# = Tfs4.0 Test 4.
#*8375# = Tfs4.0 Test 5.
#*8376# = Tfs4.0 Test 6.
#*8377# = Tfs4.0 Test 7.
#*8378# = Tfs4.0 Test 8.
#*8379# = Tfs4.0 Test 9.
#*7878# = FirstStartup. (0=NO, 1=YES)
#*3838# = Blinks 3D030300 in RED.
#*2077# = GPRS Switch.
#*2027# = GPRS Switch.
#*0227# = GPRS Switch.
#*0277# = GPRS Switch.
#*22671# = AMR REC START.
#*22672# = Stop AMR REC. (File name: /a/multimedia/sounds/voice list/ENGMODE.amr)
#*22673# = Pause REC.
#*22674# = Resume REC.
#*22675# = AMR Playback.
#*22676# = AMR Stop Play.
#*22677# = Pause Play.
#*22678# = Resume Play.
#*77261# = PCM Rec Req.
#*77262# = Stop PCM Rec.
#*77263# = PCM Playback.
#*77264# = PCM Stop Play.
#*22679# = AMR Get Time.
*#8999*364# = Watchdog ON/OFF.
*#8999*427# = WATCHDOG signal route setup.
*2767*226372# = Camera Reset. (deletes photos)
*2767*3855# = E2P Full Reset.
*2767*2878# = E2P Custom Reset.
*2767*927# = E2P Wap Reset.
*2767*226372# = E2P Camera Reset.
*2767*688# = Reset Mobile TV.
#7263867# = RAM Dump. (On or Off)
* # 06 # Show IMEI number
next
* # 0 * # LCD Test Menu
* # * # 4636 # * # * user statistics and Phone Info
* # 0011 # Displays status information for the GSM
*#1234# View SW Version PDA, CSC, MODEM
*#12580*369# SW & HW Info
*#197328640# Service Mode
*#0228# ADC Reading
*#32489# (Ciphering Info)
*#232337# Bluetooth Address
*#232331# Bluetooth Test Mode
*#232338# WLAN MAC Address
*#232339# WLAN Test Mode
*#0842# Vibra Motor Test Mode
*#0782# Real Time Clock Test
*#0673# Audio Test Mode
*#0*# General Test Mode
*#2263# RF Band Selection
*#9090# Diagnostic ConfiguratioN
*#7284# USB I2C Mode Control
*#872564# USB Logging Control
*#4238378# GCF Configuration
*#0283# Audio Loopback Control
*#1575# GPS Control Menu
*#3214789650# LBS Test Mode
*#745# RIL Dump Menu
*#746# Debug Dump Menu
*#9900# System Dump Mode
*#44336# Sofware Version Info
*#7780# Factory Reset
*2767*3855# Full Factory Reset
*#0289# Melody Test Mode
*#2663# TSP / TSK firmware update
*#03# NAND Flash S/N
*#0589# Light Sensor Test Mode
*#0588# Proximity Sensor Test Mode
*#273283*255*3282*# Data Create Menu
*#273283*255*663282*# Data Create SD Card
*#3282*727336*# Data Usage Status
*#7594# Remap Shutdown to End Call TSK
*#34971539# Camera Firmware Update
*#526# WLAN Engineering Mode
*#528# WLAN Engineering Mode
*#7412365# Camera Firmware Menu
*#07# Test History
*#3214789# GCF Mode Status
*#272886# Auto Answer Selection
*#8736364# OTA Update Menu
*#301279# HSDPA/HSUPA Control Menu
*#7353# Quick Test Menu
*2767*4387264636# Sellout SMS / PCODE view
*#7465625# View Phone Lock Status
*7465625*638*# Configure Network Lock MCC/MNC
#7465625*638*# Insert Network Lock Keycode
*7465625*782*# Configure Network Lock NSP
#7465625*782*# Insert Partitial Network Lock Keycode
*7465625*77*# Insert Network Lock Keycode SP
#7465625*77*# Insert Operator Lock Keycode
*7465625*27*# Insert Network Lock Keycode NSP/CP
#7465625*27*# Insert Content Provider Keycode
*#272*imei#* Product code , works on Froyo
*#*#7780#*#* Factory data reset - Clears Google-account data, system and program settings and installed programs. system will not be deleted, and OEM programs, as well as My Documents (pictures, music, videos). (skyhew)
Custom and Stock ROM related
Information:
:: [REF] How to remove yellow triangle on any firmware with JIG (anonymous572)
http://forum.xda-developers.com/showthread.php?t=1354888
:: [16Nov11]How to Root/Unroot Samsung Galaxy Note + CWM (dr.ketan)
http://forum.xda-developers.com/showthread.php?t=1329360
ROM list:
:: [STOCK ROMS] All available stock ROM for N7000 (dr.ketan)
http://forum.xda-developers.com/showthread.php?t=1424997
:: [Stock ROM] N7000XXKL8 (dr.ketan)
http://forum.xda-developers.com/showthread.php?t=1423514
:: [ROM] ROCKET ROM - v13 - XXKL7 (eyebee1970)
http://forum.xda-developers.com/showthread.php?t=1380284
:: [ROM] ROMOW-V5 (mowmo)
http://forum.xda-developers.com/showthread.php?t=1365246
:: [ROM] DarkyRom Note V2.1.4 KL7 (nuclearmonkeyuk)
http://forum.xda-developers.com/showthread.php?t=1398359
:: [ROM] Cassie's XtraLiteRom KL7 ThunderBolted! V5 (thering1975)
http://forum.xda-developers.com/showthread.php?t=1365587
:: [ROM] MySam N7000 KL3 Ed.2.0 (2.3.6, base KL3, nowipe) (jblanc)
http://forum.xda-developers.com/showthread.php?t=1368741
:: [Kernel][12/31/11][Samsung Galaxy Note][AbyssNote][v2.6] (Chris X)
http://forum.xda-developers.com/showthread.php?t=1362424
the original thread begins here.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
I have seen this clipboard only on galaxy note so far, no other Android device. I guess it is a Samsung addition
Pressing and holding the menu key brings up google search
Also it toggles the keyboard in the browser, even when a text input box isn't selected ^_^
I tried a thread back in nov but some members started saying just read the manual. A thread like this should exist
Sent from my GT-N7000 using xda premium
Certain widgets from Samsung are resizable:
1. Bookmarks
2. Weather
3. s-memo
These are again only seen in galaxy note i guess
The new browser in 2.3.6 upgrade has this new brightness option:
Does music player tags in other Android devices? It does so well in galaxy note here.
Also, the radio has a record button (didn't test)
To read at night, display brightness can be dimmed using the app 'screen filter' at http://market.android.com/search?q=pname:com.haxor
indie said:
I tried a thread back in nov but some members started saying just read the manual. A thread like this should exist
Sent from my GT-N7000 using xda premium
Click to expand...
Click to collapse
Add up to the pool, contribute your tip
Long pressing on the status bar till it pops up then disappears changes the status bar into a brightness slider when not on auto brightness.
Sent from my GT-N7000 using Tapatalk
3 way to take screenshot
1. with S pen
2.swype palm over screen
3. press menu+power key
ezPdf has this 'freehand' annotation, pen can write on the pdf file and saved there itself, visible on any platform as comments within the pdf.
dr.ketan said:
3 way to take screenshot
1. with S pen
2.swype palm over screen
3. press menu+power key
Click to expand...
Click to collapse
#2 is amazing! It's like "scanning" the screen with your palm.
Sent from my GT-N7000 using Tapatalk
gviterbo said:
#2 is amazing! It's like "scanning" the screen with your palm.
Sent from my GT-N7000 using Tapatalk
Click to expand...
Click to collapse
Just few months back, it was required to root your Android to take a screenshot, which is to say, google didn't actually allow it. And now...
djowett said:
Long pressing on the status bar till it pops up then disappears changes the status bar into a brightness slider when not on auto brightness.
Sent from my GT-N7000 using Tapatalk
Click to expand...
Click to collapse
Outside of forums, i guess this doesn't find mention anywhere.
There is a toggle for the noise reduction during calls. Press menu after call is connected to invoke the option. Check screenshot.

Joying 2GB - Steering wheel key customization - V6 (NO KILL)

THIS MOD IS ONLY FOR THE JOYING / 2GB / Sofia models - It is stable and working well .
Please use V4.1 if you have not upgraded to Marshmallow!
History:
V6.4: Update using code base 9/1/2017 Joying Update ( Android 6.0 ) (updated Oct 7)
Changes:
- Meida keys - Removed support for media keys customization. No longer sent to launcher.sh due to slow response time.
- Media keys - Modified code to only send media keys to the active media player.
- Changed reboot timer from 1/2 second to 2 seconds. Should help eliminate random reboots when coming from standby.
- Updated player_app.txt and navi_app.txt to latest from @surfer63
- Fixed issue with button 33 not working
- Files included:
- V6.4-Sofia-1-C9-Server_NOKILL.zip - Original file with task killer removed
- V6.4-Sofia-1-C9-Server_NOKILL_GVS.zip - Task killer removed, Google Voice Search on 'SRC' key
- V6.4-Custom_Keys-Mods.zip - Complete key modifications ( requires launcher.sh - description below )
V6.3: Update using code base 5/25/2017 Joying Update ( Android 6.0 )
- Files included:
- V6.3-Sofia-1-C9-Server_NOKILL.zip - Original file with task killer removed
- V6.3-Sofia-1-C9-Server_NOKILL_GVS.zip - Task killer removed, Google Voice Search on 'SRC' key
- V6.3-Custom_Keys-Mods.zip - Complete key modifications ( requires launcher.sh - description below )
V6.2: Updated using code base 5/8/2017 Joying Update ( Android 6.0 )
- Added fix for google maps voice output on radio from @xdamember2
V6.1: Updated code base using 5/8/2017 Joying Update ( Android 6.0 )
V6: Updated code base using 4/27/2017 Joying Update ( Android 6.0 )
Android 5.1.1
V4.1 - Fixed issue with "Google Voice Search" not lowering music volume (3/23/2017) - Android 5.1.1
V4: Updated code base using 3/14/2017 Joying ROM
Changes/Added support for:
- MEDIA KEY - hard key on unit
- BAND KEY - hard key on unit
- ACC_ON - Triggers on key on
- Minor changes to example shell scripts to add cases for MEDIA, BAND, ACC_ON ( launcher.sh )
- FIX/UPDATE - Updated list of NAVI APPS in assets/property/navi_app.txt ( allows more applications to speak during radio )
- Many thanks to @surfer63 for navi app radio fix and windows install script
V3 - Rebuilt using latest Joying ROM dated 2/22/2017 - Includes V1 & V2 steering wheel / key modifications.
Changes/Added support for:
- ACC_OFF - Added support for running actions at key off (case 98 )
- Added case 98 to example scripts to perform "PAUSE" - to stop current music player when key off
V2 Removed killAppWhenSleep(); - Eliminates tasks being killed on sleep
Added support for additional keys / Minor changes to example shell script ( launcher.sh )
- HANG - steering wheel softkey
- DVD - hard key on unit (if available)
- EJECT- hard key on unit (if available)
- CALL/BT softkey - Fixed issue where key would not respond after call disconnect.
V1 Initial version
There is little risk with this mod, but please understand what you are doing, and make backup of the original apk file ( in case you want to revert back ). The installer script does make a backup, but will overwrite the backup if installed more than once.
I also added a simpler "launcher_simple.sh" into the zip, which only changes the functionality of the Source (rotates radio, pandora, spotify ) and Call buttons ( google voice command ). These scripts are working examples of what can be done. If you want the simpler version, just rename "launcher_simple.sh" to "launcher.sh" before installing.
---------------------- Original Post -----------------
I have spent quite a bit of time working on being able to customize the steering wheel keys of my Joying 2GB headunit (JY-UL135N2 / 2GB / Sofia unit). I have made some good progress and thought I would share what I have done so far.
The system package /system/app/Sofia-1-C9-Server-V1.0/Sofia-1-C9-Server-V1.0.apk has been modified to intercept the keys sent by the MCU, and thus able to change the behavior of the key presses. The keys listed below are supported, and will launch a "shell" process, so any action that can be done by the command line can be performed. If your not familiar with the Android command line, you might be surprised how powerful it is. As a side note, this works very fast and efficient. From my testing the overhead of the system call and shell script is almost non-existent, and key presses are registered with no delay. In other words, it is working very nicely.
In addition to the steering wheel button mods, also provided is the ability to launch a command or series of commands when a RESUME is received.
Included is my shell script (example) that can be used as a model for your own customization. The example script included performs the following actions:
CALL/BT PHONE(27) - One press is HOME, 2 presses is BACK, 3 presses brings up Google Voice Commands
MODE/SRC(37) - Rotates through music apps: Radio, Pandora, Spotify, Stock Music App - If it has been longer than 1 minute since the last press it will return you to the last selected music app with first press, then continue with the rotation. ( I'm working on a more intelligent way of doing this, that looks at the process list and will post soon)
NAVI(9) - One press is Torque, 2 presses is google maps
PAUSE/PLAY(85*),NEXT(87*), PREVIOUS(88*), FASTBACK(89*), FASTFWD(90*),HOME(3), BACK(4) - Currently set to perform stock functions. They ARE passed to script so they can be assigned other functions if wanted.
ACC_ON(97) - Executes at ignition switch on. Sample script has a 'play' here to restart music player that was paused at key off.
ACC_OFF(98) - Executes at ignition switch off. I suggest you assign "pause" on this case, to stop current music player. Resolves issue of music player advancing for several minutes after key is turned off.
RESUME(99) - Executes on system resume.
Please note the media control keys marked with a (*) are hardcoded to specific functions within the stock Joying applications. They are only passed through to the shell script when you are NOT using a Joying media application. They will ONLY work as the original keys when you are within the Joying media applications.
Remember, the apk is just handing codes to you, what you do with them after that is up to you! I have tried to comment the example script enough to be understandable to someone with basic programming knowledge.
Attached is a zip file with the updated Sofia-1-C9-Server-V1.0.apk, launcher.sh ( my example script), and install script. The launcher.sh script must be placed in the /data directory ( /data/launcher.sh ), as it is hardcoded in the apk file.
The install script is a shell/linux script, but you can easily copy/paste the adb commands if your using windows.
[NOTE: Please update to the latest version of busybox! I found some bugs in the version included by Joying that caused several issues.]
Awesome work. I will mess with this sometime this week. I still need to root my unit. Just installed it last week.
Sent from my SAMSUNG-SM-G935A using Tapatalk
Excellent work, sir! Before I start modifying the script for personal taste, could you help how to find key number for DVD and Eject buttons that currently have no function as the DVD drive is non-existent? Maybe logcat or something?
sonof said:
Excellent work, sir! Before I start modifying the script for personal taste, could you help how to find key number for DVD and Eject buttons that currently have no function as the DVD drive is non-existent? Maybe logcat or something?
Click to expand...
Click to collapse
I see a few references in the code for the DVD/eject button in the common code. My 'best guess' would be to add a system call to the cases listed below, but I seriously doubt the MCU would even send the codes if there is no DVD present.
bsp/FinalBsp.java
public static final int KEY_CODE_DVD = 242;
public static final int KEY_CODE_EJECT = 231;
bsp/HandlerBspKey.java
public static void keyEvent(int paramInt1, int paramInt2)
case 242:
bspKeyDvd(paramInt2);
return;
case 231:
bspKeyEject(paramInt2);
return;
gustden said:
I see a few references in the code for the DVD/eject button in the common code. My 'best guess' would be to add a system call to the cases listed below, but I seriously doubt the MCU would even send the codes if there is no DVD present.
bsp/FinalBsp.java
public static final int KEY_CODE_DVD = 242;
public static final int KEY_CODE_EJECT = 231;
bsp/HandlerBspKey.java
public static void keyEvent(int paramInt1, int paramInt2)
case 242:
bspKeyDvd(paramInt2);
return;
case 231:
bspKeyEject(paramInt2);
return;
Click to expand...
Click to collapse
Seems that MCU does send the codes as seen here.
I will see what I can do but I doubt I am able to do anything as I just installed apktool the first time today and am new with apk's. Thanks for your efforts! Very appreciated.
sonof said:
Excellent work, sir! Before I start modifying the script for personal taste, could you help how to find key number for DVD and Eject buttons that currently have no function as the DVD drive is non-existent? Maybe logcat or something?
Click to expand...
Click to collapse
sonof said:
Seems that MCU does send the codes as seen here.
I will see what I can do but I doubt I am able to do anything as I just installed apktool the first time today and am new with apk's. Thanks for your efforts! Very appreciated.
Click to expand...
Click to collapse
If I create and send you a apk file with additional debug statements, would you be able to install it, and capture the 'logcat' of the buttons being pressed? It makes it much more difficult since I don't have the DVD buttons. Hacking smali code is a LOT of trial and errors. Their code is quite complex, and doesn't decompile into Java very nicely in some critical areas.
gustden said:
If I create and send you a apk file with additional debug statements, would you be able to install it, and capture the 'logcat' of the buttons being pressed? It makes it much more difficult since I don't have the DVD buttons. Hacking smali code is a LOT of trial and errors. Their code is quite complex, and doesn't decompile into Java very nicely in some critical areas.
Click to expand...
Click to collapse
Yes I am capable of doing that!
sonof said:
Excellent work, sir! Before I start modifying the script for personal taste, could you help how to find key number for DVD and Eject buttons that currently have no function as the DVD drive is non-existent? Maybe logcat or something?
Click to expand...
Click to collapse
sonof said:
Yes I am capable of doing that!
Click to expand...
Click to collapse
I put in debugging code that parses the data stream from the MCU and dumps the first 4 bytes of EVERY message that is received from the MCU (skipping checksum info). Simply replace the original file (make a copy first ) and reboot. When looking for the keys, I suggest you do not use the radio, as it sends a constant flood of messages, such as RDS updates.
Even when the radio is off, there are still messages constantly being sent. If you filter on the debug messages MCUKEY in adb, and press the button in question a few times quickly, you should see a consistent pattern. I was able to identify the 'HANG' key in a couple minutes using this method. You should see something like this in the logcat:
D/MCUKEY ( 693): MCUKEYINPUT: B1=1 B2=0 B2=5 B2=224
D/MCUKEY ( 693): MCUKEYINPUT: B1=1 B2=7 B2=16 B2=0
D/MCUKEY ( 693): MCUKEYINPUT: B1=1 B2=0 B2=0 B2=49
D/MCUKEY ( 693): MCUKEYINPUT: B1=1 B2=7 B2=16 B2=0
D/MCUKEY ( 693): MCUKEYINPUT: B1=1 B2=3 B2=34 B2=0
In this case the HANG key is in bold ( 1, 7, 16, 0 ) messages. IF the DVD and eject keys are sent, they should definitely show up here. Not every key is sent by the MCU, if it is not relevant to the current state of the system. For example the media buttons are not sent when the radio is on, since the MCU is in control of the radio, however it does send the results such as a frequency change resulting from the button press.
It is possible that the MCU knows there is no DVD present and suppresses the messages. From looking at the code, it may be the action of a disc being ejected that is sent from the MCU, with the eject button press handled internally by the MCU. Your more likely to find the press of the DVD button than the eject button, but may find both.
When your done searching, you want to put back the original file and reboot. If you find the codes, I can certainly add them to trigger the shell script and you can take whatever action you want with them.
Thank you! I will try this the first thing next week when I get back home from a weekend trip.
Question: if I remove a customization from the script file for a key, the key should then perform its default functions, correct?
vassandrei said:
Question: if I remove a customization from the script file for a key, the key should then perform its default functions, correct?
Click to expand...
Click to collapse
The keys being passed to the shell script (launcher.sh) is hard-coded in the APK file and is just sent to the script. If you remove it from the script, the key would no longer do anything.
If you want to keep the stock functionality of a specific button, it should be fairly easy to duplicate it in the shell script. For example:
BT/CALL button: "am start com.syu.bt/com.syu.bt.BtAct"
NAVI: By default, I think NAVI just toggles between a Navi app, and the previous activity on the stack.
The code below should behave the same as the original for both the NAVI an BTPHONE buttons ( assuming your using google maps )
Code:
case $key in
9) # NAVI
x=`dumpsys activity activities | grep "Run #" | cut -f 13 -d" "| head -1 | grep maps`
if [ "$x" = "" ]
then
$maps
else
am start `dumpsys activity activities | grep "Run #" | cut -f 13 -d" " | grep -v launcher | grep -v systemui | grep -v maps |head -1`
fi
;;
27) # BTPHONE/PTT
am start com.syu.bt/com.syu.bt.BtAct
;;
Play/Pause: you can just remove the 85 case, it would just hit the default case and pass "input keyevent 85" which is identical in functionality.
gustden said:
The keys being passed to the shell script (launcher.sh) is hard-coded in the APK file and is just sent to the script. If you remove it from the script, the key would no longer do anything.
If you want to keep the stock functionality of a specific button, it should be fairly easy to duplicate it in the shell script. For example:
BT/CALL button: "am start com.syu.bt/com.syu.bt.BtAct"
NAVI: By default, I think NAVI just toggles between a Navi app, and the previous activity on the stack.
The code below should behave the same as the original for both the NAVI an BTPHONE buttons ( assuming your using google maps )
Code:
9) # NAVI
x=`dumpsys activity activities | grep "Run #" | cut -f 13 -d" "| grep -v launcher | grep -v systemui | head -1 | grep maps`
if [ "$x" = "" ]
then
$maps
else
am start `dumpsys activity activities | grep "Run #" | cut -f 13 -d" " | grep -v launcher | grep -v systemui | head -2 | tail -1`
fi
;;
27) # BTPHONE/PTT
am start com.syu.bt/com.syu.bt.BtAct
;;
Play/Pause: you can just remove the 85 case, it would just hit the default case and pass "input keyevent 85" which is identical in functionality.
Click to expand...
Click to collapse
brilliant! thank you so much!
Last thing: I want to have viper4android launch on resume (in the background ideally). where can I find the "app identifier" to put in the shell script?
vassandrei said:
Question: if I remove a customization from the script file for a key, the key should then perform its default functions, correct?
Click to expand...
Click to collapse
vassandrei said:
brilliant! thank you so much!
Last thing: I want to have viper4android launch on resume (in the background ideally). where can I find the "app identifier" to put in the shell script?
Click to expand...
Click to collapse
I made a slight change to the 'CODE' section of my previous post, so if you copy it make sure you get the edited version. I tested it and made a couple of changes.
There are several ways to get the package name and activity.
What I typically do is start the application on the unit and do the following in adb:
> adb shell
> dumpsys activity activities | grep "Run #"
This shows you a list of the activities ( package/activity ) in the task list with most recent at the top.
You should be able to pick it out pretty easily. If it is the app that I found with google, this should work to start it.
> am start com.vipercn.viper4android_v2/.activity.ViPER4Android
In most cases, you can just give the package name when using 'am start' with no need for the activity. It will default to the 'LAUNCHER' activity in the package. I usually always give the activity, just to be safe. I would sleep for a couple seconds to give it time to initialize and then $home to take you back to the Home screen. So whole command would look like this. It is easy to test using adb.
am start com.vipercn.viper4android_v2/.activity.ViPER4Android ; sleep 2 ; $home
Thanks for this, it's working great on my Joying (JY-UL135N2 ).
My only issue is that the CALL/BT PHONE (27) button is assigned to my "Pick Up/Call Out" button on my steering wheel. So I can't use it to pick up calls. I actually have another dedicated button on my steering to activate voice commands, so I'd rather assign the CALL/BT PHONE function to that. Do you happen to know how to find out what numbers corresponds to each button press?
akuma148 said:
Thanks for this, it's working great on my Joying (JY-UL135N2 ).
My only issue is that the CALL/BT PHONE (27) button is assigned to my "Pick Up/Call Out" button on my steering wheel. So I can't use it to pick up calls. I actually have another dedicated button on my steering to activate voice commands, so I'd rather assign the CALL/BT PHONE function to that. Do you happen to know how to find out what numbers corresponds to each button press?
Click to expand...
Click to collapse
I make and receive so few voice calls, It wasn't worth having a steering wheel button dedicated for the dialer/call pickup . I just tap the screen to answer and use google voice to make calls.
If you want to have a button answer a call, there *should* be a way to do it given the right command. I will play around with it more. Worse case I can just back out the changes for the (27) , and send you an updated apk.
I used the joying steering wheel control app and switched the dialer/call pickup to my voice button and that works, but my dialer/call pickup doesn't do anything. Please let me know if you want me to test anything. Thank you.
gustden said:
I put in debugging code that parses the data stream from the MCU and dumps the first 4 bytes of EVERY message that is received from the MCU (skipping checksum info). Simply replace the original file (make a copy first ) and reboot. When looking for the keys, I suggest you do not use the radio, as it sends a constant flood of messages, such as RDS updates.
Even when the radio is off, there are still messages constantly being sent. If you filter on the debug messages MCUKEY in adb, and press the button in question a few times quickly, you should see a consistent pattern. I was able to identify the 'HANG' key in a couple minutes using this method. You should see something like this in the logcat:
D/MCUKEY ( 693): MCUKEYINPUT: B1=1 B2=0 B2=5 B2=224
D/MCUKEY ( 693): MCUKEYINPUT: B1=1 B2=7 B2=16 B2=0
D/MCUKEY ( 693): MCUKEYINPUT: B1=1 B2=0 B2=0 B2=49
D/MCUKEY ( 693): MCUKEYINPUT: B1=1 B2=7 B2=16 B2=0
D/MCUKEY ( 693): MCUKEYINPUT: B1=1 B2=3 B2=34 B2=0
In this case the HANG key is in bold ( 1, 7, 16, 0 ) messages. IF the DVD and eject keys are sent, they should definitely show up here. Not every key is sent by the MCU, if it is not relevant to the current state of the system. For example the media buttons are not sent when the radio is on, since the MCU is in control of the radio, however it does send the results such as a frequency change resulting from the button press.
It is possible that the MCU knows there is no DVD present and suppresses the messages. From looking at the code, it may be the action of a disc being ejected that is sent from the MCU, with the eject button press handled internally by the MCU. Your more likely to find the press of the DVD button than the eject button, but may find both.
When your done searching, you want to put back the original file and reboot. If you find the codes, I can certainly add them to trigger the shell script and you can take whatever action you want with them.
Click to expand...
Click to collapse
Luckily the eject key was also found! Here are the codes:
DVD:
D/MCUKEY ( 691): MCUKEYINPUT: B1=1 B2=0 B2=16 B2=80
EJECT:
D/MCUKEY ( 691): MCUKEYINPUT: B1=1 B2=161 B2=2 B2=91
Looking forward to the modified apk. If you happen to take donations I'd be willing to give you a beer. Thank you.
Model number for reference: JY-AL003N2
sonof said:
Luckily the eject key was also found! Here are the codes:
DVD:
D/MCUKEY ( 691): MCUKEYINPUT: B1=1 B2=0 B2=16 B2=80
EJECT:
D/MCUKEY ( 691): MCUKEYINPUT: B1=1 B2=161 B2=2 B2=91
Looking forward to the modified apk. If you happen to take donations I'd be willing to give you a beer. Thank you.
Model number for reference: JY-AL003N2
Click to expand...
Click to collapse
Here is an updated apk file that should catch the code you listed. In the zip there is a file "keys.txt" and also updated APK file. The keys.txt is a complete list button codes for both the soft-keys ( steering wheel ) and hard-keys (on unit ) that the new apk sends to the script. This is a beta of V2.0 which I added:
3 - HOME ( On unit hard key )
4 - BACK ( On unit hard key )
28 - HANG/CALL END ( Steering wheel softkey)
31 - DVD ( On unit hard key )
32 - EJECT ( On unit hard key )
The HOME/BACK keys are sending the keycodes for the home/back actions. You don't need to map them in a script, as long as you have a default that passes keycodes at the end of the script.
*) input keyevent $key
;;
I have used it the last couple of days and it is working fine for me, but can't test the dvd or eject.
Let me know if it registers the keys.
sorry for the dumb question but do you need to root the unit to use this?
Is there a way to run a shell script when I switch ignition off and illumination on or off?

Categories

Resources