Skip to content
Dayton Pidhirney edited this page May 23, 2016 · 37 revisions
Welcome to
______                _   _                   _
|  ___|(_) _ __  ___ | | | |  __ _ __      __| | __
| |_   | || ___|/ _ \| |_| | / __ |\ \ /\ / /| |/ /
|  _|  | || |  |  __/|  _  || (_| | \ V  V / |   <
|_|    |_||_|   \___||_| |_| \__,_|  \_/\_/  |_|\_\
                           `
                         `                                   
                       ````   
                   .`-:--     
                 `///++/-`    
                .:/:/+/-`     
  `           .////++/::.`    
  .-`         -///////-`      
   `/-`       -o///+/-`       
    `:/.      `s/++:`         
      -/:`   `/+/o/.          
       `:+:-/oo++/:.```       
     `/yyo+//o+///++/:-`      
        `.-:--...:o`          
                  `o/         

Intro ( WIKI IS A WIP )

This project provides FirePick users and developers the possibility to install a minimal optimized operating system on their Raspberry Pi. The project also encompasses a Yocto firehawk-meta which provides users with the ability to fully customize their FireHawk OS, see the Yocto Getting Started Guide

The Following FirePick specific packages installed in the image by default are:

  • FireSight
  • firenodejs
  • FireStep

External packages installed in the image are as follows: //TODO

Features

  • Boots in less than 15 seconds
  • Automatically resizes SD card on first boot
  • Can fit on a 1GB SD card
  • Kernel 4.4.8 /w device tree
  • Multicore I/O scheduler as well as a vast amount of kernel optimizations
  • Install includes NTP to keep time
  • Many locations including /tmp are mounted as tmpfs to improve speed
  • No clutter and bloatware included, you only get the bare essential packages
  • 40 MB total RAM usage with the webserver running
  • Native WiFi support for usb dongles or the RPi 3 integrated WiFi

To be added

  • NEON + VFP4 + Intel TBB Optimized OpenCV
  • include fake-hwclock to save time on shutdown and bootup
  • Option to install root to USB drive instead of a SD Card
  • RPi Zero support
  • A heartbeat

Requirements

  • A Raspberry Pi Model 2B or 3
  • SD card of at least 1GB
  • A working Ethernet connection
  • A Raspberry Pi CSI Camera
  • Optional: FireStep compatible motion control board needed to interface machine with steppers

Note: The Raspberry Pi CSI Camera is needed for firenodejs to run properly. It is recommended that you install it on your Pi before starting the install process.

Writing the image to the SD card

Obtaining image file on Windows and Mac an Linux

The image archive is around 180MB in zip format, 170MB in bzip2 and 120MB in xz

Windows:

Go to our latest releases , download the .zip file.

Mac:

Go to our latest releases , download the .bz2 file.

Linux:

Go to our latest releases , download the .xz file.

How to flash your SD card on Windows

  1. Extract the corresponding image archive as stated above to a familiar directory.

  2. Insert the SD card into your SD card reader and check which drive letter was assigned. You can easily see the drive letter, such as G:, by looking in the left column of Windows Explorer. You can use the SD card slot if you have one, or a cheap SD adapter in a USB port.

  3. Download the Win32DiskImager utility from the Sourceforge Project page as a zip file; you can run this from a USB drive.

  4. Extract the executable from the zip file and run the Win32DiskImager utility; you may need to run this as administrator. Right-click on the file, and select Run as administrator.

  5. Locate the image file that you extracted earlier and select it.

  6. Select the drive letter of the SD card in the device box. Be careful to select the correct drive; if you get the wrong one you can destroy the data on your computer's hard disk! If you are using an SD card slot in your computer and can't see the drive in the Win32DiskImager window, try using an external SD adapter.

  7. Click Write and wait for the write to complete.

  8. Exit the imager and eject the SD card.

How to flash your SD card on Mac OS X

  1. Extract the corresponding image archive as stated above to a familiar directory.

  2. Connect a SD card reader with the SD card inside.

  3. Open a terminal and enter: diskutil list.

  4. Identify the disk (not partition) of your SD card e.g. disk3, not disk3s1.

  5. Format your SD card as FAT32: sudo diskutil eraseDisk FAT32 FIREHAWK MBRFormat /dev/disk<disk# from diskutil>

  6. Unmount your SD card by using the disk identifier, to prepare for copying data to it: diskutil unmountDisk /dev/disk<disk# from diskutil>

  7. Copy the data to your SD card: sudo dd bs=1m if=/path/to/firehawk-<latest-version-number>.img of=/dev/rdisk<disk# from diskutil> You can check the status of the write by pressing CTRL+T

  8. Eject your SD card: diskutil eject /dev/disk<disk# from diskutil>

Note: the r in the of=/dev/rdiskX part on the dd line which should speed up writing the image considerably.

How to flash your SD card on Linux

  1. Connect a SD card reader with the SD card inside.

  2. Open a terminal and enter: sudo fdisk -l.

  3. Identify the disk name of your SD card e.g. sdb.

  4. Unmount your SD card by using the disk identifier, to prepare for copying data to it: sudo umount /dev/sd<disk letter from fdisk eg. sdb>

  5. Copy the data to your SD card: xzcat /path/to/firehawk-<latest-version-number>.img.xz > /dev/sd<disk letter from fdisk>

  6. Sync the written data: sync

  7. You can now eject you SD card by just removing it from the reader

After flashing

In normal circumstances, you can just insert the SD card into your RPi and power it on, maybe cross your fingers too. If the flash was successfull you should be able to access the firenodejs web server on your favorite browser by navigating to <your-rpi's-ip>:8080 . If you think a error has occurred, please continue to Troubleshooting below.

It is now recommended that you SSH into your new FirePicked Pi with PuTTY on Winblows or by typing ssh firehawk@<your-rpi's-ip> into a terminal on OS X and other *nix platforms.

The default username is firehawk and the password is firepick.

Some things you should change once you have a secure shell:

Set new password: passwd

Troubleshooting

Known Issues:

  • firenodejs startup may be buggy
  • There is still alot of work to do with the bitbake builder for yocto, so don't try using this meta yet.

FireHawk is still in beta, so bugs are to be expected. Please open an issue if you find any bugs, thank you.

Disclaimer

I and any other human will take no responsibility for ANY data loss. You will be reflashing your SD card anyway so it should be very clear to you what you are doing and will lose all your data on the card.

See LICENSE for license information.