How to Replace WiFi Driver on STM32MP1 Using Buildroot

Upgrade your STM32MP1's WiFi driver effortlessly with this comprehensive guide. Learn how to replace the outdated driver with an updated NXP version using Buildroot. Discover step-by-step instructions for obtaining the NXP WiFi driver source code, configuring it for your target, and integrating it into Buildroot. With clear explanations and helpful tips, this blog post simplifies the process, ensuring smooth implementation. Get ready to enjoy improved performance with your newly compiled NXP WiFi kernel module!

Setting Up Data Connection with SORACOM Onyx LTE USB Modem on Linux

Recently, I found myself working with a cellular USB dongle on an embedded Linux system. I've previously documented my experience integrating an LTE device, the…

Continue reading → Setting Up Data Connection with SORACOM Onyx LTE USB Modem on Linux

How to add Microsoft KM Loopback adapter in Windows 10

Recently I have started playing around a bit with Windows PCs. I needed to add a Microsoft KM-Loopback adapter on a Virtual Windows 10 Enterprise.…

Continue reading → How to add Microsoft KM Loopback adapter in Windows 10

How to install Git Large File Storage on Windows 10

Handling large file git git. Git LFS is for supporting large files which are bigger than Git's recommended 50MB file size. You cannot push these files to your repository unless you have installed Git-LFS. This post describes the steps involved how to install Git-LFS on a Windows 10 machine.

How to install virtualenv on Ubuntu 18.04

virtualenv creates a virtual python environment inside a project folder of your choice. This enables your to install python packages within the virtual python environment without even having any admin rights on that particular machine. This makes the environment extremely flexible for developers.

Guide to FONA Module Setup and Troubleshooting

Unlock seamless connectivity with our comprehensive guide to setting up your FONA module on the SPRESENSE using the Arduino FONA library. This blog post dives into troubleshooting tips for when your serial prompt stalls at “#updater,” a common sign that your firmware needs an update. Whether you're a seasoned developer or a maker just starting out, follow our step-by-step instructions to flash, update, and optimise your setup for reliable performance and enhanced project success.

How to replace the Kernel image in NOOBS with your custom Kernel

In one of the previous posts I have described Bringing up Rasberry Pi 3 with NOOBS. But after I brought up the Raspberry Pi (ver…

Continue reading → How to replace the Kernel image in NOOBS with your custom Kernel

Integrating LTE Device EM7565 into Raspberry Pi 3

Bring up Raspberry Pi To bring up your Raspberry Pi (my Pi is version 3 B) please follow the below link: How to bring up…

Continue reading → Integrating LTE Device EM7565 into Raspberry Pi 3

Format a micro SD card using gparted utility

For formatting the micro SD card I usually use the gparted utility in Ubuntu. Format the micro SD with FAT 32 filesystem format. You need…

Continue reading → Format a micro SD card using gparted utility

Resolving GobiSerial Module Errors on Raspberry Pi

Encountering 'Unknown Symbol' errors while loading the GobiSerial module on Raspberry Pi? This in-depth guide walks you through debugging missing kernel symbols, manually loading required modules, and properly configuring dependencies using depmod and modprobe for a clean and persistent fix. Learn how to resolve LTE driver issues with Sierra Wireless EM7565 on RPi effortlessly!

How to Set Up Raspberry Pi with NOOBS

Getting Rasberry Pi up and running To bring up your Raspberry Pi (ver 3 B) with NOOBS follow the instructions here. Find the kernel version…

Continue reading → How to Set Up Raspberry Pi with NOOBS

How to pipe one bash command output to another within a python script

I was recently working with something which required me to build a code base and flash it into the board (hw) and then once that…

Continue reading → How to pipe one bash command output to another within a python script

nuttx kernel make menuconfig error in Ubuntu

If you are working with nuttx kernel you might have issues trying to bring up the kernel menuconfig with the below command: I had to…

Continue reading → nuttx kernel make menuconfig error in Ubuntu

How to integrate a custom device driver into nuttx tree

I had written a blog on how to integrate a custom driver into Linux kernel tree previously here. Integrating a custom driver in nuttx kernel is pretty similar. But writing this down would probably be a good idea for any future reference.

General Linux developer’s tips and tricks

Stop Ubuntu going into suspended mode Disable suspend $ sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target Created symlink /etc/systemd/system/sleep.target → /dev/null. Created symlink /etc/systemd/system/suspend.target →…

Continue reading → General Linux developer’s tips and tricks

Introduction to Arduino

Install the arduino IDE 1. https://www.arduino.cc/en/Main/Software/ 2. Select Linux 64 bit 3. Click Just Download Unzip the downloaded file as below: vbhadra@jupiter:~/Downloads$ tar -xf arduino-1.8.10-linux64.tar.xz…

Continue reading → Introduction to Arduino

How to work in private branch in GIT

Time to time we have to work on source code which are downloaded from a git repository, modify the code, implement the functionality, test it,…

Continue reading → How to work in private branch in GIT

How to take snapshot and restore a snapshot in VirtualBox 5.2.6

Sometimes you may want to take a snapshot of the current state of your virtual machine (in my case Ubuntu Linux) so that you can revert back to it if anything goes wrong in the virtual machine. The feature in VirtualBox which helps in this is called a snapshot. A snapshot is basically a backup of your virtual machine in its current state.

How to resolve merge conflict in GIT

Merge Conflict Often you will encounter merge conflicts while doing rebase operation as described above. Here, is a example merge conflict error: The above lines…

Continue reading → How to resolve merge conflict in GIT

How to publish a topic with mqtt broker running on iot.eclipse.org server

As part of iot application development for IoT I had to play around with the SSL connection establishment  with the remote mqtt servers. The below…

Continue reading → How to publish a topic with mqtt broker running on iot.eclipse.org server

How to access Ubuntu Linux Virtual Machine in NAT mode using FileZilla from Windows Host

I was facing an issue recently and it is like this. I run a Ubuntu Linux Virtual Machine on a Windows guest. Because of my…

Continue reading → How to access Ubuntu Linux Virtual Machine in NAT mode using FileZilla from Windows Host

Why cannot connect to linux machine using FileZilla (sftp mode)?

I was trying to connect to a newly installed Ubuntu Linux version 12.04 using FileZilla but the application kept on timing out. This can happen…

Continue reading → Why cannot connect to linux machine using FileZilla (sftp mode)?

How to install ssh service in Ubuntu Linux (12.04)

Check if sshd service is running in Ubuntu with the below command: The above command and their output shows there is no sshd service running…

Continue reading → How to install ssh service in Ubuntu Linux (12.04)

Why cannot connect to Ubutnu linux machine using Filezilla (ftp)?

I was facing the issue while trying to connect to a newly installed Ubuntu 12.04 running on a Virtual box. I use FileZilla a lot…

Continue reading → Why cannot connect to Ubutnu linux machine using Filezilla (ftp)?

Installing GIT on Ubuntu 12.04

Using apt-get install Use the below command on your ubuntu terminal: Installation from source code But at times you want to install a particular version…

Continue reading → Installing GIT on Ubuntu 12.04

How to add/compile a kernel module as a new buildroot package

The content explains how to integrate an external kernel device driver as a new package in the Buildroot system, named "xyz." It involves creating a directory for the package and two essential files, Config.in and xyz.mk, which define package configuration and build instructions. The Config.in file sets up package options, while xyz.mk specifies module version, site, license, and build commands. Modifications are required in the main Buildroot Config.in file to include the new package, making it visible in the menuconfig. Finally, it outlines necessary adjustments in the source code's top-level Makefile for successful integration.

How to modify kernel command line

[/contact-form] You can modify the kernel command line from the below dts file: ~/repos/solaris_src/linux/arch/mips/boot/dts/xyx/xyz.dts chosen { - bootargs = "console=ttyS0,115200n8 loglevel=8 earlycon=uart8250,mmio32,0x1CC40000,115200 rootwait ro"; +…

Continue reading → How to modify kernel command line

How to import a python script within another python script

Let's say I have a python script called my_module.py in the location ~/junk/my_test/script/lib/. The my_module.py has a very trivial function called my_print() which just prints "Hello…

Continue reading → How to import a python script within another python script

How to run an external program from a python script

This is a demonstration how a python script can be used to automate the running of an external program which takes data file as input. The data file can be spread over differnet folders in the machine. The script goes to the data file location, extracts the name of each file in the folder and then passes the data file to the external binary.

Efficient Source Code Management Using Vim and Cscope

The author emphasizes that Vim, especially when used with Cscope and Ctags, is invaluable for navigating large Linux codebases. A guide is provided with steps for effective setup, including database location, exclusion of unnecessary directories, and enabling Cscope navigation in Vim. The focus is on enhancing developer productivity and code management.