×

Happy to Help!

This website doesn't store cookies. Enjoy the experience, without worrying about your data!

Great, thanks!

Monthly Archives: March 2021

  • 0

Development of Multi-Instance B2B & B2C Web Apps on Magento 2 for a Multinational FMCG Brand

About the Customer:

The customer is a world-renowned multinational consumer goods firm. A long-standing customer who has collaborated with us for several years for transforming their digital commerce vision into a reality.

Business Challenge:

The customer brand had very custom requirements for each of their markets that called for deep domain knowledge and vertical experience.  They were seeking an experienced technology partner to help them achieve their ecommerce vision of:

  • Increasing online sales
  • Achieving successful digital transformation
  • Growing online sales across ecommerce models- B2B , B2C, and B2B2C
  • Driving new growth through ecommerce

& Create an ecommerce solutions that:

  • Fulfills orders through Multi-country, Multi-currency storefronts
  • Enhances its Ecommerce potential in B2B and B2C market
  • Enhances the buyer experience for the B2B segment

 

Embitel Solution:

Embitel team conducted a detailed technical consulting workshop with the customer. Keeping in mind the complex requirements of the customer, the multiple market the brand catered to, and the magnitude of the solutions being developed, it was decided to embrace a multi-thronged approach.  In this case study, we will give you an overview of the different projects we delivered to the customer.

  1. Project 1- Development of Primary Web Ordering App:
  2. The Primary Web Ordering is a B2B commerce web application that enables the Distributor, Merchandiser, Salesman & Retailers to place orders online in a hassle-free manner.
    The web app developed in Magento, follows multi-country framework catering to the region-specific requirements of its customers, spread across the world. The PWO has multiple country sites catering to the UK, Finland, Australia and Italy .

  3. Development of Electronic Local Modern Trade ( eLMT) Platform/Application:
  4. Electronic Local Modern Trade ( eLMT) is a B2B modelled Progressive Web App on Magento 2 that facilitates seamless interaction between Salesmen and Retailers . The  eLMT application enables all the retail chains and stores under the brand to purchase products from the latter , which is fulfilled appropriately through brand’s in-house fulfilment centres or intermediate distributors.

    The app has three modules, namely – the merchandiser app, the salesman app, the retailer app. Developed in React JS, the eLMT app has been hosted in Magento cloud itself,  which significantly takes care of all the overheads associated with PWA hosting , security management, CDN etc.

    The PWA app is is integrated with SAP’s ECC system through which master data for the following interfaces are automatically updated:

    Product Master – Product Master data

    • Customer Master – Customer Master data
    • List Price – Product Price(s) data
    • Sales Order – Order getting placed to ECC
    • Order Response – The order response from ECC
  5. B2B Route-to-market Application (eRTM):
  6. eRTM is a B2B web application developed for retailers and salesman to make orders through the app- to be fulfilled appropriately through the associated distributors.

  7. B2B2C Cold Storage/IceCream Ordering App :
  8. This B2B2C Ice-cream App was developed to enable a hassle-free interaction and order management between the distributors and the actual product consumers.

    Whenever an end user places an order for his favourite ice-cream using online or offline channels, the order is updated on the database and a distributor is assigned to manage the particular order, based on the location selected by the customer.

    The distributor uses the app for order fulfilment, accurate order delivery and invoice generation.  Following are the details of the app:

    • Key services including customer services, catalogue and store management , user and order management are managed through  Magento cloud and Magento API layers
    • Fastly CDN is used for managing the web application on cloud, and managing data security using Fastly’s web application firewall against security threats.

    Additionally, the App also included a special module for order customization based on customer’s preference. This module offers customized icecream recommendation and requirments  based on details shared by user about the party they are conducting – including number of attendees, their ages ( adults and kids), theme of the party, time of the party etc.

 

Embitel Impact:

  1. The customer had a multi-country rollout of these B2B and B2C web apps across geographies.
  2. The solution enable them to do profitable online B2C sale, even though B2C was not its core business.

 

Tools and Technologies:

  1. Magento 2 for web development
  2. Magento PWA theme for PWA development
  3. Fastly CDN for cloud computing

  • 0

Benefits of DevOps and It’s Role in Cloud Development

For many years now, the companies have had operations and development teams function as different entities. With changing times and technology, companies have realized the need to establish an integrated operating model which guides necessitates the development of a DevOps program.

What is DevOps?

DevOps – Development and Operations, is an amalgamation of operations and tools designed to increase the company’s potential to achieve applications and services quicker than traditional software development processes. DevOps speed aids companies to offer better services to their customers and thrive in the market.

DevOps

What we know in general is that DevOps works on Agile Methodology. But the fact is, DevOps model is much more than deployment of Agile program to manage the infrastructure. In simple words, DevOps can be described as CAMS – a union of Culture, Automation, Measurement and Sharing. Evidently, DevOps is the need of the hour. It not only overcomes the barriers of business goals, business functionality and geographical location but brings the teams closer on many aspects.

Benefits of DevOps

  • Continuous Integration and Continuous Delivery
  • CI/CD practices of DevOps helps the teams to deliver safely and rapidly.

    CI (Continuous Integration) is a software development method where developers often merge the code changes into a central registry, during automated builds and tests. The principal purpose of CI is to fix the bugs quickly, improve the quality of software and minimize the time taken to approve and release new software updates.

    CD (Continuous Delivery) is a software development method where code changes are automatically built, tested and prepared for a release. CD expands on CI by adopting all code changes to a production or testing site after the build stage.

    CI/CD helps to maintain quality of applications, updates and any infrastructure changes, while developers can deliver a flawless customer experience.

  • Microservices
  • DevOps methodologies support and follow the purpose of breaking large problems into smaller parts and handling them one at a time. Microservices blends well into this methodology.

    The architecture of microservices is built in a way that it works as a single application with a set of small services. Each service is paired with a small agile team who has the freehold on the service. Microservices can quickly and easily scale up or down without hindering resources or infrastructure of the system.

    Automated operations empower microservices. Different frameworks or programming languages can be used to write microservices and install them independently as single service or group of services.

  • Reliability
  • Follow Monitoring and Logging practices. Once the software is installed and moved into production, it must be monitored to establish stable performance and increase customer satisfaction. At this stage, performance analysis and logging, raising tickets or alerts on various issues, collecting customer feedback, etc. also happen to give a better customer experience.

    Companies should monitor metrics and logs to check the impact of infrastructure and application performance on the end users and user experience.

    DevOps teams get a better understanding (of any software changes or updates that could affect the users) by analyzing the logs produced by applications. Since the services/applications are used 24/7, Continuous Integration and Continuous Delivery are good practices to follow and ensure reliability.

  • Security
  • Adopting DevOps model enables security by using automated compliance policies, fine-grained control, and configuration management techniques without any implications. One of the best practices is to use infrastructure and policy as a code. It helps in defining and tracking compliance at scale.

    DevOps ensures that development, operations and security teams will adhere to the security and compliance regulations with good and quicker service.

  • Bettered Collaboration
  • DevOps paves the way for better collaboration between developers and operations teams. Since the responsibilities are shared and workflows are symbiotic, the handover period is minimized. It proves to be timesaving and reduces inefficiencies. Build productive teams under DevOps cultural model for better ownership and accountability!

Role of DevOps in Cloud Development

The objective is to enable developers to respond to business requirements in real-time. The relationship between DevOps and Cloud development is like the wheels of a cycle – interdependent and equally important. DevOps is all about the process and process improvement, while cloud is about technology and services. DevOps cuts out most of the latency that is associated with software development. Now it is up to the companies on how they can reap the benefits by aligning them together.

DevOps in Cloud Development

DevOps – The Game Changer

Before we go further, an interesting fact that most of us are not aware of is, it’s not the cloud that’s driving DevOps. Instead, DevOps is driving the interest and growth of the cloud.

  • Centralized Platform – The centralized nature of cloud development aids DevOps automation. DevOps automation is supported with a standard and centralized framework for integration, production and testing.


    Earlier, the distributed nature of some enterprise systems could not be aligned well with centralized software integration. Now, cloud application development platform resolves all hiccups w.r.t distributed ERPs and its complexities.

  • Economical – DevOps automation is adapting being cloud-centric (commonly called cloud-native and cloud-ready – this application is developed based on cloud principles I.e., easy integration, multitenancy and scaling). Centralized execution and control proved to be cost-effective and provides secure integration with on-premises DevOps automation technology. Developers who are accustomed to this process advocate that it is easier with centralized control through cloud.


    Most public and private cloud applications development providers engage in DevOps deployment on their platforms. All thanks to CI and CD tools (Continuous Integration and Continuous Development).

  • Resource Leverage – Cloud based apps reduces the need for resource purchases. Resource accounting is done based on the usage. Traditional systems lack this feature.


    Accounting and tracking costs are done based on usability of resources like developers, applications, users, data etc.

  • Speed – Software applications can be developed rapidly on cloud than ever before to meet the requirements of the business. The complete life cycle can now be accomplished at lesser time with lesser costs and seamlessly.

Handling Cloud Application Development

The benefits of cloud application development using new age DevOps tools should be realized by everyone involved in the process. Not including all stakeholders will only lead to confusion and take more time and efforts to understand and implement the procedure.

Both the DevOps and Cloud processes should be initiated at the same time. The cloud platform is generally chosen before setting up the DevOps process. Instead, DevOps and Cloud(private/public) applications should be developed at the same time. Adoption of Agile methodology using Cloud and non-Cloud DevOps tools must happen simultaneously. We must ensure that these DevOps processes are extended and automated into cloud environments (public/private).

The DevOps tools might be new for businesses and it can be taxing to achieve results without encountering any issues. However, the following measures will ease out the probability of errors and aids in seamless working of the processes:

  • Decide your development objectives.
  • Determine the ROI.
  • Verify the initiation of DevOps processes.
  • Lead the DevOps outcomes and connections to the Cloud platforms. (Synergy of CAMS – culture, automation, measurement and sharing)
  • Deduce CloudOps – Visibility on how applications operate on cloud.
  • Leadership – Include everyone who is part of the processes. Motivation to learn and adapt to dynamic conditions is what is expected from the developers.

DevOps Will Set a Trend

If enterprises want cloud application development to be productive then it is DevOps that will lead them there. The utility and function of DevOps and Cloud development are co-efficient, equally important and can work together harmoniously.

DevOps Integration

 

Many businesses do not have the system and tools that make DevOps work. This makes them go for tried and tested old practices. This might actually restrict their business from exploring new avenues for improving efficiency. It is high time that businesses take the plunge!

The fundamentals of DevOps and Cloud might be different but when brought together, they work wonders for businesses. The only setback might be the changes that occur quickly and at the same time.

Future and DevOps

DevOps and Cloud are adding immense value for businesses through their successful collaboration. No wonder, the tech-leads and CTOs are now strategizing their goals and making way to incorporate these processes into the system.

Continuous Agile implementation is the mantra that should be followed by developers. Unfortunately, it is less understood and feared by the developers who claim it lowers the quality and productivity of the applications. This is when businesses should go for third-party assistance or detailed training of the practices that work in real-time, seamlessly and successfully.

We at Embitel, offer DevOps consulting services to improve operational efficiency of businesses. Embitel will fast track your software release cycles, and achieve agility in projects, all by leveraging DevOps on Cloud.

If you are still thinking about it, it is time to stop thinking and start planning. This is the future – DevOps with Cloud!


  • 0

How to Master Customer Service Automation in Public Sector

Customer service automation has polarized takers. Some people like it for its quicker response while others loathe it for the lack of human touch and acknowledgement. But the undeniable fact is that automated customer service is a solution for quality service and streamlining of processes. Not only in private sectors but also in public sectors, it has been taken sincerely and implemented.

In all probability, private sector are the pioneers in adopting technology, innovation and growth. But lately, even public sector is not far behind. The government organizations are eager to adopt and adapt to new technologies. They are transforming to digital and automation of their services and embracing it, in spite of the complexities that come with the deployment of new technologies. Public health care is the most crucial area that has seen and undergone this transformation.

What is Customer Service Automation?

Customer Service Automation is any sort of customer service that uses tools to automate workflows or tasks instead of human resources. Also called as automated service, the technology is an aggregation of Robotic Process Automation (RPA), Machine Learning (ML), Narrow Artificial Intelligence (AI) and Natural Language Processing (NLP).

Contrary to the belief that customer service automation is not good enough, the reality is, it is one of the best methods to opt these days by companies. In this blog, we emphasize on the fact that use of automated services can be a crackerjack, especially for the government.

Automation can facilitate governments to provide exceptional customer experience. Experiences that are guided by innovations are sensitive to people as they are to technology.

By 2020, it has become evident that progress in technology will continue to revolutionize customer service interactions without really needing a human agent. With AI, tricky queries are no longer a bane for human agents. Virtual assistants should be able to search information from internal databases without the need for digging through various other sources.

Virtual assistants like AI chatbots or keyword chatbots are the most favored form of customer service automation. They use pre-defined protocols or artificial intelligence (AI) to help customers resolve problems quickly and efficiently to complete the tasks. It could be ordering a pizza, checking in luggage at the airport, locating a store, checking opening hours, changing an order or retrieving account information, and so on.

Customer Service Automation Prep

  • Begin with analyzing the cases where customer interaction activities happen.
  • Break down the service cycle into small components. Most of them will turn out to be simple functions or “microservices”. These   microservices can be recurring and repeatable customer transactions.
  •  

     

    Start small. Compile the simple function areas rather than complex services which need advanced integration. Complex services require experienced tools and an omnichannel integration.

     

  • Subsequently, develop AI capability. Begin with areas with a reliable customer interface.
  •  

     

    For instance, if someone is using a virtual assistant AI technology (like Alexa, Google Assistant) to avail a service, point them to suitable self-help guides or online resources. Build an application where the bots can analyze and deliver both simple and certain complex services without much human intervention.

     

  • Human intervention should still be optional for customers who need complex queries addressed or when the bots fail to deliver efficiently.

Let’s have a look at how government organizations can reap the benefits of by using the customer service automation.

Benefits of Customer Service Automation in Public Sector

  • Cost-effective – Multiple levels of approvals are required to curb human errors. There are lot guidelines to be followed which might lead to delay in services even though you have sizeable staff. This also ends up costing billions to the government.


    Chatbots have self-service options that can resolve customer queries before escalating it to a human agent. Email automation tools can reply to the emails at a faster pace for lesser cost than an average human agent doing the same task. Call Centre automation prompts you to shift human resources to something qualitative and they can pitch in when there is an escalation.

  • Response Time – Quicker response is any day better than delayed response. Doesn’t matter whether it’s from bots or humans. Customers who receive a prompt response always equate it with a good customer service experience. Online FAQs have resolved many queries, thus saving time for customers and service agents alike. Automation of customer service is designed to respond proactively and efficiently.
  • 24/7 Services – By using automated customer service, you are not restricted by public holidays or time zones. This enables companies to respond instantly to customer queries and resolve issues. Customers do not have to wait longer for a response. Thus, this aids in offering best customer service and help in building trust and brand reputation.
  • Training – Hiring and training staff takes a lot of time and money. With automation, time and money can be saved big time. AI helps human agents in providing necessary resources while dealing with customer queries. You just have to train them once. There may be a need to train the entire workforce time and again when new features or protocols are to be followed. With automation, only re-configuration of software is needed, and the rest can be programmed.

Automated customer service platforms ease the human agents from tier-1 or initial support requests that they may be tired and bored of attending. Agents can actually be utilized to focus on creative and challenging tasks pertaining to customer needs.

A platform like Freshchat comes with pre-programmed industry and domain knowledge.

  • Innovation – When we talk about customer service, prompt response is the first thing that comes to mind. Private sectors have anyways aced the game, but public sector organizations need to match up to them by adapting to new technologies and models. There should be room for innovation and improvement. This is the only way to build trust among customers that public sector organizations can equally offer reliable services.
  • Scalability – With customer service automation, companies can respond to any number of queries and scale their customer service at an exceptional speed with minimum resources. When a new feature or product is launched, companies can endorse interactive FAQs that solves hundreds and thousands of customer queries within a few minutes. For example, when its tax pay-time of the year; the telephones of public sector offices keep ringing and the staff cannot answer each and every call. Automation can resolve this within minutes.
  • Reliability – Sometimes the human agent’s emotions overpower the rational part of his/her mind. This can lead to unpleasant experiences for both customers and customer service staff. With automated services, powered by AI technology, these kind of issues are averted.

Chatbots and AI are free from emotions and biases. They are designed to escalate the queries to the manager at any point of the time. When the manager (usually a human agent) takes up the query, he need not go through the same sentiments as the user or give in to his/her own frustrations. AI may also help human agents by providing information about the customer behavior and history beforehand, which makes it a pleasant experience for both customers and agents.

  • Compliance – Compliance is expensive and can be chaotic, given the amount of people and protocols involved. If the government decides to automate processes, the cost can be reduced, human errors can be minimized and data security can be improvised. It is great to see that governments have decided to take that leap forward and build the trust with customers.
  • Personalization – Companies compiling customer data can combine massive data, Machine Learning (ML) and AI to provide personalized service to customers throughout the process. Personalization will go a long way in achieving customer satisfaction, improve conversion rate and aiding in repeat purchases and customer recall value.

In a nutshell, AI and automation assist human agents in understanding their customers better. It could be about their preferences; it could be recommendations of products based on customer browsing habits and purchases or catering to individual needs of customers in real-time.

Measures to Master Customer Service Automation

  • Keep customer as the central part of your objectives – Design should be based around customers. Technology can be planned or chosen accordingly.
  • Be mindful while choosing partners – Collaborate with companies that share same ideologies as you. It will help you achieve results instinctively.
  • Human influence will be needed – We can’t rely on automation entirely. Things will go wrong at times and customers will still need human interaction for assurance. Do not ignore the importance of human intervention.
  • Adequate training – New technologies and methods like chatbots and AI might be a newer concept to your personnel. Make sure the team has gone through necessary training for embracing this technology.
  • Risk Analysis – Advanced customer service models will have complex technologies and there is a possibility of bringing risks to the existing framework. It is important to assess, analyze and track risks before, during and after service installation.
  • Assess your customer service performance – Have a framework where your customer service performance helps you to assess the advantages of new technology and practices. Continuous feedback gives an insight into where you stand corresponding to customer satisfaction and how successful you are at it.
  • Data Security – It is not just about data control. Be wary of data classification, data sharing, data handling, data integration and data analysis. Data compliance is the crucial part of public sector automated customer services.
  • Start small then go big – Implement the automation model in low-risk service areas first. After testing and analysis, go for the automation deployment in areas with heavy customer interaction.

Summing Up

This pandemic has shown us how to see the world with a new perspective and when you observe closely, you can see a lot of opportunities. You can see how unprepared we were to tackle the adversities w.r.t services. Especially in public sector, when there were no support staff and the whole world went into a complete lockdown.

Going for automated services is the only sensible thing to do.

Customer Automation Services can boost the government’s competence in serving people better. Undoubtedly, bots cannot take the place of people. But with proper design, planning and ethos, we can create a powerful and intuitive service in customer automation.

The new methods can significantly reform public services. The complex interactions can be accordingly addressed by the bots, and people who need to avail the services immediately will be engaged quickly and efficiently.

Our recommended customer automation service that companies can avail themselves of is Freshchat from Freshworks.

Freshchat is a live chat software with a right mix of human interaction and automation with 24/7 customer service availability. Freshchat feature enables you to implement chatbots using a web-widget, it is a pop-up that shows when a user spends certain amount of time on the page. These web-widgets make way for you to initiate a conversation with the website visitors and cater to their first set of queries effortlessly.


  • 0

All About OTA Update for Advanced Driver Assistance System (ADAS)

Category : Embedded Blog

Modern-day cars do not seem to have changed much in appearance when compared to the cars of yesteryears. However, under the hood, you will uncover a completely different story!

While tracing the evolution of an automobile over the years, you will find that there has been a dramatic change in components and functionalities. Today’s cars are governed by electronic control units (ECUs) that have replaced mechanical components with miraculous efficiency.

With advancements in vehicle technology, safety critical elements such as Advanced Driver Assistance Systems (ADAS) have been introduced; and these components demand higher system complexity.

OTA Update for ADAS

 

Such complex systems really need efficient inter-processor communication protocols and safety mechanisms. Hence, automotive ECUs in today’s cars communicate with each other over various networks such as CAN, FlexRay and Ethernet and share data at lightning speed to facilitate complex safety-critical activities. For the Automotive ECUs to work efficiently and be always updated with the latest firmware, OTA update must be enabled in a reliable and secure manner.

In this blog, we explore the importance of remote software update for ADAS applications and the right way to do it.

What is OTA Update for Automobiles?

Over the Air (OTA) update is an inherent part of connected vehicle technology, and it enables the vehicle to receive ECU software updates from the connected IoT ecosystem and cloud.

Using this transformative technology, automotive OEMs can reduce recall possibilities by improving product quality through feature enhancements and boosting operational efficiency of vehicle parts.

Complex systems such as ADAS use multiple sensors to recognize the surroundings of a car. Such systems also utilize complex machine learning algorithms for functioning.

Additionally, these systems can often take control of the vehicle on behalf of the driver. This implies that the steering, acceleration and braking might be performed automatically. This makes ADAS a highly safety-critical (ASIL D) subsystem of the vehicle. And update of safety critical applications should be done with extreme caution.

Key Requirements for OTA Update on ADAS Subsystem

In ADAS subsystems a combination of sensors connected to engine control units gather data that can be used to perform certain tasks. Such functionalities are also rigorously tested by OEMs in order to ensure that all the interconnected devices work properly in tandem.

  • In the event of OTA update on an ADAS subsystem, it becomes necessary to ensure that the complete update is performed on all components at the same time. If some of the components are completely updated while others have pending updates, there can be massive safety risks with the ADAS subsystem.

  • Let us take the example of an ADAS application that consists of a camera and a radar. It is necessary for the OTA update to be successfully executed on both the camera and radar together. In the event of update failure on either the camera or the radar, the ADAS subsystem should revert to the last verified state.

  • Reducing the time for software update is another crucial aspect to bear in mind. To accomplish this, OEMs have been using the technology of differential update. This implies that after software is rewritten, only the differences between the new program and the old program are sent to the ECU, instead of the complete updated program.

  • Differential updates are significantly smaller than the complete software update. Some ECUs may have limited memory capacity; so, the differential update technology is perfect for such use cases.

  • Some ADAS components can be updated while the vehicle is in motion. On the other hand, several other ADAS components should be updated very carefully, and only while the vehicle is parked. This makes it necessary for the OEMs to define certain policies around the state of the vehicles for the installation of updates on critical ECUs.

  • Consider the example of OTA update on navigation functionality. The update can run in the background while the vehicle is being driven. However, if an OTA update is pending for the braking ECU, it is important that this update is executed when the vehicle’s engine is off.

  • Another important aspect to consider is the security of Over the Air updates. An end-to-end security mechanism should be in place, complete with authentication and encryption procedures.

  • During Over the Air update, an OTA object (new software code) from the automotive OEM’s cloud server is passed to the vehicle (the client). The client must verify the server’s identity and also check that the object is received without any tampering. The object should then be protected by the client and stored for update at a suitable time, based on the policy.

From the above examples it is evident that the OTA update functionality for connected vehicles is far more complex than consumer devices such as mobile phones. The presence of multiple sensors and safety critical components in ADAS subsystems makes it necessary to employ multi-ECU OTA update solutions that orchestrate the process smoothly.

Final Thoughts

OTA update offers a multitude of benefits to OEMs and vehicle owners alike. While Over the Air update feature facilitates more reliable ECU updates, it also eases the burden of vehicle owners as they are not expected to drive the car to service stations each time for the upgrade.

OTA update feature also reduces the overall cost of automotive ECU update.

However, this functionality can pose a lot of challenges to OEMs as they are required to find suitable rollback mechanisms to ensure safety, reduce the downtime during software update and avoid adversely impacting the subsystem during the update itself.

These challenges can be mitigated by collaborating with a trusted OTA update solution provider with ample experience in developing such platforms.


  • 0

Development of a Diagnostic Tool to Communicate via Several Protocols using J2534 Pass-Thru APIs

 

About the Customer

Our customer is a tier-1 supplier of automotive solutions.

Business Challenge

The idea to develop a diagnostic tool that could switch between different communication protocol came with several challenges for the customer. First, they required the application layer that constituted vehicle diagnostic protocols such as OBD, KWP 2000, UDS etc. In addition to the upper layer, a pass-thru protocol was a must in order to switch between them.

Our customer understood the use of J2534 as the ideal choice for a pass-thru; however, they needed a technology partner who could integrate all these components together in the vehicle ECU. The diagnostic solution was also to be designed as a future-ready solution where more ECU diagnostics protocols could be added without worrying about the underlying communication medium. In short, the customer required a scalable vehicle diagnostics solution.

Embitel’s Solution

Having developed a somewhat similar solution for one our customers, we understood the challenges very clearly. Our automotive team was able to grasp the exact pain-points of the customer and provide a targeted solution. When the customer learnt about our library of re-usable vehicle diagnostics and ECU communication stacks, they knew we were the right choice for the project.

  • We conceived a diagnostic solution that enables the diagnostic protocol such as OBD, KWP 200 etc. to switch between the communication protocol viz. CAN, LIN, KLINE & others. For instance, the diagnostic tool can communicate via CAN in one vehicle and LIN in another. Even if the same vehicle has more than one communication medium, it can switch between them.
  • As per the requirement of the customer, the solution was designed in a way to establish communication through different protocols simultaneously.
  • We utilized J2534 pass-thru protocol to achieve this switching mechanism.
J2534

 

Post multiple discussions and brain-storming sessions with the customer, we were able to identify the deliverables. Following modules were then developed as per the requirements:

Communication Protocols: Communication protocols including ISO 15765 and TP 2.0 over CAN, Kline over UART were developed, configured, and integrated to the solution.

J2534 based Pass-Thru protocol: J2534 APIs were developed and integrated. These APIs would handle the switching mechanism. As a pass-thru protocol, these will also handle the transport of data packets from ECU to diagnostic device.

Application Layer: We developed and integrated diagnostic protocols as per the customer’s requirements. The protocols OBDII (ISO 15031), UDS (14229), KWP 2000 (ISO 14230) were developed as the top layer (Application Layer).

While developing these components, our team mapped each communication protocol to its physical channel, viz. Channel 0 to High-speed CAN, Channel 1 to fault-tolerant channel, Channel 2 for normal CAN and so on.
 

Embitel Impact

With our technology assistance, our customer was able to develop a diagnostic solution that could be used for multiple communication protocols. The diagnostic protocols in the application layer are agnostic of the underlying communication medium as J2534 handles the transport of data. This enables the customer to add additional components in the applications without worrying about the low-level modules.

We were also able to reduce the turn-around time by 8-10 weeks by deploying ready-to-integrate protocol stacks such as OBD, UDS, KWP 2000, CAN, LIN, Kline etc. Our team could also deliver J2534 pass-thru protocol in the least possible time as we already had the experience of deploying a similar solution for our previous customers.
 

Tools and Technologies

  • OBD tool for Kline testing
  • PCan and CANoe for CAN testing

  • 0

Leveraging Vue storefront to develop Progressive Web Apps in Magento 2 ecommerce Store

 
Delivering a convenient, consistent, and multi-channel user experience is at the core of all modern digital business strategies and the innovations happening right now. One such technological innovations that happened as a result of the need to deliver a great CX is – Progressive Web Apps. A blessing in disguise in the world of digital commerce, a PWA delivers native web-app like experience but don’t have to be downloaded on the user’s devices.

Today Progressive Web App is one of the rapidly used and preferred methods of developing mobile-supportive websites. In this whitepaper we will explore a lot more about Progressive Web App and the many advantages it lends to digital commerce ecosystem.
The key focus of this whitepaper is on understanding how Vue storefront, a mainstream PWA framework that helps in significantly boosting your ecommerce site performance.

Here’s what you will learn in this whitepaper:

  • Understanding the concept of Progressive Web Apps
  • How PWAs are a blessing in disguise?
  • What is Vuestorefront?
  • How to integrate Vue storefront with your Magento store

Your Name (*)

Job Title(*)

Your Email (*)

Company Name(*)

Phone Number

Country

Enter the Captcha(*)

captcha


  • 0

How to Overcome the Challenges of Cloud Application Development

Category : Embedded Blog

Unlearn to learn is the dictum for the foreseeable future generations; and rightly so. Cloud applications are getting traction not only in private sector but also in the public sector. Reports suggest that there has been an unmistakable surge in demand for cloud application development of late.

What is Cloud Application Development?

Cloud Application Development is basically the development of any software application that is implemented in a cloud environment, rather than being hosted on a machine or local server. The IT infrastructure is facilitated to support applications on cloud and can interact with web browsers and APIs. The three popular cloud application development models are – private, public and hybrid.

Cloud development comprises of application lifecycle management tools (source code, configuration, test and quality control, uninterrupted delivery tools), application security testing tools and integrated development environments. Although we talk about how incredible the use of cloud development within organizations is, we seldom talk about the hiccups that our developers face while implementing a cloud strategy. It is time we address these issues and look for substantial solutions.

In this blog let us uncover the barriers that developers run into with cloud development and how to master them:

Unexplored Cloud Territory

Just like you and me, developers also detest unknown or unexplored domains. Cloud development or cloud computing is still a newer concept in certain organizations. It can be an unsettling technology for development.

Quick Fix – Adequate training is the key to sustain. There are several programs that the IT team can implement to get adapted to cloud computing internally. It will be a luxury if the IT team are also equally interested and open to change and challenges.

Insufficient Documentation

Developers are left with inadequate documentation on cloud development. With availability of necessary tools and resources, the IT team can benefit in building applications within the environment.

Quick Fix Collaborating with a consulting firm to meet the increasing demands is one of the achievable things that businesses can work on.

Not All Apps Can Be Developed in Cloud

If the application is not easy to access, inflexible and tough to replicate, then it becomes extremely difficult in developing and testing on cloud resources.

Quick Fix – It will be more appropriate to avoid developing applications that are big budget in the cloud. Avoid applications that have legacy coding design, substantial data security or regulatory restrictions.

Cloud Apps Often Do Not Work like “Real World” Apps

It is not always easy to replicate all services on the cloud. Suppose an application is developed in the cloud before running on local server, testing against a legacy system should be done.

Quick Fix Service virtualization technology which enables parallel or multiple branch development is something that developers can benefit from.

Performance Issues

At times Cloud applications can badger the performance of systems with new challenges. Information when stretched across multiple data centers can hinder the systems with network issues, latency and constrained network pipeline.

Quick Fix – Build applications so that ample wide area networks are accessible at each step throughout the process. The cloud-based applications must be capable of handling bandwidth issues and server load or lag to meet the desired purpose.

Security Concerns

When businesses engage with partners and customers, there may be instances of frequent data sharing which may lead to breach of information.

Developers should understand the repercussions of sharing these systems with others. Security should be of utmost priority to the developers.

Cloud apps may have umpteen API integrations, but at the same time, they should be easily accessible for users.

Quick Fix – Robust data encryption, reverse proxy usage, SSL, etc. will help to reinforce the security in any Cloud application development.

Integration Challenges

Businesses often miscalculate cloud integration challenges and the potential after-effects it has on the systems. Cloud applications can have tons of small modules that engage with one another. Backtracking the network can be a tedious process. Limited visibility also adds to the existing adversity. At times, the Cloud service vendor might be working with different development and monitoring tools compared to the company’s tools internally.

Quick Fix – Users should understand the products, services and tools that the vendor recons and evaluate the amount of work required to connect various products.

NOTE – Exceptional supervision should be done while dealing with cloud applications in the public sector.

System Resources

Cloud based application development is fluctuating and system configurations are constantly moving. A virtual machine must be installed for testing which can run for weeks together.

Since cloud applications are running on usage-based meter, the charges flare up every time the resource runs, and this adds up to the final bill (can be colossal expenditure for the company).

Quick Fix – Getting back to basics. Understand your system and resources better to invest on necessary applications and services only.

After Thoughts

There are two types of cloud-based development. When opting for a cloud-based software solution, either you can build an application that is sited on third-party solutions or your company can be a cloud service provider for SaaS, Iaas, PaaS.

Cloud app development evidently has loads of advantages – it aids in cost-cutting as there is no real need for hardware, certain software, or servers. It will bring feasibility, as there will be seamless accessibility to the product and stability in the workflow.

Not to forget that, know your vendor and they know you. Go for a reputed platform vendor who meets your standard procedure. AWS, Google Cloud Platform, Microsoft Azure, Oracle, Cloud Foundry (Ruby) are some real good vendors in the market today.

Embitel is a leading cloud implementation service provider and has been enabling distributed cloud computing models for global customers. Our partnerships with AWS, Google Cloud and Microsoft Azure, and our Agile development methodologies have been leveraged by organizations for their rapid digital transformation through cloud enablement.


  • 0

High-end Telematics Control Unit Development for Commercial Vehicles

 

About the Customer

Our customer is a trusted Tier-1 supplier of connected vehicle products that are benchmarked against superior quality standards, for commercial vehicles.
 

Business Challenge

The customer desired to develop a high-end telematics control unit that has two devices internally:

  • A processor that runs on Linux platform
  • A secondary controller that runs on FreeRTOS embedded platform

 

Embitel’s Unique Value Proposition

Our experience of more than 15 years in connected vehicle product engineering services and illustrious track record compelled the customer to approach us with this challenging project.

We were able to mitigate several striking technology challenges that cropped up during the design/development phase of the project:

  1. The processor of the device was based on the latest chipset from NXP, i.e., the i.MX 8M Nano. This project marked the first time we used this specific chipset design and delivered a successful Proof of Concept. This also makes us one of the few product engineering service providers in the market today having experience with this chipset.
  2. The project also required the design and development of a SOM board, which is essentially a miniature module within the large circuit. The SOM board also had an irreversible design, i.e., with a child card that serves as an exchangeable component. In addition to the SOM board, the product also included a carrier board. The processor that works on Linux platform is on the SOM board and the microcontroller that runs on FreeRTOS is on the carrier board. These two boards had to communicate with each other through Inter Processor Communication (IPC). This IPC included signal exchange and data exchange. For data exchange it was necessary to have a Hardware Secure Module (HSM) between the processor and the controller.
  3. The Hardware Security Module accomplishes Secure Interprocessor Communication, with two configurations for secure boot and secure IPC. The protocols used to communicate with the processor and the controller are also different. Moreover, the encryption-decryption algorithm that was integrated with this module provides it a superior level of IoT security and resilience from hacking.
  4. This was also the first project in which we introduced an eSIM.
  5. Our design was compatible with the end-to-end IoT architecture that the customer was developing.

Software Features of the Telematics Solution

  • The device included a FOTA update module and was connected to the cloud.
  • The project also demanded the compliance to AIS 140 standards for commercial vehicles. SOS/emergency button was integrated with the product. On pressing the emergency button, a message will be sent to a preconfigured list of numbers. So, every contact receiving that message will be alerted of the emergency and will also receive the GPS location of the vehicle.
  • Communication was established with two other servers through the cloud, as per the business requirement. The communication protocol for one of the servers was MQTT, while HTTP protocol was used to communicate with the second server.

 

Tools and Technology

  • BUSMASTER and PCAN-View to simulate and analyse CAN data.
  • Development on Linux OS and FreeRTOS environments

 


  • 0

13 Things to Consider While Choosing the CRM System

Category : Embedded Blog

The definition of the Customer Relationship Management A.K.A CRM has changed over the years and see how! What started off as a plan to improve customer service, has now become the core part of the business strategy. Today, businesses prefer having a CRM software to sustain and thrive in the market.

What is CRM? CRM is a strategy to manage all your company’s relations and interactions with users and potential customers. CRM is not just limited to sales. It focuses on all round relationships with customers, suppliers, team members and end-users. The CRM strategy is brought into action through a software which is CRM software.

A CRM software is a depository where services for departments such as sales, marketing, customer insights, lead generation, data management, client retention and data tracking are seamlessly integrated and monitored. The issues that arise w.r.t these departments, are addressed and bottlenecks are successfully resolved.

Whether to use a CRM software in your organization is a no-brainer but the hard part is choosing the right CRM software service to your organization. We have made a list of factors that you should consider while choosing a Customer Relationship management Software. Check it out:

  1. Your Goals
  2. There is a plethora of CRM providers in the market to choose from. You need to streamline it according to your pain points and objectives; and which provider can accomplish it the best. It could be to get potential leads, improve customer service, systematizing inter-team efficiency, overcome the barriers of sales cycle, boost the conversion rate, upgrade the marketing applications along with others. Long story short, you must know your goals.

  3. Budget
  4. The price of the CRM subscription entirely depends on the services you want to avail. But what you need to consider is the benefit of using “A” particular service, how would you like to use it – the features and add-ons that will come with the service, mode of payment – whether you would like to pay upfront or opt for monthly subscription, whether you would like to have it as a cloud solution or on-premises CRM.

    Do your research and choose a cost-effective one. It is advisable to go for a free demo from one or two CRM providers before zeroing in on the service solution.

  5. User experience
  6. Ultimately, it all boils down to how user-friendly is the new CRM system. An intuitive, easy to navigate the system is what you should consider primarily. Complicated system will be a loss because not only does it slow down the efficiency of the resources but also the adoption and productivity within the organization.

    From our experience, Freshworks CRM is easy to set up without the need of developers. There are no detailed or laborious learnings here, you can start selling instantly. Bonus point is that you get a free trial of 21 days to assess the product.

  7. Mobility
  8. The world now fits into our palms, thanks to every service that is available on mobile. Post COVID pandemic, people now feel safe to use services on mobile. Most cloud solutions can be accessed using any device that is connected to the internet but only some companies provide better mobile services. Make sure the CRM system that you are choosing has mobile app, many CRM systems offer all features only for desktop applications.

  9. ERP Integrations and API
  10. A good CRM should integrate with the applications you already have. It could be any ERP software, HR software, accounting or marketing software, e-commerce or sales software. CRM applications should work in tandem with various new applications that will be added at any time and perform seamlessly across the teams throughout the day. This increases the productivity and saves ample time of the teams.

    CRM applications should also provide one source of data where the entire business and teams within, can clout the information for better analysis and decision making.

  11. Scalability
  12. Every business is unique and so are their goals, processes, dynamics and customer base. Ergo you need to choose a CRM that is flexible, tends to your needs and adapts to your working processes. The CRM solution should be scalable. It should grow with the business and should be able to smoothly upgrade to advanced versions. Steer clear from “one-size-fits-all” solutions. They can be expensive and not all services might be aligned with your business strategies.

  13. Automation
  14. If leads should be managed consistently, you should adopt automation in your business. The size of the business doesn’t matter because efficiency is what we are rooting for here. To overcome the roadblocks in the sales funnel, workflow automation is necessary. Streamlining current leads, contacts and deals can be micromanaged once the automation is initiated.

  15. Metrics and Analytics
  16. Measuring your efforts to know where you stand parallel to your growth is crucial for businesses. Simplifying the sales workflows and evaluating these workflows should be the numero-uno agenda of the CRM. Obviously, the data should be easy to access across the teams. It should analyze what is working and what is not. It should understand the roadblocks, leads and sales funnel. It should also showcase team members’ performance track. This data driven information will go long way in the betterment of the sales and in turn the growth of the business.

  17. Vendor Reputation
  18. Just because it is popular, bigger, or expensive does not make it the best for all businesses. The questions that must be answered before fixating on the vendor are – to what extent will the solution help business? Is it secure and reliable? The service, training and tools, customer service, usability should be seamlessly integrated within the processes.

    It is always preferable to read customer testimonials, reviews from tech experts or recommendations from leaders within the industry should be considered before deciding on the vendor.

  19. Features
  20. Marketing – Marketing automation software is a must have service and it should run multi-channel marketing campaigns, enable leads, email marketing, build web forms and landing pages and analyze the results.

    Helpdesk service – Make sure that the CRM system comes with 24/7 customer service and helpdesk support features to ensure that teams are working at disposal. CRM consulting can go a long way in minimizing the cost, time, and efforts of the businesses.

    Dashboards – Do not underestimate the potential of the dashboard. The customized dashboard facilitates the log in-log out, easy-to-access and analyze the metrics.

    Social media – The e-commerce CRM should use social media to manage customer relationships. Customer interactions, lead generations, brand mentions can be monitored using this software.

  21. CRM Set-up
  22. It could be Cloud service or on-premises service depending on your business type.

    With Cloud service (It is a SaaS – Software as a Service), you don’t need a server or technical proficiency. You just need to log into cloud-based CRM from your internet browser and start using it. You need to be always online. If the connection is lost, then you will not be able to access the data. The data is stored on the vendor server.

    With On-premises service, it is hosted at your location and you own the software. You will have direct access to the servers. But you need an in-house IT staff at the location. You might have to pay hardware and software subscription charges upfront.

  23. Sales Expertise
  24. Once CRM program is installed and integrated, it’s burdensome to reverse the process. So be mindful of the resources in the team, who should do the training and who can have access to the system. It goes without saying that limited but skillful and efficient people in the team should get to the core of it.

  25. GDPR Compliance
  26. The last but latest feature that should be considered is the GDPR compliance. Customer data, security and privacy is the most crucial part of the strategy. This software manages in efficient storage and processing the privacy of customer data. Trust is what forms the basis of your business and strategy. Hold on to that at any cost.

    Whenever the customer demands or places any requests about his/her information, the CRM should be able to retrieve easily and do the needful. This one-click solution is time saving and reduces the percentage of human errors.

    Freshworks CRM provides VPN cloud, malware, spam protection, AES 256-bit encryption and GDPR services.

Some Parting Words

CRM is the panacea that companies need today to streamline the sales process to pave way for future endeavors. CRMs should effortlessly integrate with other applications without hampering the architectural changes. So, be sure than sorry. Although we cannot pin-point that this CRM software is the best in the market, we can surely say that the best one is the software that meets your needs and aligns with your goals.

Highly Recommended: Freshworks CRM is cost effective and suits all business types. This cloud-based CRM solution is highly secure, agile and easy to use. There are now two words about the scalability, but the best part is the ROI can be secured within 7 months by Freshwork CRM users.


  • 0

Battery Management System for Electric Vehicle: Ensuring Safety and Reliability of Electric Vehicles

Category : Embedded Blog

The automotive industry is really serious about Electric Vehicles this time! Unlike the past escapades that fizzled out with the launch of a few EV models that weren’t received well.

Governments, OEMs, tier-1 suppliers, and every other stakeholder are vying to make electric vehicles a worthy replacement to IC engine automobiles.

While we often get totally caught up in the glitz, we ignore one of the most important components of an EV, the Battery Pack. Cost-wise, it constitutes almost 40% of the vehicle cost. Battery pack comprises the Lithium-ion cells that power the EV drivetrain and along with that, a smart solution called the EV Battery Management System aka BMS.

A BMS can be found in almost every high-end electronic device that runs on battery; for example, your smartphone. How do you think the phone shows the battery percentage or the overall battery health? It’s the BMS at play that monitors every cell of the battery and uses its complex algorithm to calculate battery percentage, health etc. When we extrapolate the battery management aspect to an electric vehicle, the complexity gets several notches higher.

In this blog, we will learn more about battery management system for electric vehicles and also the evolution that this smart solution has gone through over the years.

EV BMS

Key Responsibilities of an EV Battery Management System

A battery pack of lithium-ion cells is akin to a small explosive. Keeping a close eye on parameters like voltage, charge, and temperature becomes highly important. An unchecked thermal runaway can cause explosion or fire which can be fatal for the vehicle occupants.

Following are the usual functions that a regular Electric Vehicle BMS performs.

  • Cell Monitoring: When charging or discharging, the battery cells need to be monitored at all times. Any out-of-spec situation must be identified and reported along with the triggering of the safety mechanism. There are integrated circuits equipped with cell monitoring algorithms that perform this function. There is a chain of command where the cell monitoring circuit records the cell voltage and temperature and passes on the data to a cell management controller.

    At this stage, some algorithms run to calculate the state of charge (SOC) and state of health (SOH).

    • SOC is determined to ensure that the battery is never over or undercharged. SOC can also be seen as a fuel indicator of an electric vehicle as it indicates the energy remaining in the battery. Using this information additional algorithms can be run to determine the distance the EV would cover before the battery needs a recharge.
    • The SOH is an indicator of overall health of the battery and gives an insight into the operating conditions of the battery. Based on this information, battery lifespan and maintenance schedule can be projected.


    Diagnostics is another important dimension to cell monitoring. UDS based diagnostics software help the EV BMS to identify and report the error codes and diagnostic info. Such data points can be used to fix the issue or trigger ISO 26262 based safety mechanism.

  • Power Optimization: The direct outcome of cell monitoring is the optimization of battery power. While the cell monitoring functionality determines SOC and SOH, the EV battery management system’s job is to keep the SOC and SOH parameters within the specified values. When the battery is charging, the EV battery management system determines how much current can be allowed in the individual cells. During the EV operation when the EV is discharging, the BMS ensures that the voltage level does not get too low. It communicates with the motor controller to ensure that.
  • Safety of Electric Vehicle: Safety is the primary concern when EV power supply and battery management system is in the picture. An undetected thermal runaway can cause major mishap. As mentioned earlier, the BMS captures data such as voltage, temperature and current to optimize the power. Similar set of data is also utilized for ensuring safety. Standards like ISO 26262 have certain requirements that must be fulfilled to ensure that the BMS is developed as a fail-safe system. Another aspect of safety is the insulation of vehicle body/chassis from the battery pack to avoid electric shock to vehicle occupants.
  • Battery Charging Optimization: The battery cells deteriorate over time. An intelligent EV BMS factors in this deterioration that results in change on battery parameters such voltage, current, etc. For instance, a battery cell gets slightly damaged by heat and starts getting charged at a lower voltage than the rest of the cells. Battery management system is responsible for identifying this fault and optimizing the charging process so that all cells are charged at the lower voltage. This reduces the stress on the overall battery pack and enhances its life. Of course, the BMS diagnostics will also store this issue as a trouble code so that it is fixed at a later stage. Moreover, oxidation in the battery terminals may lead to reduction in voltage and the BMS adapts to these changes to extract best performance from the battery.

Common Algorithms that Constitute an EV Battery Management System

Battery parameters such as voltage, current and temperature are actionable data points that need to be processed in order to derive certain metrics. For instance, battery voltage can be used to compute the distance an electric vehicle can cover before the battery gets exhausted.

A battery management system does several such calculations for which algorithms are written. Let’s understand two of these:

  • Cell Balancing Algorithm: We discussed about how different cells in a battery pack can develop different capacities with time. A battery cell might reach a maximum of 3.7 volts compared to others that reach up to 4.2 volts. That cell will also be the first to discharge. As a result, the pack cannot be used at its max potential. The cell balancing algorithm comes to rescue in such circumstances. Two kinds of cell balancing technique are deployed- active and passive cell balancing. In the active balancing technique, the stronger cells are used to charge the weaker cells so that their potential is equalized. Passive balancing works by discharging the excess voltage of the stronger cells by connecting them with a load.
  • Communication Algorithms: Different ECUs in an electric vehicle require battery parameters in order to work efficiently. For instance, the BMS communicates with the EV motor controller to ensure that it is drawing current in an optimized manner. Similarly, the BMS communicates with an external charging device to pass on the required current and output voltage information. It also controls when the charging starts and stops. If there is any out-of-spec issue, BMS cuts off the connection and stops the charging. In order to facilitate this communication, various communication protocols such as CAN, J1939, CHAdeMO, Bharat EV specifications, etc. are employed.

Road Ahead

Electric Vehicle Battery Management Systems are evolving at a fast pace. The latest breakthrough is a wireless battery management system which gets rid of CAN BUS and SPI cables. As the battery packs are getting bigger, these wires increase the complexity and thus, elevates the hazards associated with so many wires clogging the BMS.

Various such innovative technologies are currently being developed with respect to Electric Vehicle BMS and associated components. These innovations will empower the ambitious EV program that OEMs, governments and other stakeholders are pursuing with all their might.