My Experience with Sennheiser PXC550 Bluetooth ANC Headset

This is my experience with Sennheiser PXC550 headset. I bought this headset primarily as a wireless Bluetooth headset, secondarily as a noise canceling headset. My main concerns were audio quality and comfort. I previously used a Bose QC35 for a day. That headphone has phenomenal noise cancellation. It could suppress almost every noise in our […]

A quick comparison of XPRA and X2GO

In my quest to remotely access my work PC I’ve tried 2 solutions. xpra and x2go. Why not VNC or NX, or teamviewer (urgh)? Well these 2 provide something others don’t. They embed remote application windows to your current system seamlessly. Just like X forwarding but better in terms of performance. Actually they leverage the […]

About My Master Thesis

I wanted to write about my master thesis for some time. Mostly because it was written in Turkish which makes it inaccessible to few people that could be interested in it at all. I couldn’t decide where to start. So, I though maybe a q&a format will be easier to write. Here we go. Oh, […]

STM32 PWM Output with Dead Time Using STM32Cube HAL Platform

In this post I describe steps to create a STM32 project for creating complementary PWM outputs with dead time in between. I use STM32CubeMx tool to configure and create a project that is almost ready to compile. I use STM32F4Discovery development kit which has STM32F407 MCU on it. This MCU contains many Timers with different […]

Debugging Bluetooth LE Device Using bluetoothctl Tool Under Linux

First of all don’t bother with hcitool and hciconfig tools. They are deprecated. Use bluetoothctl to connect and test your Bluetooth LE devices. It’s an interactive command line utility that provides a convenient interface for testing and probing your devices. Here is a short introduction on how to connect to a LE device that implements […]

Problems in Embedded Programming

I used to have a saying; 50% of our problems are caused by improper connections. I am revising it to: 75% of our problems are caused by improper connections. Before you go bug hunting make sure you have proper connections, your cables are up to spec, clock speed is correct for your cables etc…

Embedding Python in C#

Disclaimer: I don’t know C#. Take any line of code you see below with a grain of salt. I have developed a USB based device. Now I have to provide a driver for it to the client (actually another developer team). Device is actually based on USB UART but we have a slightly complex protocol […]

Don’t use SessionAsync

If you are trying to write a Cinnamon extension/applet and having this error when trying to parse some data that you have fetched via Soap.SessionAsync: Failed to convert UTF-8 string to JS string: Invalid byte sequence in conversion input Using Soap.Session instead of Soap.SessionAsync may solve your problem. I’ve encountered this problem when working with […]

Patching a Debian Package

This is my experience on patching a debian package. Once you learn how to do it, its so simple and straightforward I wanted to demonstrate. Problem I develop an application named SerialPlot. It’s programmed with Qt SDK. It makes use of QSerialPort module of Qt for accessing the serial port devices. When I updated my […]