Skip to main content

Posts

Qt Developer Days 2013, Europe

I'll be heading to the Qt Developer Days in Berlin next week. We answered the call for their Lightning Talks , a 10 minute talk on a Qt related subject, and we will showcase our code & gear. Presenter: Oliver Heggelbacher & Frankie Simon Abstract: fullmo Kickdrive – Qt Quick in Industry Automation Or - how to give users a dynamic playground, while hiding away the complex machinery behind it. The Kickdrive software platform is a multi-layered and multi-language approach to industrial machine configuration and control. Qt Quick allows for beautiful and highly adaptable user interaction on top of a C++/QWidget application. In Kickdrive, the QML files are part of the project data – something that comes as a ready-to-use template, but the users can hack and change it to their liking. They touch up, tweak and extend their project UIs, evolving into co-developers of sorts. We will show off how we cross boundaries and connect the dots: from the Qt Quick UI via Python Sc...

ASCII TCP protocols in Windows ANSI C or C++

My recent project work included applications with a servo drive controller that offers a simple text-based protocol via TCP. We many times explain this to our clients as the fastest way to integrate the drive, especially if their part is a standalone Windows software project that does not already have any fieldbus communications up and running.  But to our own surprise, discussions went frequently like this: “We recommend the direct TCP interface - this is so much easier than adding extra Ethercat or Profinet equipment for this purpose.“ “Yes, but how does TCP work? ” “Easy. Just open a TCP client connection to the drive controller, and send these simple ASCII commands.” “Yes, but I have no idea about TCP connections. Don’t you have a simple DLL for this?” So we decided to help out and make a DLL indeed. Not one that implements the servo controller interface, but a simplistic and generic way of processing text-based protocols and dealing with the TCP socket connection. And I ...