MES Manufacturing Control Mobile App Development

NOVASOLUTIONS.TECHNOLOGY is engaged in the development, support and maintenance of iOS, Android, PWA mobile applications. We have extensive experience and expertise in publishing mobile applications in popular markets like Google Play, App Store, Amazon, AppGallery and others.
Development and support of all types of mobile applications:
Information and entertainment mobile applications
News apps, games, reference guides, online catalogs, weather apps, fitness and health apps, travel apps, educational apps, social networks and messengers, quizzes, blogs and podcasts, forums, aggregators
E-commerce mobile applications
Online stores, B2B apps, marketplaces, online exchanges, cashback services, exchanges, dropshipping platforms, loyalty programs, food and goods delivery, payment systems.
Business process management mobile applications
CRM systems, ERP systems, project management, sales team tools, financial management, production management, logistics and delivery management, HR management, data monitoring systems
Electronic services mobile applications
Classified ads platforms, online schools, online cinemas, electronic service platforms, cashback platforms, video hosting, thematic portals, online booking and scheduling platforms, online trading platforms

These are just some of the types of mobile applications we work with, and each of them may have its own specific features and functionality, tailored to the specific needs and goals of the client.

Showing 1 of 1 servicesAll 1735 services
MES Manufacturing Control Mobile App Development
Complex
from 2 weeks to 3 months
FAQ
Our competencies:
Development stages
Latest works
  • image_mobile-applications_feedme_467_0.webp
    Development of a mobile application for FEEDME
    756
  • image_mobile-applications_xoomer_471_0.webp
    Development of a mobile application for XOOMER
    624
  • image_mobile-applications_rhl_428_0.webp
    Development of a mobile application for RHL
    1052
  • image_mobile-applications_zippy_411_0.webp
    Development of a mobile application for ZIPPY
    947
  • image_mobile-applications_affhome_429_0.webp
    Development of a mobile application for Affhome
    862
  • image_mobile-applications_flavors_409_0.webp
    Development of a mobile application for the FLAVORS company
    445

Developing Mobile App for Manufacturing Execution (MES)

MES systems manage manufacturing real time: job control, output tracking, quality, equipment downtime. Paper route sheets and Excel reports — familiar work method breaking at first traceability requirement or ERP integration. Mobile app here — shop floor data point: worker scans job, marks completed operations, logs defects.

Manufacturing Environment Specifics

Shop floor — not office. Devices must work in gloves (need stylus or large touch zones), with vibration, industrial Wi-Fi noise from frequency converters. Screens readable in bright light or dark zones. All these affect device choice.

Heavy industry — rugged terminals: Panasonic Toughbook FZ-T1, Zebra MC9300, Honeywell CT40. Android 8+, support DataWedge, RFID, NFC. Light production — regular phones/tablets in protective cases.

MES and ERP Integration: Where Thin

Most industrial MES (SAP ME, Siemens Opcenter, Wonderware) provide OData or REST API. But SAP ME pre-15.x via SOAP — XML mapping needed. Retrofit with SimpleXml converter handles it, but SAP ME WSDL schemas large: wsdl2java autogeneration saves time.

Production job sync — pull model with caching. Worker gets job list for shift on login, works offline. Critical events (operation start, stop, defect log) — immediately to queue via WorkManager:

val syncRequest = OneTimeWorkRequestBuilder<OperationSyncWorker>()
    .setConstraints(
        Constraints.Builder()
            .setRequiredNetworkType(NetworkType.CONNECTED)
            .build()
    )
    .setBackoffCriteria(BackoffPolicy.EXPONENTIAL, 15, TimeUnit.SECONDS)
    .build()
WorkManager.getInstance(context).enqueueUniqueWork(
    "operation_sync_${operationId}",
    ExistingWorkPolicy.KEEP,
    syncRequest
)

KEEP policy important: if network lost and worker hit "complete" twice — queue should have only one sync task for operation.

Output Tracking and Component Serialization

Parts, assemblies, finished product scanning — central function. Each item has unique QR or DataMatrix with serial. Assembly: worker scans component → system checks it fits operation → allows continue or blocks with reason.

This Component Traceability. App-level implementation — MES API query with serial_number + work_order_id + operation_id. Response: "allowed" / "wrong component" / "already used". Last case important: catches duplicate scan from error and prevents duplication in tracking.

Quality Control and Defect Logging

Defect log form — not just "quantity" field. Need defect code picker from classifier (GOST or internal), photo of defect attachment, damage location on part.

Photo on Android: CameraX ImageCapture, compress via Bitmap.compress(JPEG, 70) before sending — 50MP camera photos unsuitable. Location annotation — Canvas over ImageView saving tap coordinates as percent of image size (not pixels — they change on resize).

Equipment Monitoring via OPC UA

If MES integrated with SCADA via OPC UA, mobile app shows equipment parameters real time: RPM, temperature, vibration. Prosys OPC UA SDK for Android — commercial library with good docs. MonitoredItem subscription with 1000ms sampling sufficient for production dashboard.

OPC UA without SDK — Eclipse Milo via JVM, but Android needs caution with thread management and app size.

Role-Based Access

Manufacturing roles fundamental: worker sees only his jobs, master — his section jobs, engineer — all operations with norm edit. Spatie Permissions on Laravel backend, JWT token with role claims. Mobile — permission check before screen render, also forced server check on each request.

Timeline

Basic MES app (jobs, operations, defects, sync): 8–12 weeks. Full cycle with OPC UA, component traceability, defect photo-logging, BI integration: 4–7 months. Cost calculated individually after analyzing integration scheme.