Category Archives: Technology

Technology

Ethernet control for my office “traffic lights”

A couple of years ago, I wrote about the “traffic lights” I’d created for my home office (and subsequent “upgrade”). Shortly after that, I updated the solution to use three LEDs (as shown below) but it still wasn’t quite what I needed. Walking to the door to push a button and change the light defeated the object somewhat.  I needed to enable this device with a “web service”!

The solution comes in the form of an Arduino Ethernet Shield, allowing pin control over a standard Ethernet connection.  I didn’t use the official shield though – cheap imports can be found on eBay for around £7.  Following that, I amended my code using the Instructables Arduino Ethernet Shield Tutorial and another Instructables post on controlling an LED over the Internet using an Arduino.

The end result is below (or on Github) – and the Arduino uses DHCP to obtain an IP address (reservations can be used to control which one – or DHCP logs can be analysed) and a simple query string is read to set the light using:

  • http://xxx.xxx.xxx.xxx/?r for red.
  • http://xxx.xxx.xxx.xxx/?a for amber.
  • http://xxx.xxx.xxx.xxx/?g for green.

Anything else fails back to red.  

/*
Red/green LED indicator with pushbutton control
Based on http://www.makeuseof.com/tag/arduino-traffic-light-controller/

USE_GITHUB_USERNAME=mark-wilson

*/

// Setup Ethernet Shield
#include <SPI.h>
#include <Ethernet.h>
boolean reading = false;

// Enter a MAC address and IP address for your controller below.
// The IP details will be dependent on your local network (commented out if DHCP in use):
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
// byte ip[] = { 192, 168, 0, 112 }; //Manual setup only
// byte gateway[] = { 192, 168, 0, 1 }; //Manual setup only
// byte subnet[] = { 255, 255, 255, 0 }; //Manual setup only

// Initialize the Ethernet server library
// with the IP address and port you want to use
// (port 80 is default for HTTP):
EthernetServer server(80);

// Pins for coloured LEDs
int red = 3;
int amber = 4;
int green = 5;
int light = 0;

int button = 2; // Pushbutton on pin 2
int buttonValue = 0; // Button defaults to 0 (LOW)

void setup(){
  Serial.begin(9600);
  
  // Set up pins with LEDs as output devices and switch for input
  // Pins 10,11,12 & 13 are used by the Ethernet Shield
  pinMode(red,OUTPUT);
  pinMode(amber,OUTPUT);
  pinMode(green,OUTPUT);
  pinMode(button,INPUT);
  
  // start the Ethernet connection and the server:
  Ethernet.begin(mac);
  //Ethernet.begin(mac, ip, gateway, subnet); //for manual setup

  server.begin();
  Serial.println(Ethernet.localIP());
}

void loop(){
  
  // listen for incoming clients, and process qequest.
  checkForClient();
  
  // Read the value of the pushbutton switch
  buttonValue = digitalRead(button);
  if (buttonValue == HIGH){
    changeLights();
    delay(1000); // Wait 1 second before reading again
  }
}
  
void changeLights(){
  // Change the lights based on current value: 0 is not set; 1 is red; 2 is amber; 3 is green
  switch (light) {
    case 1:
      turnLightAmber();
      break;
    case 2:
      turnLightGreen();
      break;
    case 3:
      turnLightRed();
    default:
      turnLightRed();
  }
}

void turnLightGreen(){
  // Turn off the red/amber and turn on the green
  digitalWrite(red,LOW);
  digitalWrite(amber,LOW);
  digitalWrite(green,HIGH);
  light = 3;
}

void turnLightAmber(){
  // Turn off the green/amber and turn on the red
  digitalWrite(green,LOW);
  digitalWrite(amber,HIGH);
  digitalWrite(red,LOW);
  light = 2;
}

void turnLightRed(){
  // Turn off the green/amber and turn on the red
  digitalWrite(green,LOW);
  digitalWrite(amber,LOW);
  digitalWrite(red,HIGH);
  light = 1;
}

void checkForClient(){

  EthernetClient client = server.available();

  if (client) {

    // An http request ends with a blank line
    boolean currentLineIsBlank = true;
    boolean sentHeader = false;

    while (client.connected()) {
      if (client.available()) {

        if(!sentHeader){
          // Send a standard http response header
          client.println("HTTP/1.1 200 OK");
          client.println("Content-Type: text/html");
          client.println();
          sentHeader = true;
        }

        char c = client.read();

        if(reading && c == ' ') reading = false;
        if(c == '?') reading = true; //found the ?, begin reading the info

        if(reading){
          Serial.print(c);

           switch (c) {
             case 'a':
               turnLightAmber();
               break;
             case 'g':
               turnLightGreen();
               break;
             case 'r':
               turnLightRed();
               break;
           }
        }

        if (c == '\n' && currentLineIsBlank)  break;

        if (c == '\n') {
          currentLineIsBlank = true;
        }else if (c != '\r') {
          currentLineIsBlank = false;
        }

      }
    }

    delay(1); // give the web browser time to receive the data
    client.stop(); // close the connection:

  }

}

All it needs now is another service to read my Lync status and call the Arduino accordingly, although, having got this far, I have to admit the form factor is not exactly brilliant and I probably should spend the money on a Busylight or a Blynclight instead so that my Arduino can be repurposed for a new project!

Or, of course, there’s Garry Martin (@GarryMartin)’s beautifully simple approach:

Technology

Visual C++ runtime error R6034 caused by duplicate startup entries

I think I’ve logged more IT support calls this week than ever before… most of which have resulted in frustration (possibly on both ends of the phone) – I guess that’s the danger of being a technical end user, who doesn’t really want to have a 90-mile round trip for a desktop support technician to look at a problem when I can really fix things for myself.

Yesterday’s call was really just a “niggle” though – but, as I was in the process of fixing some of the issues on my PC, one I wanted to be rid of…

Every time I booted the PC (not resumed from hibernation – just on a cold start or warm reboot), I was presented with a Visual C++ Runtime Library error:

Runtime Error! Program: C:\Program Files (x86)\Common Files\BeCrypt\BCSystray.exe R6034 An application has made an attempt to load the C runtime library incorrectly. Please contact the application's support team for more information

It wasn’t a major issue – more of an annoyance – but Googling didn’t turn up much so, once again, I tried the IT support route. When it didn’t look like I was getting very far, I also tweeted ByCrypt – who were very helpful but, in the meantime, the correct support channels came back with the solution (and a 100% success rate, I’m told).

The issue was that a previous software update had left two startup entries for the BeCrypt system tray application active – one 32-bit and one 64-bit:

Disabling the 32-bit C:\Program Files (x86)\Common Files\BeCrypt\BCSystray.exe entry (not the 64-bit C:\Program Files\Common Files\Becrypt\BCSystray.exe version) and restarting the computer cured the problem.

 

 

Technology

Windows Phone 8.1 Backup won’t run? Check OneDrive is authenticated successfully

Over recent months, the Windows Phone I use for work (a Nokia Lumia 625) has become progressively more unreliable. Initially, there was just the odd random reboot which also reset the date and time to the out of the box values. Then, I found it was becoming unresponsive several times daily – and there was no pattern to it that would suggest any one application was at fault. The only fix was to hold the power button for at least 10 seconds, after which would perform a soft reset (needing the date and time to be set each time). On one occasion it even hung when I went straight from a reboot to the Date and Time settings without running any other apps!

After a call to our mobile operator’s service desk, I arranged a handset swap but that meant I needed to back up my phone. Windows Phone is pretty good in that regard, in that my configuration settings, applications, etc. are linked to my Microsoft account (depending on the Backup settings). Unfortunately though, the backup hadn’t run successfully for a month – which seemed to co-incide with the time I accidentally killed the DHCP server at home…

Windows Phone can’t be configured with static IP (at least not until the next release) so I tried backing up over 3G and 4G networks, and even using a neighbour’s Wi-Fi, but it kept failing.  Googling was turning up posts about changing my lock screen image but that made no difference so I decided to build a new DHCP server to try and restore the configuration that had worked previously.  Nope. No luck there either Eventually, I found a post that suggested checking the OneDrive app was authenticated.  Sure enough, the app had updated and I needed to log in again. With OneDrive up and running, the Backup also jumped into life. Result. A day or so later, with the new handset delivered by courier, logging into my Microsoft account allowed the phone to be restored.    

I had to supply passwords for mail accounts, etc. and all of the apps need to be authenticated again but that’s not really a problem.  Internet Sharing settings needed to be edited and the Bluetooth pairing with my car needed to be recreated too but by and large the configuration settings migrated to the new handset (as did all of my text messages and call history). I’m sure there will be other things I need to fix (and I lost the images on the first handset as they weren’t included in the backup) but at least my phone doesn’t keep rebooting!

Technology

Raspberry Pi infrastructure server (DNS, DHCP, TFTP)

A long time ago, I used to run real servers at home – I had a Compaq Prosignia 300 for a while and then a Compaq (or maybe it was an HP) Proliant DL380 running in my garage. Then, a few years back, I stopped running my own mail server and put all of the infrastructure services onto a low-powered PC running Windows Server (working alongside a NetGear ReadyNAS Duo). Recently, I found I didn’t even need Active Directory (I have unmanaged devices and cloud services these days) so I started to switch over onto a Raspberry Pi.  Each move made a huge difference to my electricity bill but I’ve had some mishaps too. I accidentally turned off the Pi and corrupted the flash memory (oops), then recommissioned the previous server. Then, I accidentally killed the power on that too and it’s not come back up (could be the PSU, or the motherboard – but whichever it is it’s unlikely to get fixed) so last Saturday night, I found myself bringing the Pi back into service as a DNS, DHCP and TFTP server – partly to improve my Internet access speeds and partly to back up my Windows Phone (that will be the subject of another blog post).

Luckily, I had the notes from last time I did it – but they hadn’t made it into a blog post yet, so I’d better record them in case I need to do this again…

Assuming that the Raspberry Pi is running Raspbian, the following commands should be entered from command line (e.g. LX Terminal):

  • sudo nano /etc/network/interfaces (to set up static IP – in this case 192.168.1.10 on a class C network):
    #iface eth0 inet dhcp
    iface eth0 inet static

    address 192.168.1.10
    netmask 255.255.255.0
    network 192.168.1.0
    broadcast 192.168.1.255
    gateway 192.168.1.1
  • sudo nano /etc/resolv.conf (to set the DNS server address – 8.8.8.8 will do if you don’t have one):
    nameserver 8.8.8.8
  • sudo nano ifdown eth0 (take down the Ethernet connection).
  • sudo nano ifup eth0 (bring it back up again).
  • ifconfig (check new IP settings.)
  • sudo apt-get install dnsmasq (install the Dnsmasq network infrastructure package for small networks)
  • Optionally, sudo apt-get install dnsutils (to get utilities like nslookup and dig). Unfortunately, this is resulting in bash: dig: command not found (I’m pretty sure it worked when I did this a year or so ago but, for now, I’m managing without those tools.
  • sudo service dnsmasq stop (stop the Dnsmasq service)
  • sudo nano /etc/dnsmasq.conf (edit the Dnsmasq config) – these are the settings I changed (all others were left alone) – the original version of the file includes full details of what each of these mean):
    domain-needed
    bogus-priv
    no-resolv
    server=212.159.13.49
    server=212.159.13.50
    server=212.159.6.9
    server=208.67.222.222
    server=208.67.220.220
    server=8.8.8.8
    local=/home.markwilson.co.uk/
    expand-hosts
    domain=home.markwilson.co.uk
    dhcp-range=192.168.1.100,192.168.1.199
    dhcp-host=00:1d:a2:2f:20:f9,192.168.1.199
    dhcp-option=3,192.168.1.1
    dhcp-option=6,192.168.1.10
    dhcp-option=42,192.168.1.1
    dhcp-option=66,192.168.1.10
    dhcp-option=66,boot\pxeboot.com
    dhcp-option=vendor:MSFT,2,li
    enable-tftp
    tftp-root=/home/pi/ftp/files
  • Optionally, add some static entries for fixed IP items on the network with sudo nano /etc/hosts:
    192.168.1.1 router
    192.168.1.10 raspberrypi
  • sudo nano /etc/resolv.conf (set the DNS server address again – to use the local server):
    nameserver 192.168.1.10
  • sudo service dnsmasq start (start the Dnsmasq service)
  • View client leases with cat /var/lib/misc/dnsmasq.leases.

A few more notes that might be useful include that pinging short names may need a trailing . .
Other blog posts that helped me in creating this include:

(I haven’t actually tested the TFTP functionality – I need it for my Cisco 7940 phone, but need to recover the files from the old server first).

Now, all I need is a UPS for my Pi – and it looks like one is available (but I’m waiting for the new version that can keep the device running a while on battery power too…)

Technology

Resuscitating iPass when the client service fails to load

I’m on the train this morning, and Virgin Trains Wi-Fi works with the iPass service that my company uses for roaming Wi-Fi connectivity.  Unfortunately, iPass didn’t want to play this morning – but I found a fix…

The error message displayed said something like “An important service (client service) failed to load. Please contact your administrator”.  So I opened the Services console (services.msc), sorted by startup type and looked for Automatic services that were not showing as “Started”. Sure enough, one of these was iPlatformService (described as the iPass iPlatform Service and components”).

With the iPlatformService started, I could successfully connect to the on-train Wi-Fi. I still can’t get a VPN connection but that’s not related to iPass.  So it looks like I’ll have to drive to the office to empty my Outbox (and please don’t get me started on how Outlook Anywhere has been available since 2003 and using a VPN for email is outdated…).

Technology

Office “Sway” breezes into view

Earlier this week, Microsoft announced a new Office authoring product.  It’s not about blogs, documents, or presentations – its all of those and neither of them (say Microsoft). It’s something totally new: a “web-oriented canvas with content aggregation and assisted authoring”. And it’s called Sway.

I’m sure there are other products that do similar things – my kids are very excited about the things they’re doing at school using Google Drive at the moment (although I’m not sure that goes quite as far).  Storify has been around for a while, but Sway seems to go further – and I think it’s really quite exciting…

Sway is about sharing information – the content people have access to (photos, social posts) but this is increasingly dynamic – so we want to create presentations that reflect the current state of things. As users, we create/publish/share instantly but need to do this without having to master the details of many apps. Microsoft sees Sway as a digital assistant to do the “heavy lifting” for polished cohesive output.

I’m sure that all sounds good to a marketing person but what does it really mean? Well, I have a real use case. I have something that I’d like to present to a particular audience (Milton Keynes Geek Night). That audience is made up (mostly) of designers, web developers and very image-conscious people. They know what looks good.  I have 1 minute to get my message across – and if it looks messy… well, I’ve blown it.

I want to avoid using the same templates that people have seen time and time again, or needing great design skills – and Sway uses machine-based algorithms to help present the content. It’s kind of like a “designer in a box” where I can specify intent (what’s important, what to keep together, etc.) and use Sway’s capability to display on different devices – with it’s engine to reflowing content appropriately to the device.

There’s a Microsoft video that demonstrates this and draws out the fact that Sway is mobile-first, cloud-first so device agnostic (indeed, Microsoft starts the demo using an iPhone):

If you don’t have 17 minutes to watch the video, it includes:

  • Inserting a photo; using voice to text to dictate a caption; swiping to emphasise (or delete) content.
  • Adding more content using different devices (e.g. OneNote content as text, then breaking out into sections by highlighting text as headers, adding content to the story line from OneDrive – dragging photos onto the canvas; grabbing items and grouping them with transformation effects like stacking images; adding videos from YouTube and tweets from Twitter).
  • Showcasing pictures to make them centred, larger (or even smaller); grouping content but without having to say how many pixels high/wide they should be and the exact location.
  • Defining a structure (Sway can can have linear or non-linear outputs); changing the colour scheme based on the colours in an image, or using pre-populated moods.
  • Sharing via social networks, emailing, or embedding in a web page as HTML5.
  • And viewing just needs a browser – no additional software.

Sway is in preview at the moment – and more styles, layouts, etc. will follow.

You can sign up for the preview at sway.com (I’m on the list and hoping to get to play soon). Now, if only I had an approved account I could create a dynamic Sway about Sway – and this blog post would be so much more exciting… oh well, hey ho – for now the videos and links in this post take the old skool (WordPress) approach.

Technology

Effectively targetting social media interaction: are you speaking Scottish in Toyko? (Mark McCulloch at #MKGN)

Every three months, I have a mild panic because:

  1. I’ve successfully registered for Milton Keynes Geek Night (MKGN) but neglected to put it in my diary.
  2. Three months have gone by and I’ve not blogged about the last MKGN, even though David and Richard know me as the resident blogger…

This time is no exception…

I could say I was distracted because Mrs W. accompanied me to the last Geek Night; I could blame Google Keep for not allowing large enough notes to store a whole evening’s worth of note-taking and for losing the first part of my notes (although it sounds a bit like “the dog ate my homework” and I’m sure I’ve used a similar excuse before) so let’s just stick with “because I’m busy – but MKGN #9 it was a really worthwhile evening and I’m sure #10 will be too”. You can catch the audio on Soundcloud, but I want to write about one talk that I found particularly interesting – Mark McCulloch (@WeAreSpectaculr)’s “Are you speaking Scottish in Tokyo” (which seems to have an additional relevance today)…

Are you speaking Scottish in Toyko?

If you’re wondering what Mark means by “Speaking Scottish in Tokyo” (or, as he put it, “Okinawa the noo!”), Mark’s whole point is that social media interaction needs to be effectively targetted.  He’s quite happy to highlight that his message is based on a book by Gary Vaynerchuk (@GaryVee) – Jab, Jab, Jab, Right Hook: How to Tell Your Story in a Noisy Social World – but it highlights some important points:

  • First up – you need to be native to the social channel in use. Lazy brands put the same post on multiple channels. Sometimes it just doesn’t work…
  • Added to that, many social agencies have no real plan or return on investment.
  • Next – don’t expect instant results: you need to give, give, give, then take. Too many brands broadcast on social media. The good ones have a conversation. The excellent ones hook people in with something that they find useful – and then ask for something in return.

Mark talked about a rule of thirds developed at Yo Sushi (brand, product, fun/health/life); drawn as a Venn diagram you need to hit the point where all three meet and Mark suggests building a mind map of things to talk about based on these 3.

Next, the perfect post needs a call to action that’s easy to understand, perfectly crafted for mobile and for other digital devices – and respects the nuances of the target network… so, for example, on Facebook:

  1. Is the text too long?
  2. Is it provocative, entertaining and/or surprising?
  3. Is the photo striking?
  4. Is the logo visible?
  5. Have you chosen the right format for the post?
  6. Is the call to action in the right place?
  7. Is this interesting?

So, here are some first class “jabs”:

Now, Mark actually showed examples from Facebook – I’ve used the Twitter equivalents here because they are easy for me to embed, but this one doesn’t work on Twitter (more than 140 characters):

Those are all good jabs. This isn’t (it’s too complex):

But this one is a right hook (a new product that’s not too “salesy”):

Knock-out!

And what about when you don’t respect the medium? This is native:

This isn’t:

So, in summary, if you’re a brand using social media to interact with customers:

  1. Plan your social media content using the “rule of thirds”.
  2. Plan your social media content into “jab, jab, jab, right hook” micro stories.
  3. Think about the channel you’re posting on, the native language and the audience behaviours.
  4. Think about the time of day when you’re posting (auto-schedule updates, for example).

What about the other talks?

No promises, but I hope to blog about some of the other talks soon…

And what’s happening tonight?

As usual, tonight’s MKGN looks to have some fascinating talks (I confess I don’t have a clue about Jumbotrons, Twilio or MEAN coding!):

  • Ben Foxhall (@benjaminbenben) is back, this time to talk about “Jumbotrons”!
  • Rachel Andrew (@rachelandrew) is giving her postponed talk on “Your own definition of success – choosing a profitable side project idea”.
  • Elliot Lewis (@elliotlewis) will be talking about “The Apprentice”.
  • “Code Smarter, be MEAN” is the topic for Tamas Piros (@tpiros).
  • And Michael Wawra (@xmjw) is scheduled to speak about “Twilio”)

Join in!

Milton Keynes Geek Night happens every three months at The Buszy in Milton Keynes (old bus station, opposite Milton Keynes Railway Station) and is free (thanks to generous sponsorship). Because it’s free, and the speakers are generally so good, it “sells out” quickly, but keep an eye on the @MKGeekNight Twitter feed – and bag yourself a place for the next one in December!

Technology

Short takes: Windows Phone screenshots and force closing apps; Android static IP

I’m clearing down my browser tabs and dumping some of the the things I found recently that I might need to remember again one day!

Taking a screenshot on Windows Phone

Windows Phone 7 didn’t have a screenshot capability (I had an app that worked on an unlocked phone) but Windows Phone 8 let me take screenshots with Windows+Power. For some reason this changed in Windows Phone 8.1 to Power+Volume Up.  It does tell you when you try to use the old combination but, worth noting…

Some search engines are more helpful than others

Incidentally, searching for this information is a lot more helpful in some search engines than in others…

One might think Microsoft could surface it’s own information a little more clearly in Bing but there are other examples too (Google’s built-in calculator, cinema listings, etc.)

Force-quitting a Windows Phone app

Sometimes, apps just fail. In theory that’s not a problem, but in reality they need to be force-closed.  Again, Windows Phone didn’t used to allow this but recent updates have enabled a force-close. Hold the back button down, and then click the circled X that appears in order to close the problem app.

Enabling a static IP on an Android device

Talking of long key presses… I recently blew up my home infrastructure server (user error with the power…) and, until I sort things out again, all of our devices are configured with static IP configurations. One device where I struggled to do this was my Hudl tablet, running Android. It seems the answer is to select the Wi-Fi connection I want to use, but to long-press it, at which point there are advanced options to modify the connection and configure static IP details.

Technology

OneDrive for Business: lots of cloud storage; terrible sync client

I’ve been a Dropbox user for years but with Microsoft’s upgrade of OneDrive for Business (formerly Skydrive Pro) to include 1TB of storage for every Office 365 user, I decided to move the majority of my files to that platform.  I could pay for additional Dropbox storage but, frankly, why do I need to, with that much storage included in my Office 365 E1 subscription?

However, after a couple of days trying to force a synchronisation of legacy content into OneDrive for Business (noting the various restrictions), I have drawn the following conclusion:

The One Drive for Business sync engine is “pants” (definition 3 in the OED).

It’s straightforward enough to define folders for syncing into SharePoint Online (which is where OneDrive for Business stores data), and most of my content synced OK but I had one folder of correspondence, going back to my early days of using a PC (some WordStar and WordPerfect files, as well as some very early Word formats in there – right through to current day documents) that was causing difficulties.

Unfortunately, whilst the OneDrive for Business client is able to sync folders in parallel, it seems to work through a folder in serial. If it comes up with a problem, it doesn’t seem to skip it and move on – at least not in the way that might be expected. It might flag an issue, but there’s no “skip file” option. And it doesn’t seem to have a method for forcing a sync either. Or for telling me which file it’s currently attempting to work with.  Here’s what I found…

Uploading files directly to OneDrive will change the modified date (perhaps to be expected):

Opening a “stuck file” in Word will present a sign-in error:

Even if you are already signed in:

and verified with File, Account

No good attempting to sign out (and in again) either:

(I’m logged into my Windows 8.1 PC using a Microsoft account, although I can switch to the organisation account that uses the same credentials for Office 365 access).

One thing I found that would sometimes kick-start proceedings was (in Word) removing the Connected Service for OneDrive – markwilson.it (and then adding it again, which forces a re-authentication):

Sometimes, I found that wasn’t necessary – just by ignoring the “credentials needed” error it might go away after a while!

I even resorted to opening each “stuck file” and closing it again, making sure I didn’t actually change it (clicking the Sign In button will update the document). This seemed to unblock things for a while until, eventually, I found myself in a situation where Word wouldn’t open any of the content waiting to sync. Some of the errors suggested it was trying to download the cloud copy rather than the local one whilst other times it failed silently.

In fairness, OneDrive for Business does have an option to repair the synced folders but that downloads everything from SharePoint again… and as half of it hadn’t got up there yet that wasn’t going to help much!

I re-installed Office 2013 and was just about to do the same with OneDrive for Business (which turns out to be based on Groove) but, instead, I decided to simply create a new folder and paste the files into that – effectively a second copy of the data to start the sync again from fresh.

After all the fighting with the first copy, the second copy synced in a few minutes (well, it got stuck on a few files but I deleted them, then pasted them in again, after which they synced).  It seems that, fundamentally, the OneDrive for Business sync engine is more than a little bit flaky (which doesn’t leave me feeling good about my data).  Thankfully, Microsoft is reported as acknowledging that the sync limits are “well understood” – and I hope that doesn’t just include the limits on item counts and file naming imposed by the SharePoint back-end.

Isn’t this is all just a bit too much effort for what Dropbox (and others) have made so simple?

Technology

Some tools in Outlook 2013 for diagnosing Exchange connectivity issues

I’ve just been looking at some of the diagnostic information that’s available for Outlook connections to Exchange (including Exchange Online in Office 365) and one “hidden” feature (actually, it’s not hidden but it’s not very well known) is the ability to Ctrl+right click on the Outlook icon in Windows’ notification area to bring up two extra menu options:

The first of these is handy for bringing up information about the various client-server connections open between Outlook and Exchange (for example the connection protocols being used, port numbers, session types, etc.):

The second allows testing/diagnosis of AutoDiscovery functionality – again, providing a host of information to track down issues:

Combined with the Microsoft Remote Connectivity Analyzer, these are a few tools to help IT admins track down the cause of connection issues.

%d bloggers like this: