Conceptive

Rail, embedded

The cab display for three-phase electric locomotives

~5,000signals across the locomotive processors
17cab screens across 10 menus
3password-graded access levels

Problem

A loco pilot hauling freight needs traction, braking, catenary voltage and every fault in one glance, at night, in a moving cab.

Approach

Railway cab conventions first: fixed status, work and navigation areas, one alarm colour language, and touch plus physical soft keys. Screens never touch the bus; middleware decodes, judges and stores every signal first.

What we built

  • Qt/QML HMI showing speed, traction and brake effort, pressures, pantograph and breaker states
  • Event-driven C++ middleware that keeps screens independent of CAN traffic
  • Driving modes, braking, traction, high voltage, auxiliaries, compressor and low-voltage cubicle screens
  • Leader and follower views for multiple-unit working
  • WhiteDB persistence, crash logging and over-the-air updates
  • GSM and GPS remote monitoring
Driver display unit showing the home screen

How it fits together

Display
Qt/QML UI layer
Middleware
UI messagingBusiness logicIPC bus
Services
WhiteDBLoggingOTARemote monitoring
Vehicle
CAN bus to VCU, converter, brakes and traction units

Stack

NXP i.MX6Yocto LinuxQt/QMLPOCO C++WhiteDBCAN busSIM808

Have something to build, fix or connect?

Tell us the problem. We will tell you how we would approach it.