Git Product home page Git Product logo

pitools's Introduction

pitools

Tools for doing various things with Raspberry Pi's. All of these target Raspbian unless mentioned otherwise.

Please see the documentation for each individual tool, do not blindly use them as some may damage data if used incorrectly or cause unwanted side effects. Here is a list of all the tools/directories and what they do.

These tools maintain a list of which ones have been installed under /pitools as some have dependencies on others, and I did not want to go with the hassle of making debian packages. Where this is the case, the readme for each tool explains this.

Supported models

  • Revision is that reported by /proc/cpuinfo
  • Just because it has not been tested, it does not mean it will not work.
  • Please see the notes under the table for more information.
  • Anything marked as Tested by me means that I have that exact hardware revision and have performed testing myself.
Pi model RAM Supported Tested Notes
Pi Zero 512MB Yes Yes Tested by me
Pi 1 Model A 256MB Yes No
Pi 1 Model A+ 256MB Yes No
Pi 1 Model B 256MB Yes No 256MB Model B?
Pi 1 Model B 512MB Yes No
Pi 1 Model B+ 512MB Yes Yes Tested by me
Compute Module 512MB ? No Please see note
Pi 2 Model B 1GB Yes Yes Tested by me
Pi 3 Model B 1GB Yes Yes Tested by me

Note: I really need help testing this stuff on a compute module; please perform extensive testing and let me know the results, or a donation of a compute module with breakout board would be greatly appreciated (and also be added to my build farm for freepascal compilation of other projects, such as my upcoming game library port for Raspberry Pi and associated games). In Japan, it is difficult to get hold of these without a credit card.

sd_to_usb_boot

  • Copies your existing Raspberry Pi installation from the SD card to an attached USB device, and configures it to run from the USB device rather than the SD card. The SD card is still required to load the initial kernel, but you are free to use the old Linux partition on the SD card for something else afterwards. (The FAT32 boot partition must be left alone)
  • The SD card is completely unmounted after the machine has booted (and in theory could even be be pulled out but I do not recommend doing so just in case)
  • The /boot partition from the SD card is kept in sync with a "virtual" /boot partition on the USB media, and a tool is included to sync the virtual /boot partition back to the SD card if modify it from the Pi itself (it will remount the real /boot from the SD card and sync back)
  • This is an alternative to using the new "alpha" USB boot support on the Pi 3 (which is apparently not very reliable and does not work with many USB devices).

fpc_3_builder

  • Uses a bootstrap compiler to compile the freepascal v3.0.0 source code, installs it and sets it as your default freepascal compiler.
  • The bootstrap compiler and freepascal v3.0.0 source code are supplied in this repository (that is why git clone is slow!)
  • You need at a Pi model with at least 512MB of RAM.
  • An internet connection is not required during the installation as all of the required files are supplied in this repository.

autologin

  • Creates a new user account on your Pi called autologin, and configures it to automatically login to it on boot.

simplestatus

  • A demo script to run inside the autologin account, with installer.
  • It displays the CPU temperature, RAM usage, CPU load and current IP addresses.
  • Useful for Pi's with tiny LCD displays.

gpio_soft_poweroff

ds3231_setup

  • Configures your Raspberry Pi to use a DS3231 RTC module properly
  • Yes, even with systemd and ntpd - it "just works"

usb_current_boost

  • Configures your Raspberry Pi to provide the maximum possible power from the USB ports.
  • Make sure you have a beefy PSU!

no_swap

  • Disables the swapfile on your Raspberry Pi.

rpi_model

  • Tells you detailed information about your Raspberry Pi model.

pi3_disable_bt

  • Disables the Bluetooth controller on the Raspberry Pi 3
  • This also means GPIO 14 and 15 can be used as a real hardware serial port again (UART0 / ttyAMA0)
  • The bluetooth service is also disabled.

pi3_disable_wifi

  • Disables the Wi-fi controller on the Raspberry Pi 3

logs_to_ram

  • Moves /tmp and /var/log to a small RAM disk
  • /var/log will have all archived *.gz files flushed hourly

common

  • Common scripts used by other tools, don't run these directly.

Todo list

  • Add uninstallers for all tools
  • Disallow tools like pi3_disable_bt from being installed if the config.txt file has already been manually modified
  • Make all tools support --quiet
  • Add a "recommended provisioning" tool
  • For usb_current_boost, disallow Pi 3.
  • For logs_to_ram, expire old /tmp files and refuse installation on models with 256MB of RAM, and throw an extra warning up for models with 512MB of RAM

pitools's People

Contributors

zipplet avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

pitools's Issues

Not working ...

Install seems to be ok but rpi after reboot cotinue to working with sd partitions.

on: Rpi 3 - kernel 4.14.34-v7+ #1110 - raspbians stretch

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.