Nicholas Skinner

Freelance website and web application developer

Mini Review: ‘Skate Fresh’ Paris Skate (long weekend inline skate holiday)

June 24th, 2012

I recently (11th-13th May 2012) went on a 3 day long weekend inline skating holiday to Paris, France with Skate Fresh.

There were 3 main skating events on the holiday:

Friday: Pari Roller

Our group of around 20 people joined the “Pari Roller” organised street skate that takes place every Friday. It is the fastest skate of all 3 days, somewhat comparable to the London Friday Night Skate (LFNS) although it seemed easier (at least on the first half) as we were told to expect due to the smoother road surfaces. It was however faster than I am used to skating most of the time.

We met at the Montparnasse Bienvenue SNCF station at 9.30pm for a 10pm departure. I was glad that I had located the meeting place earlier in the day because I had not realised that the Montparnasse Metro station (underground) and the SNCF station (mainline railway) were somewhat in different places (5-10 minute walk away from each other). Initially I exited the metro and took the street to the meeting point however subsequently I discovered that after stepping off the train it was quicker to follow the signs for the SNCF and use the underground moving walkway which led to the SNCF station.

I completed the first half of the skate ~7.5 miles, and stopped at half time getting the metro back to my hotel. Later found out that the second half was rather hilly so I think this was a good decision with two more days of skating ahead. Some people stopped even earlier, and others took shortcuts, and joined back in with the group after half time.

Saturday: Skate Fresh Tour

For the tour we met at 11.30am, at the SNCF station again. The tour encompassed a number of Paris landmarks including the Eiffel Tower.

Saturday was a very much more relaxed pace however difficulty wise was comparable to Friday due to other factors such as dealing with varying terrain, traffic, pedestrians, pedestrian crossings, curbs etc.

Lunch was a picnic in a nearby park, and after that there was more skating and an impromptu lesson on forward cross overs, and jumping.

In total it ended up being around 12 miles of skating.

Sunday: Rollers & Coquillages

Sunday we joined the Rollers & Coquillages that as with the Friday skate happens every week. It seemed to start off fairly slowly, not sure if this was just due to the amount of people or because out group was towards the back, however it seemed to speed up later on as we pushed forwards towards the front, and was plenty fast enough given the previous two days skating.

One thing that stood out compared to London was the amount of people that skate in Paris, on Friday there were a lot of people but on Sunday there must have been several thousand at least.

Skate Fresh cost for the 3 days was £90 (there was also a £120 package for beginners).

Travel & Hotel

Travel and hotel arrangements were left up to you to organise. I booked the Eurostar for Friday morning, and Sunday evening. First time traveling on the Eurostar however it was very efficient and straight forward.

Hotel

After spending some time on Trip Advisor I narrowed down a few possible hotels in the Montparnasse area where two of the 3 skates start from. I went with the Hotel De La Paix Montparnasse mainly based on the large number of positive reviews compared to other hotels. The main bedroom and bathroom were both very clean, shuttered blinds block out any traffic noise so you can get a good nights sleep. Did get slightly warm at times however this is easily solved by turning on the air conditioning which ran very quietly as well.

My experience with the catering staff was ok but not great – language barrier was a bit of an issue and on the second day after sitting down and waiting for maybe 10 minutes or so I was unable to get the waiters attention therefore left and went back to my room. If I stay again I would definitely take advantage of the room service option which would hopefully be more efficient.

Reception staff however were always smiling, helpful and able/willing to speak English from when I first walked in the door to when I checked out. The lady in reception even noticed that I had not been served breakfast when I walked out, and handed me a bag with croissants and juice without charge.

Free WiFi was available and seemed to work just fine when I used it on my iPhone. I was also given a tourist map on arrival.

Overall

Overall a very enjoyable trip.

General Notes

  • Metro was a lot easier to navigate than I was expecting.
  • I purchased a 3 day, 1-3 Zone “Paris Visite” pass allowing for unlimited travel on the Metro, although was advised a pack of single tickets may have been a cheaper option.
  • If there are issues with ticket machines from what I understand you are allowed to walk straight through the barrier without validating your ticket – you only validate your ticket on entry to the station, not on exit.
  • Was initially informed that it is illegal to skate on the road, apart from during an organised street skate however according to an experienced local the actual law is a little less clear and that if the pavement is busy/blocked with pedestrians its generally considered ok. During the Saturday sight seeing tour we generally tried to stick on the pavement but did go on the road a few times, and despite being seen by police on a number of occasions were never stopped.
  • The hotel offered to keep my bag on Sunday after checkout (had to checkout before leaving for the skate) however I chose to leave it at the Gare Du Nord” left luggage” facility instead to avoid needing to rush back to the hotel after the skate then to the station. It was self service and not entirely user friendly, however from what I could see you need to find an open locker, put your bag in it, turn the handle then the nearby keypad lights up showing the amount to pay, after payment is made you are given a receipt with a code number. On return you type in the code number to the keypad to open the locker. From memory the charge was 7.5 Euro for a medium sized locker. I believe I got quite lucky however since there did not seem to be many lockers left, and people started getting turned away at the entrance.
  • Toilets – Paris has free street toilets in a number of locations however its best not to try and use one if you are in any kind of hurry. If it is one that has not been used recently then you can usually get straight in but if not you need to wait for the doors to close, and for it to go through an automated cleaning cycle before you can then press the button to request entry again (if you try to use it without giving it time to clean, it will not allow you to close the door). On one occasion when there was a queue I must have waited at least 15 minutes or so, a lot of that due to the toilet having to clear its self every single time someone used it, even for less than a minute. At stations such as the Montparnasse there are attended (paid) toilets however be prepared to walk as they are located up on the upper floor, right at the back of the station away from the entrance.

Blog Access Issue Due To Subnet Mask Misconfiguration

May 27th, 2012

Wireshark tcpdumpI recently had a report from a self described “major Israeli ISP” who said their customers were unable to access my blog. After initially checking for any ‘on server’ IP based blocks (iptables) or any blocks being carried out by my ISP and coming up empty I was somewhat out of ideas. I did however setup a tcpdump log for their IP range and ask them to try accessing it again.

nohup tcpdump src net xx.xx.0.0/16 or dst net xx.xx.0.0/16 -A -w tcpdump_isp.bin&

Checking the logs in Wireshark after they again tried to access the blog I noticed something somewhat confusing. Their packets were reaching my server, but then immediately after my server was sending out an ARP broadcast to get the MAC address i.e. my server was treating them as a machine on the local network where packets can be delivered directly rather than via the default gateway, something which was obvious incorrect with them being in Israel.

eth0 network script

This caused me to check the settings for a secondary IP address allocated to the server (/etc/sysconfig/network-scripts/ifcfg-eth0:0) where I discovered that I had failed to specify the “NETMASK=” line when setting it up which had by default caused any x.*.*.* address to be treated as local, effectively blocking any outbound traffic to that destination. Setting the Netmask to “255.255.255.255” corrected the issue.

‘Windows System Image’ Tips

April 4th, 2012

System Image ScreenshotI recently had a message popup from Windows 7 that my main hard drive was reporting SMART errors, therefore started looking into possibilities for copying all programs/data to a new drive avoiding the need to reinstall.

I did not have to look far because Windows 7 includes a handy “Create a system image” tool (under “Control Panel” > “Backup and Restore”). It even backs up while the system is in use (avoiding the need for downtime).

It did however take me 3 attempts to get right:

  1. First tried saving an image of just the system partition (thinking I could just copy the data – on a separate partition easily enough manually) to a spare partition on that same drive. Did not work however as although I could save the image, I was unable to restore it (admittedly not ideal to save to the failing hard drive but would have saved finding another drive to use, and I had a separate backup already anyway for important files). When you try and restore, to a new drive however Windows assumes you want to restore to the existing drive, and will not let you select the new drive.
  2. Second tried saving an image of the system partition to a spare partition on the new drive, again however this did not work because even if it is a separate partition (not the full drive) Windows will not allow you to restore from the same drive to itself.
  3. Finally found another spare drive (large enough to take the complete system/data backup), saved the image to that, took out the old drive, replace it with the new, and then restored from the spare drive to the new drive.

Luckily throughout all 3 attempts (reading over/copying all data on the old hard drive reporting errors) it did not fail before I was able to complete the 3rd copy, and I was able to avoid reinstalling all programs.

EEWeb Featured Engineer Interview

March 30th, 2012

EEWeb LogoTowards the end of last year I was contacted by EEWeb asking for an interview as part of their Featured Engineer series.

We try to interview individuals in our industry that have experience and valuable insight to share with our community. We feel that you would be a perfect fit.

EEWeb Interview: Featured Engineer – Nicholas Skinner (photo from a ski trip)

Other interviewees include Limor Fried (Adafruit Industries), and Jeri Ellsworth (best known for creating a Commodore 64 emulator). See bottom of the page for full list of interviewees.

iPhone App Skate Routes

February 18th, 2012

I recently wrote my first iPhone app, Skate Routes:

Skate Routes is designed for inline skaters in London to view the status (Pending/Go/Rained Off), and route maps for Friday/Sunday marshalled street skates organised by the LFNS (London Friday Night Skate), it also supports GPS/Compass based navigation.

http://www.ns-tech.co.uk/iphone/skate-routes/ [App Store]

Failed attempts to get the Sony Ericsson DCU-11 USB cable working with Windows 7

January 1st, 2012

Sony DCU 11 CableI have started to get some reliability issues lately with BlueSoleil (used with my SMS to Email Forwarder application), therefore I decided to take another look at using a cabled solution. Was initially planning on using a cable rather than Bluetooth however the cable does not support charging, and does not have Windows 7 drivers available.

After opening up the cable I noticed it used a “PL-2303HX” USB to serial chip. Searching Google appears it is made by Prolific. Unfortunately however the standard Prolific drivers do not work because the cable has a custom USB PID “1234” instead of the standard Prolific PID of “2303”. Prolific VID / PIDTwo possible solutions came to mind, either changing the chip back to the default PID such that Windows would recognise it as a standard Prolific serial adapter, or modifying the Windows driver to recognise the non standard Prolific PID.

I first tried reprogramming the chip. Appears it has been successful for someone using a T230 cable (EEPROM Writer link on that post is nolonger working however there is a copy at Megaupload via Jonathan Thomson’s Web Journal). I was however unable to get it to recognise the cable and looking on EDA Board appears a special “EEPROM programming cable” may be required.

Prolific - Unable to startI next tried modifying the Prolific driver, and was then able to install it however started getting a Windows error “This device cannot start” (and after rebooting I was unable to login – unplugging the USB adapter and rebooting again fixed the issue).

Next option I may try is either rewiring the adapter with another USB to serial chip that does have Windows 7 drivers or putting the SIM in a GSM modem / another phone that can be easily connected to a PC.

Business PC Build Components

December 30th, 2011

PC CaseI was recently asked to put together a reasonable spec’ computer mainly for business use.

Parts were all from CCL for convenience as I was not placing the order myself, and they are competitively priced, however I have had a bad experience trying to return a faulty part to them a few years back.

I went with the following components:

Component Name Cost (£)
Case Evercase Giga ECE4252 13.00
Hard Drive 750GB Seagate Barracuda 96.97
Motherboard Intel Classic Series DH61CR 58.37
Memory Crucial 4GB PC3-10600 1333MHz Kit 18.94
Processor Intel Core i5-2400 3.1GHz Processor 153.44
CD/DVD Sony 24x SATA DVD-RAM 14.16
PSU CIT 450W Black PSU 18.64
Monitor BenQ BL902TM 132.64
Software Windows 7 Professional 64-bit 105.06
Software Microsoft Office 2010 158.89
Rear Fan
Front Fan
Total 770.11

Note: Cost excludes postage, I used some spare front and rear fans I already had.

SMS to Email Forwarder (via Bluetooth/Serial)

November 19th, 2011

SMS Forwarder Screenshot (Small)I currently have two mobile phones – one mainly for business, and the other personal calls. I do not however really want to carry two phones all the time and therefore started looking for solutions. In terms of calls it is possible to just call forward after a set number of rings (i.e. if I have the phone I can answer it and not pay the forwarding charge, otherwise I can still get the call although I will be paying the forwarding charge). The complication however comes with text messages, there does not really seem to be any straight forward / standard way to forward them.

I looked into various options such as services from AAISP who can deliver text messages to email, or a web form, which initially seemed perfect (they also have some good options for voice calls as well such as supporting multiple numbers on a single SIM both inbound and outbound, and VoIP termination) however then discovered that it is not possible to port a number to their service. I also found another similar company AQL who do support porting, but not for mobile numbers.

The option I came up with in the end to handle forwarding text messages was to write a C# application that can run on the PC desktop (in the task tray), connect to the phone over Bluetooth serial link (should also work with a regular serial / USB serial cable), poll it for unread text messages every few seconds, forward any found to a specified email address (which I can receive on my other phone), and delete them from the phone. Bluetooth is an ideal solution since it means the forwarding just works automatically whenever the phone is left at home by the computer.

Download: Source Code | Application

Notes:

  • I was initially planning on using a Sony Ericsson DCU-11 sync cable however discovered it does not have any Windows 7 drivers available, and does not support charging.
  • I found that Windows 7 by default did not seem to support connecting to my Sony Ericsson T610 over Bluetooth, therefore download the BlueSoleil Bluetooth stack which did.
  • Application uses Stefan Mayr’s GSM library.

Debugging (Hard To Replicate Issues) With Embedded Software Devices

October 20th, 2011

OpenLogI write software for various hardware devices. Finding bugs, and resolving them is usually relatively easy if the issue can be replicated in a test environment with development hardware and full logging equipment setup. The problem however is when:

  1. It is equipment using GSM, making use of various different phone networks, and cell towers that can not be easily replicated.
  2. The issue only occurs on location in the field (i.e. live customers using the device).
  3. It is an intermittent issue that can not be replicated on cue, ruling out simply going to the location for an hour setting up the relevant equipment and logging the issue.
  4. Devices are in locations where it not particularly convenient / safe to setup and leave expensive testing equipment / laptops etc.
  5. Testing equipment needs to run a Windows only application from a hardware manufacturer that needs “babysitting” (restarting if it stops logging).

I recently faced this issue. I tried a few options including blindly guessing at what the issue could be and implementing fixes for various possible issues, next tried working with the network operator (which got nowhere). Final solution I came up with was to build some custom / cheap (in comparison to the alternative) logging hardware to take the place of the hardware development board, Windows running laptop, hardware manufacturers software tool.

My first thoughts were that this could be done by using an Arduino with an SD Card data logging “shield” however after some further research I discovered the Spark Fun OpenLog. The OpenLog was a perfect fit since it:

  1. Can be powered from 3.3V – 12V (could just piggy back it on the existing devices power supply).
  2. Serial levels compatible with 2.8V CMOS levels of device.
  3. Already setup to automatically log serial data to files on an SD Card.
  4. Open source firmware that is freely available, meaning I could customise it to emulate the manufacturers software tool (eliminating the need for the extra hardware, and meaning I could deal with the reliability issues).
  5. Development environment (see section “Compile Version 2″) that is simple / relatively straight forward to obtain / setup / use (Ardino IDE – even though it is not “Arduino” branded hardware as such).
  6. Supports upto 16GB microSD cards (device outputs large logs).

There were a few steps involved in the process including, connecting the OpenLog to the device, building a programming cable for the OpenLog, and customising the OpenLog software to emulate the initialisation string of the Windows software tool.

I have never coded AVR C before however found it relatively straight forward to make the modifications I required to emulate the initialisation string of the Windows tool (primarily logging the string with Eltima Software’s Serial Port Monitor application, saving the data to a file on the SD Card and instructing OpenLog to read it back over the serial port, then drop back into logging mode.

A few issues I encountered along the way were:

  1. OpenLog stops reading files if it encounters a NULL byte, however this should be fixed in the latest release.
  2. Error trying to upload new software from the Arduino IDE to OpenLog due to the DTR pin needing to be connected to OpenLog to reset it just before programming. I substituted DTR for RTS (which my FTDI cable did have broken out).
  3. Device I was logging data to was outputting [CTRL]+[Z] 3 times – the OpenLog escape sequence – I therefore modified the escape sequence to be 9 times rather than just 3.

Parts List

One Off

TTL-232R-3V3 USB to serial FTDI cable PPDEV-09717
Kingston USB Card Reader (19 in 1) 139230

Per Logger

1GB microSD Card (or alternate 8GB) PPCOM-08163
Kingston 8gb Class 4 MicroSDHC Card 147731
OpenLog PPDEV-09530
Crimp Pins PPPRT-08100
4 pin header PPPRT-08231
2 pin header PPPRT-08233
4 pin housing PPPRT-08097

Build Instructions

Solder Headers

  • Solder a x4 way header connector onto the logger GND, VCC, TXO, RXI (i.e. miss out the first pin labelled BLK, it is not required).
  • Solder a x1 way header connector onto the logger for the GRN pin (I used a 2 way with the other pin overlapping off the end of the board as I could not easily obtain a 1 pin)
  • Solder a x4 way housing connector onto the wires from the device (match up GND/VCC/TXO/RXI to appropriate pins on the device).

Note: A 5 or 6 way header soldered to all logger pins could just be used but I thought this approach best to avoid any mistakes (broken loggers) – that way there is a x4 way header to use when plugging into the printer and you are not left wondering which 4 pins should be connected.

FTDI Programming Cable

Modify the FTDI cable such that it has the following pinout (compatible with logger). Use a flat screw driver to release the pins from the existing socket.

GND Black
VCC Red
RXD Yellow
TXD Orange
RTS Green
CTS Brown – N/C

Notes

  • Arduino needs to be modified with a special version of HardwareSerial.cpp to work with OpenLog.
  • If your SD Card did not come pre formatted you may need to use the FAT32 microSD optimised formatting tool from SD Association.

London Sky Ride 2011

September 25th, 2011

Sky Ride RouteOn the 4th September I went on the London Sky Ride (organised cycling event where they shut down a few roads in central London to cars for the day).

I went early morning and avoided the rain, was not too busy early on but became more crowded later on.

Sky Ride Not Busy Sky Ride Tunnel

GPS Route Log:


View Larger Map