Na 14 jaar weer Windows

Het is inmiddels alweer een jaar of 14 geleden dat ik mijn toentertijd Windows XP installatie vriendelijk heb verzocht om op te rotten van mijn harddisk en ben ik volledig overgestapt naar Linux. Een paar jaar later ben ik, mede door komst van een iPhone, overgestapt via een Hackintosh en later naar een echte Mac waar ik Mac OS X op draai.

Ondertussen wel voor mijn werk diverse Windows versies ondersteund en zo nu en dan draaide er een verloren machines in het thuis netwerk vanwege gebrek aan budget om daar een echte Mac neer te zetten.

Nu, 2016, ga ik Windows weer een echte kans geven als werkpaard(je). Waarom? Nou, meer omdat ik in 2015 een beetje aan het prutsen ben geweest met laptops en deze, al dan niet na reparatie, verhandelde. Uiteraard met daarop Windows 10 en ik was onder de indruk van de snelheid op vooral oude(re) hardware. Een Core2Duo machine met SSD en 4GB RAM is gewoon heerlijk snel en werkbaar voor dagelijkse taken. Games speel ik toch niet, dus dan is zo’n machine best leuk.

Vooral omdat ik met de band veel onderweg ben en wij een mooie Behringer X-AIR18 hebben waar we via USB alle optredens en repetities multitrack kunnen opnemen. Dit werkte altijd goed op mijn Macbook Air van 2013 tot El Capitan waardoor Logic Pro niet altijd even goed werkte. Mijn Tascam US1800 werkte allang niet meer op El Capitan dus moest ik een tweede apparaat hebben om opnames te maken.

Thuis heb ik, naast de Macbook, ook nog een Core2Duo desktop PC staan welke van Windows 7 -> Windows 8 -> Windows 10 is gegaan en tegenwoordig Youtube kijkdoos voor de kleine en het huis via iTunes voorziet van muziek. Dus hier is mijn Windows 10 avontuur eigenlijk begonnen.

Zoals gezegd ben ik in 2015 in de handel van wat oudere laptops gekomen en 1 van deze laptops heb ik uiteindelijk zelf gehouden om als opname apparaat te gaan dienen. Deze 17″ loodzware Acer Aspire heeft een tijdje zijn werk goed gedaan met Windows 10 erop en daarnaast wederom iTunes voor de gezellige muziek in de studio’s en Audacity en Reaper om multi-track opnames te doen.

Door de handel kreeg ik een prachtige Macbook Pro 1,1 in handen welke na een grote schoonmaak en verse koelpasta ineens wel interessant was om te gebruiken als opnamedoos. Helaas draaide Windows 10 zeer beperkt op deze machine (geen driver voor videokaart) en OS X 10.7.5 is toch echt wel zwaar verouderd (plus dat hierop mijn Logic Pro weer niet wilde draaien). Uiteindelijk is hier een duo-boot Ubuntu Studio en Mac OS X 10.7.5 op gekomen. Ubuntu studio voor opnames, Mac OS voor iTunes. Toch was dit niet optimaal, Ubuntu Studio vond het niet leuk als deze op standby ging en ik had geen zin meer om dit tot op de bodem uit te zoeken.

Het lot was mij positief gezind met een iBood Box begin dit jaar. In deze box zat een lief HP EliteBook 2540p apparaatje met een leuke Core i5 CPU, 4GB geheugen en 250GB HDD. Na aanschaf van een nieuwe accu blijkt dit een heel capabel systeempje te zijn voor opnames en ‘on the road’. Er komt zeer binnenkort een SSD in om de laatste snelheidswinst ook te hebben.

In de afgelopen 2 weken ben ik privé dus met name in Windows 10 bezig geweest. Deze laptop had een licentie Windows 7 dus was een upgrade eenvoudig (alhoewel ik een kale installatie heb gedaan).

Na installatie heb ik eerst de tools die ik mij nog kan herinneren dat ik deze veel gebruikte geïnstalleerd. Uiteraard na iTunes en de koppeling met mijn iTunes Match 🙂

Voor mijn werk moet ik veel inloggen op Linux machines. Dus Putty en WinSCP zijn minimale eis. Ik heb mijn key van mijn Mac af kunnen halen en deze in PuttyAgent geladen, dus de basis behoefte zijn bevredigd.

Verdere tools die ik heb geïnstalleerd om het leven op Windows aangenaam te maken:
– PostBox (https://www.postbox-inc.com/), De beste E-mail client voor zowel Mac als Windows. Ik heb hier een licentie voor waardoor ik het op beide besturingssystemen kan gebruiken.
– VLC (heeft geen uitleg nodig)
– DropBox (gebruik ik ook op de Mac)
– iTunes (samen met iCloud waar ik mijn documenten op sla)
– Google Chrome (yay, synchronisatie)
– Irfanview (gewoon de beste picture viewer voor Windows)
– Total Commander (http://www.ghisler.com/ waar ik zowaar een licentie voor heb)
– Wireshark
– Avast Antivirus
– Cygwin (omdat ik wel een fatsoenlijke shell wil hebben)
– Audacity / Reaper voor de opnames

Aangezien LibreOffice op een bepaald moment weigerde te werken op mijn Macbook, heb ik daar al Office for Mac geinstalleerd. Logischerwijs heb ik op Windows dan ook en heb ik de 2013 versie van Microsoft Office ‘gevonden’.

Omdat het kan heb ik nu ook Euro Truck Simulator 2 geinstalleerd (die een stuk beter loopt dan onder een emulatie van Mac) en Duke Nukem 3D (een van de weinige spellen die ik ooit speel). Daarnaast ook om mijn retro persoonlijkheid te vriend te houden in ieder geval Amiga Forever en WinUAE om de Amiga’s te voorzien van software indien nodig.

Al met al ben ik redelijk positief over mijn nieuwe Windows plekje. Over een paar weken ga ik touren in Engeland en neem alleen de Windows machine mee. Dat wordt dus nog spannend of ik alles kan wat ik met de Mac kan (waarschijnlijk wel).

Als er iemand nog een must-have voor Windows 10 heeft dan hoor ik dat graag. Mijn mening is dat Microsoft nu eindelijk een degelijk operating system heeft uitgebracht wat voor zowel de power user als voor de normale thuisgebruiker goed kan werken.

Android vs Apple, again

As open-minded as I try to stay and being a Linux-user for at least 15 years, it’s quite obvious that Android has my attention. Since I changed from Linux to Macintosh (first as a Hackintosh, later I actually got real Macbook) for my personal use, I shifted to Apple’s operating system and I’ve been using that as my primary operating system.

Going back in time, when I still mainly used Linux. I’ve used most operating systems on mobile (incl Windows mobile 6.5 back in the day and my favorite Symbian OS on the pretty SonyEricsson P1i. My contract ended so I got myself an Orange M3000 running Windows 6.5. Worst mistake ever (and possible worst phone ever made). I switched back to Symbian on a Nokia N91 (which was a neat phone) but eventually I went for an iPhone. The very first one (already outdated at the time, the iPhone 3G was there already). I played with it a lot but there was no integration between Linux and iPhones at the time. I had to run Virtualbox in order to jailbreak the iPhone to make it work. Then I read about the new Motorola Milestone coming out, running the latest Android (that was back in 2009). I got mine using import through Germany which gave my Milestone a German keyboard layout. Workable though. I think I was one of the first people in NL who had this phone which was a great phone in those times. It was also my first Android experience and all seemed well. But, I got annoyed. Motorola stopped updating the Milestone and using custom roms I had to get newer versions. All these versions had some issues, either battery drained too quick or crashing for incoming phone calls. All in all, I got really fed up and sold them Milestone to get an iPhone 3GS (which I still have today) which also started my journey to become an Apple user (Hackintosh -> Macbook).

So, here we are. 6 years and 2 generations of iPhone later (currently on iPhone 5). I’m completely converted into an Apple user having the Timecapsule at home, 2 Macbooks (my wife has one and myself), 1 powerbook, 1 powermac (see here) and even an iPad. All my music (well over 10000 songs legal) is distributed around my devices using iTunes Match and everything is okay.

Why this blog? Well, my mother-in-law was fed up with her LG E612 and I gave her an iPhone 4. A good chance for me to start playing again with Android just to see where they are now.

I rooted the device and installed the latest available Android on it, 4.4.4 (KitKat) apparently and, without simcard, started using it (yes Apple, without simcard)

But, it’s probably the phone, I’m not convinced. I do like the fact it has a native SIP-client in Android (which doesn’t work and only crashed the phone, probably related to the phone) and that it’s open (I can relatively easy install another ROM). But iOS on the iPhone feels so much more solid. Applications work decently and as a personal taste, the layout is by default not the most nice one I’ve ever seen. Yes, you can change it and that’s again the problem, there are too much layouts .. Application which don’t work are also something I don’t get. I mean, the OS is the same (despite version differences) but why does Zoiper refuse to play the audio to the normal speaker and are all my calls by default on speakerphone (can’t turn it off either). Tried different Android versions, all the same.. I mean, come on.. I want to use it as SIP-client to make private phone calls, not everybody should hear that..

So, in general, my opinion:

Pro’s Apple (which are con’s for Android)
– Software simply works. No bullshit. Works on all iPhones unless specified.
– iOS works equal on all phones factory default. Not this weird menu’s on different brands.
– iTunes Match works like a charm.
– integration with desktop is flawless. Answering phones on my macbook or iPad, awesome! Contacts synced without thinking, love it. Photos in the (private) cloud, yes! Messages are even synced. I can send text messages from my desktop.

Pro Android (cons for Apple)
– SIP-client
– Multiuser
– SD-cards just a a normal drive recognised.
– Access to the phone (ssh, fileserver)
– It’s a small Linux. Love it!
– Runs on multiple brands.

So, my perfect phone would be an Apple operating system with addition of a default SIP-client, multiuser and easier to access which will be integrated with my computer(s) as the current iOS is and with freedom of phone selection (for example, I would like something like a Samsung or HTC if it runs iOS).

I guess I should keep dreaming ..

DTMF in the wrong order (English)

Here’s an interesting item I’ve come across at work which took me several weeks to figure out. Thought I’d like to share this issue and the possible reason why it’s happening and a workaround for it.

To give you an idea about the situation; this customer wants to call services where you have to enter a long code (usually 10 digits) using DTMF. It’s kind of important that the order of DTMF is correct and that’s where he got into trouble.

If he used one particular provider for this outgoing phonecall, the order of DTMF changed into random order digits after usually 4 or 5 correct ones. So, he sent 1234567890 to the service using his phone (DTMF) and the service received 1234598076 (or anything like that).

I tested this using several other trunk-providers and not a single one had this issue. So, my logical answer to the customer was that the trunk provider had the issue. We also tried different DTMF types, but only RFC2833 was working, so this was ruled out and there was nothing more we could change for DTMF within Asterisk.

But, after 2 weeks we received the support-ticket back. The provider did some testing and even though they told us the DTMF was in correct order received and forwarded, they just bounced the ticket back to us claiming ‘it is a timing issue’. Despite the fact we had at least 9 different trunkproviders without any issue, it became our problem again and we had to fix it for the customer.

The first tests were the easy things like checking our NTP-synchronisation (timing issue could imply we were out-of-sync), but no luck here.

Then we removed Asterisk from the system (as in, callrecording and forwarding of calls) and that seemed to fix the issue, but as expected the customer actually wants callrecording and callforwarding so there’s no way we could disable this.

Oddly enough, a (Centos) FreePBX install worked and exactly the same Asterisk version on Debian was also working just fine, even if it was on very slow hardware. For a day or two it looked like it was a Asterisk speed issue, though it wouldn’t explain why it ran on a slow machine with Debian just fine.

After much debugging, reading TCPdumps and reading VERBOSE messages from Asterisk, I saw on my slow Debian machine that the Asterisk Dial-line included the “A” options to stream 42ms of silence to the other party to make sure the RTP-port opens in case of a NAT-ed machine. On the Debian machine, this file was missing. On the FreePBX machine, this file was missing as well. On the system with the DTMF-issue, the file existed.

As soon as I removed the 42ms of audio, the DTMF-problems were gone. So, why not remove the 42ms of silence right? Well, we can if all our PBX-machines are without NAT and since IPv6 is still not common (Common phones don’t support IPv6, so why bother to use it in Asterisk right?). Removing the file and executing a blind-transfer between 2 SIP-peers means the router doesn’t get where the RTP is coming from (or going to) meaning no audio. We did found a workaround for that by setting the “progressinband” to “yes” in the sip.conf, creating other problems like doing a transfer between 2 different trunks (and RTP-servers).

Back to the original problem, we now have this ‘workaround’ by removing the 42ms of silence and setting the progressinband to yes, but it’s not something I would recommend using on systems with multiple trunks.

So, why is this trunk-provider the only one with DTMF problems in the first place. Well, I think I know why. DTMF is RTP-Type 101 while G711alaw is RTP-Type 08. My guess is that this trunk provider doesn’t understand the RTP-Type 08 while it is receiving RTP-type 101. Oddly enough, Asterisk seems to send pieces of audio right after the DTMF codes. I still don’t know why or what this exactly is (perhaps the 42ms audio?). Anyway, if you calculate the both RTP-types and consider it as one, the DTMF could be considered as late while another DTMF is already sent. Meaning, the order will change on the other side of this trunk-provider. My other possible idea is that the provider somehow expects an inband DTMF because of the RTP-type 08 right after the 101. I don’t know since I can’t login to their configuration.

For my rare readers, I’d like to see your opinion on this.