Skip to content

dilshan/openhamclock-kiosk

 
 

Repository files navigation

OpenHamClock Kiosk

A customized, Armbian-based Linux system designed to launch OpenHamClock in a dedicated kiosk mode on the Banana Pi M4 Zero.

Prototype build of OpenHamClock Kiosk

This image is built on the X Window System using the Openbox window manager and Chromium. It is engineered for a "plug-and-play" experience - once flashed, it requires no user interaction, keyboard, or mouse to function. WiFi and system localization are pre-configured at build time for seamless deployment.

Prerequisites

For a smooth build process, we recommend using a Linux environment (the prototype was developed on Ubuntu 24.04 LTS).

Build System Requirements

Component Minimum Requirement
RAM 8GB or more
Storage ~50GB free disk space
Architecture x86-64, ARM64, or RISC-V
Privileges Superuser (sudo) access

Building the Operating System

1. Clone the Repository

git clone https://github.com/dilshan/openhamclock-kiosk.git
cd openhamclock-kiosk

2. Configuration

Before building, you must define your network and regional settings in userpatches/customize-image.sh

  • WiFi SSID: Search for [wifi] and update the ssid field.

  • WiFi Password: Search for [wifi-security] and update the psk field.

  • Timezone: Search for /etc/localtime and update the symlink to your IANA Time Zone. Example: ln -sf /usr/share/zoneinfo/Asia/Colombo /etc/localtime

  • Hostname & Root Password (optional): You can modify these in the script. To generate a secure password hash, use:

    openssl  passwd  -6  "YOUR_NEW_PASSWORD"
  • Server URL: Update the userpatches/overlay/openbox-autostart file. The default URL is set to http://192.168.1.130:3000.

  • Further Customizations: For any additional system tweaks, please consult the Armbian documentation.

3. Start the Build Process

Execute the compile script:

./compile.sh bpim4zero-openhamclock

IMPORTANT

During the process, the Linux kernel menuconfig interface will appear. We highly recommend keeping all settings at their default values. An active internet connection is required throughout the build.

Flashing the Image

4. Locate the Image

Once the build finishes, navigate to the output directory:

cd output/images

5. Write to SD Card

Insert a 4GB or 8GB SD card into your build PC. Identify its device path (e.g., /dev/sdX) and run the following command.

WARNING

This will permanently delete all data on the SD card. Ensure of=/dev/sdX points to the correct drive.

sudo dd if=Armbian-unofficial_26.02.0-trunk_Bananapim4zero_trixie_current_X.XX.XX_minimal.img of=/dev/sdX bs=1M status=progress conv=fsync

6. Boot

Unmount the SD card, insert it into your Banana Pi M4 Zero, and power it on. The system will automatically boot into OpenHamClock.

Flashing the OS Image to Built-in eMMC

The 2GB RAM version of the Banana Pi M4 Zero features 8GB of onboard eMMC, which provides more than enough space to host the OpenHamClock kiosk operating system. To flash the image to the internal storage, follow the steps below:

  1. Download the Banana Pi M4 Zero Desktop OS image from the Armbian website, specifically recommending the Debian image with the Cinnamon desktop environment.
  2. Flash this initial OS image onto an SD card using the dd command, ensuring you target the correct drive (e.g., /dev/sdb).
sudo dd if=./Armbian_25.8.1_Bananapim4zero_trixie_current_6.12.35_cinnamon_desktop.img of=/dev/sdb bs=1M status=progress conv=fsync
  1. Insert the SD card into the Banana Pi M4 Zero and boot the board, making sure to configure the Wi-Fi connection during the initial setup process.
  2. Once the board is booted and connected to your network, find its IP address by running the ip addr command.
  3. From your host machine, transfer the OpenHamClock kiosk operating system image to the Banana Pi using the scp command.
scp ./Armbian-unofficial_26.02.0-trunk_Bananapim4zero_trixie_current_6.12.73_minimal.img <USERNAME>@<BOARD-IP-ADDRESS>:~/
  1. Identify the eMMC device mapping on the Banana Pi using the lsblk command, noting that the internal disk will appear without mount points (typically as mmcblk2).
  2. Flash the OpenHamClock image directly into the internal eMMC using the dd command.
sudo dd if=./Armbian-unofficial_26.02.0-trunk_Bananapim4zero_trixie_current_6.12.73_minimal.img of=/dev/mmcblk2 bs=1M status=progress conv=fsync
  1. After the transfer is complete, safely power down the board by running sudo shutdown now.
  2. Eject the SD card from the slot to ensure the board boots from internal storage on the next cycle.
  3. Power the board back on, and the OpenHamClock kiosk OS will start automatically from the built-in eMMC.

About

Customized Armbian-based Linux system for launching OpenHamClock in kiosk mode on the Banana Pi M4 Zero.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Contributors

Languages

  • Shell 71.9%
  • Python 9.3%
  • GSC 8.4%
  • Batchfile 4.0%
  • QML 1.6%
  • NASL 1.4%
  • Other 3.4%