How to find Exchange Device ID on Outlook for iOS

The Problem:

Finding the device ID for Exchange when you use the native mail app for iOS is fairly straightforward, but if you use the Outlook for iOS app, it is much harder to find.

I’ve discovered a process to uncover the device ID, because it appears to be hidden from the Outlook app alltogether.


See this screenshot from an Outlook App device in Exchange Online. Compare it to the one below it of a device added with the native mail app.

The native mail app gives you more detail, which can help you identify the correct device easier. The Outlook app has almost no information besides the iOS version which is usually outdated.

Solution Outline:

We can get the device ID from your device that uses the Microsoft Outlook App, but you need to perform some additional steps.

You will need a Windows PC with the Microsoft store to download the Microsoft Diagnostic Data Viewer The mobile device in question must be connected to the same Wireless network as the diagnostic PC. The outlook app will create a TCP connection to the PC to send logs.


Download Microsoft Diagnostic Data Viewer on PC

Go into Settings and enable Office diagnostic data viewing on, and Remote Office diagnostic data viewing on

Open the Outlook App and go into Settings>Privacy Settings>View Diagnostic Data on Windows

Copy the Office Connection String from the Diagnostic Data Viewer, and enter it into the Connection String field on the Outlook App.

Exit back to the main screen of Outlook, and check for new messages by pulling down on the Inbox screen. You should see your mobile device show up on the sidebar of the Diagnostic Data Viewer

Select this device, and you should see JSON debugging information. This localId matches what we see in Exchange Admin Center


Bonus: How to find the Exchange Device ID in the native Mail App

  • Go to Settings>Mail>Accounts>Add Account
  • Select Microsoft Exchange. The Exchange Device ID should show at the bottom of the page.

DJI Smart Controller DIY Quick Charger

If you own a DJI Smart Controller, you may have come across this message while trying to plug it in to charge.

Current charging speed slow. Please use the charger that comes with the device for a faster charging speed.

Slow charging a smart controller could represent a hazard, because the slow charge rate isn’t enough power to maintain the battery level while flying your drone.

After a recent incident where the smart controller shut down while I was flying a drone, I became determined to find a solution to be able to rapid charge the controller via a battery pack I already had

A forum post I discovered mentioned the controller used Qualcomm’s QuickCharge standard. Qualcomm’s QuickCharge standard is a pre-USB PD era charging standard that allows negotiated charging above 5v for supported devices.

I didn’t want to buy yet another battery pack just for an antiquated standard, so I opted to make a cable that converts USB PD to QC instead.

Parts list (Amazon Affiliate links):

Consumables I already had:


Here is the final product:

The braided cord goes into the battery pack, and the barrel plug goes into the QC 3.0 adapter. This braided cord is the magic sauce that tells the charger to output 20v, and send that to the “yipin Hexha” adapter

That adapter will let you charge your Smart Controller significantly faster than before, and your controller won’t die while charging. Hope this helps!

Sony GTK-XB7 wont turn on. Bluetooth Speaker Repair Guide

I recently picked up a broken Sony bluetooth speaker locally for $20. Using a few resources I found online, I was able to easily fix the mainboard so it would turn on. Originally the speaker would show no lights at all, not respond to any buttons.

This seems like a common problem for this model, and this guide will hopefully help keep these surprisingly good sounding speakers out of the landfill.

My repair service

IF you are not comfortable working with high voltage, and soldering electrical components, I am providing a repair service for anyone who wants their board fixed. Feel free to email me at [email protected]. We will need to do some basic troubleshooting to confirm the issue is indeed something I can fix.

How to fix it yourself

(Note: Do this at your own risk. This guide may expose you to High voltage which is dangerous and I don’t take any responsibility for any damages, injury, or death).

To Fix it yourself, you will need to be skilled with a soldering iron, and have knowledge of basic electronic circuits.

Parts you’ll need (Amazon Affiliate links):

The problem with these speakers lies in the 5v power regulator IC and schottky diode. These components are prone to failure which causes the diode to dead short, and the IC to burn out. My thermal camera shows the 5v IC getting hotter than the rest of the board.

The power supply board provides 36v via a white and blue ribbon cable. This power supply is always on when AC power is provided. So if you can probe this wire and see 33-36 volts DC, your power supply is likely fine.

Rather than carefully desoldering the 5v IC and diode, then waiting possibly weeks for working replacement parts (That may end up failing again). I elected to bypass the integrated 5v circuit and use parts that you can get next day on Amazon.

Some people have found that simply replacing the SS34B diode fixed their problem, but in my case, I de-soldered and lifted the output (pin 3) of the 5V IC and found no voltage was present, telling me the chip was bad. IF your 5v is good, and the diode is bad, you can either replace it with another SS34B, or a common 1N5822 through-hole style diode

The easiest way to remove the 5V IC is to use your side cutters to cut the legs off of the chip (Labeled U3 on the board). You will not be able to completely remove the IC from the board without a hot air station. The bottom of the chip is a ground and soldered to the PCB.

Now, de-solder the schottky SS34B diode(D1)

Find or purchase an off the shelf buck converter from a site like Amazon. I used this one

Strip some wire off of the 36v ribbon cable to solder a wire that will go to the “V+ In” on the buck converter.


Solder a wire onto the Anode side of ZD2. (You’ll see the diode, blue and orange next to the inductor labeled 220). Solder this wire to the “V- In” on the buck converter.


Turn the power supply on, and use the trim pot to adjust the output voltage to 5.00v DC.

Once you have voltage dialed in, solder a new wire onto the Cathode(blue) side of ZD2. Solder the other end of this wire to “V+ Out”

We are essentially bypassing the burnt out 5v circuit and replacing it with a buck converter.

Use Kapton tape to tape down the wires and prevent any movement or stress to the parts you soldered

Use electrical tape to cover the spliced 36v ribbon cable

Reassemble the board and test.


Board works.

Reassembled everything, tested all the functions including the app and remote control. No issues.


Hardwire gude 2022 Hyundai Elantra N

This guide will show you the fuse locations and equipment needed to hardwire a radar detector or dashcam on a 2022 Hyundai Elantra N


Consumables needed: Micro2 Fuse Tap (Affiliate Link)

Note: Fuse Taps are directional! For unpopulated fuse banks, only put a fuse in the top and leave the passthrough spot empty.

Fuse Locations

Fuse 47 (red wire on right) should be unpopulated. The left side will provide +12V when the car is on. Insert the fuse tap with the fuse facing down. You can use this for Radar Detectors, Remote wire for amp turn on, Dashcam, etc.

Fuse 31 (yellow wire on left) will provide the car +12v at all times. You can use this for parking mode wire

Ground Location

  1. Remove the front door scuff trim.
  2. Remove the hood latch release handle by pulling it away from the trim
  3. Remove the front door body side weatherstrip.
  4. Using a screwdriver or remover, remove the cowl side trim
  5. Under this you will see a bolt used to hold the dashboard to the chassis.
  6. Remove the bolt and grind down the paint in a small patch around the bolt hole to expose the bare metal.
  7. This surface will be suitable to use as a ground.

How to fix Mazda touchscreen cracking / delamination

This is a guide on how to replace the touchscreen on a Mazdaconnect infotainment system.

This guide involves some basic tools and a $15-$25 part from Aliexpress. It is significantly cheaper than having a dealership replace the entire CMU ($1500+), or DIY replacing the whole screen assembly($200).

The problem: Repeated hot/cold cycles causes de-lamination of the adhesive used to combine the touchscreen cover and the digitizer. This failure was a manufacturing defect, and newer vehicles produced by Mazda do not have this problem.

If your car is experiencing any of the issues seen below, this operation may be required to resolve.

If your car is still under full warranty, you can get it replaced at no charge. Info

Note: I took these pictures while re-assembling, after fixing my screen. If something doesn’t look right, let me know. Certain steps in this guide must be done with extreme caution to not damage the screen PCB. If you are not comfortable with working on electronics, do not begin this guide.

If you found this guide helpful, please consider using the affiliate links below to purchase Tools needed for this project. 

See links below to purchase

Buy Replacement touchscreen from Aliexpress

Buy Replacement touchscreen on eBay (Affiliate Link)

Disclosure about affiliate links: “When you click on links to various merchants on this site and make a purchase, this can result in this site earning a commission. Affiliate programs and affiliations include, but are not limited to, the eBay Partner Network.”

Buy Replacement touchscreen on Amazon (Affiliate Link)


TL;DR FreePBX and Polycom VVX provisioning

This guide will quickly give you very important information you need on provisioning VVX phones with FreePBX

When a phone is factory reset, it will get a DHCP lease.

Polycom VVX phones have a mac address starting with 0004F2. You can create a policy in Windows DHCP server to allocate specific IPs to the phones

Polycom phones utilize DHCP option 160 to find a provisioning server. The contents of option 160 must be in string format. (e.g. tftp://

For time synchronization, DHCP option 42 must be set.

They also use DHCP option 002 to get the time offset. 

I use software called Tftpd64 to create a tftp server on my windows PCs. I tell it which folder I dump all my config files into.

when the phone boots, it will look for [mac address].cfg, if it can’t find that, it will look for [mac address]-web.cfg, then 000000000000.cfg.

000000000000.cfg is supposed to be the catchall for phone provisioning. It should not contain any actual phone provisioning commands, it only helps the phone point to other configuration files.

Example 000000000000.cfg here

Polycom recommends using XML Notepad by Microsoft to edit these files.

000000000000.cfg defines the following settings before the phone boots:

  • the firmware update file location
  • which config files to load (I recommend setting up a generalize.cfg file, then a [PHONE_MAC_ADDRESS]-sip.cfg file for each individual phone)
  • where to store boot logs (polycom phones will write its boot logs back to the TFTP server)
  • where to store call history logs (polycom phones will write this back to the TFTP server)

This is an example deployment scenario:

  1. The phone reads 000000000000.cfg because it couldn’t find [phone mac].cfg or [phone mac]-web.cfg
  2. Phone will check for firmware updates defined in the file, if none are found it will continue
  3. 000000000000.cfg points to generalize.cfg and [PHONE_MAC_ADDRESS]-sip.cfg
  4. generalize.cfg is read and applied (these settings apply to all phones)
  5. [PHONE_MAC_ADDRESS]-sip.cfg is substituted for the phones MAC, and then is read. (these settings contain passwords, and settings specific to that phone)
  6. The phone boots

The following settings are important for a FreePBX Deployment

generalize.cfg – Settings that don’t change, used by all phones.

msg.mwi.1.callBackMode=”contact” – This is part of the fix for the voicemail button. By default it is set to “register”, but FreePBX requires SIP phones to call a number to get voicemail

voIpProt.SIP.AlertInfo.1.value=”Auto Answer” – When a user dials *80[ext], typically the phone will autoanswer. This is known as page/intercom mode. Special SIP headers are sent by FreePBX so the phone recognizes a page from a regular call. Setting this will make the phone aware of a page

voIpProt.SIP.AlertInfo.1.class=”ringAutoAnswer” – your polycom phone has profiles that define what ringtone to use, how many times to ring, and to auto answer. This setting will tell the phone to auto answer if the SIP.AlertInfo field equals “Auto Answer”

attendant.resourceList.1.label=”Page All” – I have my main page group set to 900 in FreePBX -> Applications -> Paging and Intercom -> Page Group. These commands will create a softkey button to page all phones in page group 900.



[PHONE_MAC_ADDRESS]-sip.cfg – you will need one of these per phone, since the attributes defined in this file are specific to each phone

msg.mwi.1.subscribe=”[ext]” – enter your sip extension here to get the mailbox to work

msg.mwi.1.callBack=”*98[ext]” – enter *98 and your sip extension here. This is the number that is called when the voicemail button is pressed.


Other notes:

  • Web interface changes:
    • Whenever you manually go into the web interface and make a phone setting change, the phone will write a file [phonemac]-web.cfg to the TFTP server
    • This will prevent it from loading 000000000000.cfg in the future.
  • Web browser:
    • The VVX phones have a full featured web browser, good for internal company resources, or in my case, garage door openers, door buzzers, etc.
    • see mb.main.home for more info

Stereo install: XAV-AX100 in a 2018 Subaru WRX Premium

This is a technical guide on how to wire in an aftermarket radio in a 2018 WRX Premium

General Notes:

  • XAV-AX100 does not have AUX Inputs
  • 2018 WRX with 2 USB ports won’t work unless OEM USB module is swapped to one with single USB port.
  • OEM Subaru Microphone is not compatible with any aftermarket head unit. Use microphone supplied with Sony system.


Wiring Diagram

What isn’t shown

  • USB Connector
  • Antenna Connector

Basic Functionality

  • Sony XAV-AX100 (duh). Other compatible models include XAV-AX200, and XAV-AX5000 (wiring harness is identical)
  • Scosche SU2031B Dash Kit Gloss Black – not cheap, but fits better than Metra 95-8907HG
  • Metra 40-LX11 – adapts the subaru/lexus/toyota/scion square antenna to the round motorola type. Extra blue wire hanging off is not used. clip off.
  • Metra 70-1761 – main harness, power, front rear speakers. Simply match colors from sony end to Metra end, and (preferably) solder, properly crimped butt connectors also work.

Adding more functionality

AX-SUB28SWC-6V – subaru/toyota/lexus/scion use a standard 28 pin connector.

This connector has the capability to provide:

  • reverse camera video and power
  • aux input
  • steering wheel control (2 banks of resistors)
  • vehicle speed sense (Pulse)
  • parking brake sense (GND activated)
  • reverse gear sense (+12V)
  • powered microphone power and audio

However not all features are available in the WRX, as some pins are missing.

The AX-SUB28SWC-6V requires modification to work with the WRX.
This is the only option available for retaining steering wheel control and backup cam. Out of the entire install, this part gave me the most trouble because the connector had to be re-pinned.

Luckily I made a diagram that should help you figure out what goes where.

When it was all said and done, I only needed 5 of the pins in the 28 pin connector:

  • Reverse Trigger
  • Parking Brake
  • SWC Ground
  • SWC Bank 1
  • SWC Bank 2

Also note: the Metra connector is fragile, do not force in.

Steering Wheel Control

The black connector end of the AX-SUB28SWC typically connects to a Metra Axxess ASWC-1 can be chopped off, because the XAV-AX100 is capable of reading the signals directly from the steering wheel via pins 21-23 on the 28 pin connector
Pins 21-13 can be soldered/crimped directly to the 3.5mm jack, then connected to the “remote” port on the XAV-AX100 (see wiring diagram)

Backup Camera

the WRX backup cam requires 6V. The AX-SUB28SWC-6V includes a 12 to 6V converter for this purpose.
When shifted into reverse, pin 2 of the 28 pin connector is given 12V. That 12V is sent into the 12to6 adapter, and 6V gets sent out to power the reverse camera.
The 2018 WRX Premium uses a 5 pin connector for backup camera video and power, instead of the 28 pin (as is common in other Toyotas)
If yours uses the 5 pin, there is no known wiring harness you can buy to adapt the backup camera. We must make our own with breadboard jumpers.

Take 5 of those wires, and cut and strip them, the bare wire side will be soldered to:

  1. Ground
  2. 6V in (from 6V out on the 12to6 converter)
  3. VID (+) (RCA Shield)
  4. VID (-) (RCA Center)
  5. Not used

stick them into the OEM camera harness and tape  (see wiring diagram for detailed info)

USB Ports

AX-SUBUSB2 Converts a standard male USB connection to the subaru connector found on the OEM harness. This allows you to use the OEM usb ports in your car, with an aftermarket stereo.

(This only works out of the box with WRX’s with a single USB port in center console)Newer WRXs have 2 USB ports and have a builtin USB hub. Since Android Auto/CarPlay is not compatible with USB hubs, a single Aux/USB combo module from 15-17 WRX can be swapped in, if needed. (video coming soon)

Aftermarket Door Speakers

Metra 72-8104 – door speaker, minor modification to plastic adapter required to get proper fitment

Screws (3 per door). OEM screws that connect speaker to door, have too large of a head to accommodate the Metra 72-8104. Any hardware store will carry a screw with a smaller head that won’t interfere with the speaker adapter. (these are not machine screws, they have pointed tips, they go into the plastic inserts in the door)

Speaker Foam – Creates a seal between the speaker frame and plastic Metra adapter to prevent vibrations.

Dynamat (recommended) – Stick inside door panel, reduces vibrations, gives door speakers more bass, and makes interior quieter


Steps Afterward

After you get everything running you’ll want to do a couple things:

  • Test the backup cam by going into reverse
  • Turn off the ugly proximity lines in the head unit settings.
  • Program steering wheel controls in custom mode
  • Customize your XAV’s wallpaper
  • Firmware update your XAV
  • Make sure all FM stations are coming in, (test fringe stations to check if the antenna amp is working)
  • Load up android auto and check if the parking brake sensor works
  • turn on/off your headlights to see if the illumination/dimmer wire works.

Scion tC gen 1 reverse wire tap

Quick tip. Avoid running a positive wire from the tail light harness to your head unit for a backup camera

this pink wire in the driver side kick panel cover is the wire that provides 12V when the car is in reverse. Plug this into your head unit to automatically bring up the reverse camera


its position in the harness is bottom left

here is a photo from the wiring diagram

Here is a photo from further back