I noticed NavSpark mini GPS module a couple of weeks ago, and since it was free, not including $10 for shipping, I went ahead and ordered. Since the freebie got popular, SkyTraq took some time to ship it, and when they did they provide a “not trackable” tracking number, which I’m not sure what that means as I could track the parcel from Taiwan to Thailand using 17track website without issues. The packages included NavSpark mini and a USB to TTL module as described, so I insert both and connect VCC, GND, and UART as shown on the pictures on the product page. I also connected the GPS antenna from LinkIt ONE development kit to the uFL connector on NavSpark mini, as well as a micro USB to USB cable to my computer. If you don’t have such antenna, you’ll need to add the $9 GPS/GLONASS antenna on NavSpark website […]
How to Resize Android’s Internal Storage Partition in Rockchip Devices
I installed Light Biz OS firmware on GeekBox yesterday, but I’ve quickly realized many applications such as Gimp Inkscape would not install due to the small 1.94GB “internal partition”, so I asked how to increase the partition size in GeekBox forums last evening, and got an answer overnight from “dewet”. The good news is that it worked so I’ll share the steps I followed in a computer running Ubuntu 14.04. It might also be possible to perform the same tasks within a Windows machine with Rorkchip’s Factory tools First let’s download the utils with relevant scripts and binaries:
1 2 |
git clone https://github.com/geekboxzone/utils cd utils/rockdev |
Now copy your device or board’s firmware file “update.img” to the working directory, and unpack it:
1 |
./unpack.sh update.img |
The output should look like:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
start to unpack update.img... ********RKImageMaker ver 1.61******** Unpacking image, please wait... Exporting boot.bin Exporting firmware.img Unpacking image success. Android Firmware Package Tool v1.0 Check file... OK ------- UNPACK ------ package-file 0x00000800 0x000002A6 Loader.bin 0x00001000 0x0003594E parameter 0x00037000 0x000003BF Image/trust.img 0x00037800 0x00400000 Image/uboot.img 0x00437800 0x00400000 Image/resource.img 0x00837800 0x00606400 Image/misc.img 0x00E3E000 0x0000C000 Image/kernel.img 0x00E4A000 0x00D08C4C Image/boot.img 0x01B53000 0x001354E8 Image/recovery.img 0x01C88800 0x00FB4000 Image/system.img 0x02C3C800 0x28D29000 update-script 0x2B965800 0x000003A5 recover-script 0x2B966000 0x0000010A Unpack firmware OK! ------ OK ------ Unpacking update.img OK. Press any key to quit: |
The files will be in the “output” directory. For our purpose “parameter” file, and especially the last line (CMDLINE) where we will want to adjust the userdata partition […]
How to Upgrade Rockchip Firmware in Linux for RK3288, RK3328, RK3368, RK3399, etc..
I’ve been looking for ways to upgrade firmware on Rockchip RK3368 based GeekBox in a computer running Ubuntu 14.04, but while they’ve provided firmware update instructions for Windows, which remains basically the same as upgrading firmware on Rockchip RK3288, there’s no such information for Linux. However, I could remember than Radxa Rock supported upgrade_tool utility, but since the tool linked on Radxa website might be outdated, I instead searched for some RKtools repository on Geekboxzone Github account, and I was lucky enough to find one. Here’s what I did to flash Light Biz OS to GeekBox with my Linux computer: Get the tools, and make sure upgrade_tool is there.
1 2 3 4 5 6 |
git clone https://github.com/geekboxzone/lollipop_RKTools.git cd lollipop_RKTools/linux/Linux_Upgrade_Tool unzip Linux_Upgrade_Tool_v1.23.zip cd Linux_Upgrade_Tool_v1.23/ ls -l upgrade_tool -rw-rw-r-- 1 jaufranc jaufranc 3013546 Dec 17 2014 upgrade_tool |
Download and extract the firmware, e.g. Cross_Lollipop_BizOS_V151208.7z:
1 2 |
sudo apt-get install p7zip-full 7z x Cross_Lollipop_BizOS_V151208.7z |
Now connect a USB cable to the USB OTG port of your device or board. In case of GeekBox that’s the micro USB port. Now as the board is powered on, keep […]
How to Upgrade SMA-Q Smartwatch Firmware
I’ve started testing SMA-Q smartwatch, and so far I’ve had lots of issues with Bluetooth connectivity. The watch can rarely pair with my Android smartphone, and I was unable to enable features like Anti-lost and Sedendary alerts as the app would always report there was no connection. The company has sent me instructions to upgrade the firmware, and it seems to have improved things a little. So first you need to install SMA Services app by scanning the QR code on the user’s manual, or download the apk by following this link. Once this is done you can register, or skip registration. Now go to Setting, and select Connect watch. You should see a circle as on the left side above reading Searching watch, then Bluetooth Connecting, before seeing a message the connection was successful. You’ll probably them want to tap on Upgrade app, before tapping on Firmware upgrade (local […]
How to Root Amlogic S905 based MINIX NEO U1 Box in Windows and Linux
MINIX NEO U1 is a great device, but if you have some apps that require root access, the firmware is not rooted by default. AndroidPC.es just posted instructions to root the device in Windows, and I’ve also adapted Daemonium’s batch script for Windows as a shell script in order root the device from Linux. Please note that this will break OTA firmware update, so you’ll have to upgrade firmware manually after rooting. The most steps are common between Linux and Windows Enable Developer options, by going to Settings->Advanced Settings->About Mediabox, and click 6 or 7 times in the Build number section, until the new menu is enabled. Go back once, and access Developer options to make sure USB debugging is enabled Now go to Settings->Network to check and note your IP address (WiFi or Ethernet) Download and extract AndroidPC.es_MINIX_NEO_U1_root_v01_Daemonium.zip They also asked to install WiFi adb in your system, but I […]
Nandland Go Board is a $50 Board for Learning FPGA, VHDL & Verilog Programming (Crowdfunding)
There are many FPGA boards on the market at various price points, but many assume you already have the technical knowledge to program the bard with Verilog or VHDL, and may not be suited to beginners. Nandland Go Board is a $50 board that targets beginners with tutorials to get started with blinking LEDs, controlling buttons, received data through the UART interface, showing display patterns via the VGA interface and more. Go Board specifications: FPGA – Lattice ICE40 HX1K with 1280 logic cells, 64Kbit RAM, and one PLL. Storage – 1Mb flash Clock – 25 MHz on-board clock Video Output – VGA Connector Display – Dual 7-Segment LED Display USB – 1x micro USB connector for power, communication, and programming Expansion – PMOD connector Misc – 4x user LEDs, 4x push buttons Power – 5V via micro USB port Dimensions – N/A The board will be programmed using Lattice Semi […]
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 […]
How to Run Headless Linux on Amlogic S905 Devices Such as MINI MX or K1 Plus
A few week ago, I had been informed that Amlogic S905 U-boot and Linux source code was released, and one person use the code and other resources to load a minimal Ubuntu 14.04 image to his K1 Plus TV box and released the installation instructions and the image (Thanks olin!). I also have K1 Plus here, but since I’ve just finished reviewing Beelink MINI MX, I decided to use the latter instead. The instructions below boot Linux from the (micro) SD card, and can still boot Android if you remove the SD card. Modifying U-boot environment The instructions include opening the box, and connecting or soldering a USB to TTL debug board to access U-boot and change some parameters. But later once an image with network is working, you could also build and load fw_setenv and fw_saveenv, and do the same steps with an Android shell and without the need […]