I’ve just found out Microchip had introduced Curiosity development board a little while ago, in order to let students and others experiment with their 8-bit PIC DIP MCUs, and including MikroElectronika Mikrobus footprint, an interface for Microchip RN4020 module to add Bluetooth Low Energy, as well as other headers and some extra features like buttons, and a potentiometer. Microchip Curiosity board specifications: MCU – PIC MCU socket for 8, 14, and 20-pin micro-controllers with PIC16F1619 pre-installed. Expansion mikroBUS Click Board footprint Microchip RN4020 Bluetooth Module Footprint USB – USB mini-B connector Misc – Master Clear Reset button, potentiometer, LEDs, mTouch button, push button Power Supply 5V via USB 9V using an external power supply (footprints only) 3.3V to 5V external power supply via TP3 and TP4 pins Dimensions – N/A There are over 160 MikroElektronika Click boars on the market now, but only seven are listed with code samples for […]
How to extract kernel.img with mkboot script
As I tried instructions to install Linux on Amlogic S905 Android TV boxes yesterday, I wanted to extract kernel.img file found in Android firmware, but Google did not help that much until I found mkboot part of mkbootimg_tools scripts. But first let’s see how kernel.img is created… Google provide a Python script called mkbootimg that combine the kernel image (e,.g. zImage), a rootfs/ramdisk and the device tree (DTB) file with a command line that looks like:
1 |
./mkbootimg --base=0 --kernel_offset=0x01080000 --kernel ${KERNEL} --ramdisk_offset=0x01000000 --ramdisk ./${ROOTFS} --second ${DTBFILE} --output ./kernel.img |
However, AFAIK the company does not provide a “unmkbootimg” script, and mkbootimg can only be used to create kernel.img, not decompile it. But that’s what mkboot does, and it works for kernel.img and recovery.img. Let’s retrieve the necessary files first:
1 |
git clone https://github.com/xiaolu/mkbootimg_tools |
mkboot is a bash script so we can use it right away:
1 2 3 4 5 6 7 8 9 10 11 |
cd mkbootimg_tools ./mkboot <Unpack and repack boot.img tool> ---------------------------------------------------------------------- Not enough parameters or parameter error! unpack boot.img & decompress ramdisk: mkboot [img] [output dir] mkboot boot.img boot20130905 Use the unpacked directory repack boot.img(img_info): mkboot [unpacked dir] [newbootfile] mkboot boot20130905 newboot.img |
So it can be used both for unpacking and repacking kernel.img to/from the output directory. Let’s run the command […]
Yocto Project 2.0 “Jethro” Released
The Yocto Project 2.0 was released a few days ago. The framework used to create embedded Linux distributions supports Poky 14 “Jethro” reference distribution by default, but other Linux distributions can also be built with the Yocto Project. Some of the key features and improvements of Yocto Project 2.0 include: Added gcc 5.2 which is now the default compiler (gcc 4.8 and 4.9 are also provided) Updated linux-yocto kernel for qemu* and reference BSPs to version 4.1 Added basic support for Altera Nios II and Adapteva Epiphany Added tune files for Cavium ThunderX, Cavium Octeon, ARM Cortex-A17, Intel Quark X1000, and ARM vfpv3 and vfpv3d16 features Toaster Web UI improvements – Better performance and reliability; simplified setup; user-friendly layout; etc… wic image creation tool version 0.2.0 with bug fixed and new features, such as GPT partition tables, native tools, image compression, etc… Image generation adds support for qcow2, vdi (VirtualBox […]
Intel Quark D1000 Customer Reference Board and Intel System Studio for Microcontrollers
Intel unveiled Intel Quark D1000, D2000 and SE micro-controllers last week, with Intel Quark D1000 available now for $2.5 to $4 depending in quantities, and to my knowledge the first Intel MCU that can be considered ultra low power. I could not see a development board at the time, but Intel does have an Intel Quark D1000 Customer Reference Board with a familiar Arduino form factor. Intel Quark D1000 board specifications: MCU – Intel Quark D1000 32-bit CISC micro-controller @ 32 MHz Storage – 4MB SPI flash (Microchip ) Connectivity – Bluetooth LE radio, Wi-Fi (Inventek Systems Serial to Wifi module) Sensor – 3-axis accelerometer Expansion – Arduino compatible headers with GPIOs, I2C, SPI, UART, analog inputs, and 5V, 3.3V and GND. Debugging – mini USB port for programming and debugging; JTAG pins Power – 5V via mini USB port, or LiPo / Li-ion battery Dimensions – N/A Information about […]
Operys Process Explorer App Shows Android Processes in Your Computer’s Web Browser
Opersys is an Android and Embedded Linux company providing both development and training services, and they regularly attend conferences and release their training materials. The company has also developed a few Android apps to export the file system, the process list and info, and interaction between apps and Android system services exposed via Binder to your computer’s web browser. I found the most interesting app to be Process Explorer, so I gave it a try on Iocean M6752 smartphone. The application requires very little permissions to install, and it’s very simple to use. Simply tap on Start the service, and the app will provide the URL to browse the processes on your computer, in my case http://192.168.0.105:3000. The output is pretty useful, as you get much more information than you could get on your smartphone or tablet screen with CPU and memory usage, running time, logcat, etc… If you click […]
How to Use Nextion Serial Touchscreen Displays – Part 1: Standalone Mode
Itead Studio launched an Indiegogo campaign earlier this year for their Nextion TFT displays that can be connected to external board such as Arduino or Raspberry Pi via the serial interface, or even a standard computer provided you have a USB to TTL debug board. The campaign was successful with over 1,700 backers, and the company recently sent me two samples for review: a 2.4″ display and a 5″ display. In this post, I’ll look at the boards, and make a small standalone demo with Nextion Editor in Windows. Nextion NX3224T024 2.4″ Display The first item is a 2.4″ TFT display called NX3224T024_011N (non-touch) or NX3224T024_011R (Resistive touch) with 65536 color, 320×240 pixel resolution, LED backlight and up to 200nit brightness. It ships with a cable for the serial connection (5V, Tx, Rx, and GND). The back of the display features the serial connector, a micro SD used to load the […]
USB123 USBee AX PRO is a $10 USB Logic Analyzer Clone Compatible with Sigrok
A few months ago, I wrote about low cost logic analyzers selling for $75 and up, but yesterday, I stumbled upon an even cheaper, and admittedly lower end, logic analyzer called USB123 USBee AX PRO, allegedly a clone of the original USBee AX PRO minus the analog inputs, that sells for $9.99 on Dealextreme. [Update: It can also be bought for $5.60 on Aliexpress including shipping to most countries] USBee AX PRO specifications: Sampling rate – 24Msps Sample rate – 24MHz @ 8 channels Input voltage range: 0~5V Digital channel: 8 Low input voltage: < 0.8V; High input voltage: >1.4V Supported Protocols – SPI, IIC, UART, SMBus, I2S, CAN, Parallel, Custom, Search, Async, 1-Wite, PS/2 Dimensions – 5.4 cm x 2.7 cm x 1.8 cm Weight – 60 grams The tool ships with 10 Dupont cables and a USB cable to transfer data to your PC. DealExtreme also provides CDROM […]
ee203 Real-time Current Monitor Supports 1 μA to 1A Range, Outputs Data to Oscilloscope
Measuring current can be tricky, as I found out during my various attempts at measuring power consumption of TV boxes, as when the current gets too high, your measurement setup impedance may be too high (cables or multimeter), and the voltage delivered to the device under test too low for it too keep running, while accuracy may be an issue while measuring very low currents. EE Equipment ee203 Current Monitor solves some of these issues for people working on low power embedded systems as it can measure currents between 1 μA and 1A, and even output data to an oscilloscope to see real-time power consumption of the devices. Key features for ee203 current monitor: 6 Decades of Current Range: 1 μA – 1 A (2A fuse) No Range-Switching Interruptions or Delays Wide System Voltage Range 1.5V – 5.5V (12V Max) USB interface for calibration, control, and data logging View Current […]