jump to navigation

RealtimePi – out of the box real-time RaspberryPi Raspbian October 9, 2017

Posted by GuySoft in linux, open source, programming.
Tags: , , ,
5 comments
RealtimePi logo

RealtimePi logo

Hey all,
So it started as a curiosity, and it looks like its working. I made a Raspbian-based distro that ships with a realtime kernel called RealtimePi. You can download the latest here.  It’s open source, sources are here.

A realtime system means its deterministic, it means you should know how long things take to run. They way to do is is to apply a patch to the linux kernel that makes it non-preemptible. To explain – Preemption is the act of temporarily interrupting a task being carried out by a computer system, without requiring its cooperation, and with the intention of resuming the task later.

This is useful for building hardware and robotics, low latency audio and other gpio because there are no surprises when it comes to timing. It seems like something good to try out with the RaspberryPi, because of the GPIO and IOT capabilities.

Bundled with CustomPiOS you can build your customized realtime-kernel device.

Features

  • Both armv6 and arm v7 are supported! Aka all versions of RaspberryPi to date!
  • 4.9.52-rt37-v7 with PREEMPT kernel
  • Easy way to set up the network using realtimepi_wpa_supplicant.txt in the boot partition

Steps to install

  1. Download the image here
  2. Unzip and flash it to an SD card (small enough to fit a 2GB card)
  3. Open newly flashed image and edit two files, one for the wifi, and one for the bot token:
  4. Put in realtimepi-wpa-supplicant.txt your wifi address (skip if using Ethernet cable). Here is how it should look:
    wifi

You can test the realtime kernel is enabled, by running in the commandline

uname -a

You should see something like this, note PREEMPT RT which indicates its realtime:

 Linux realtimepi 4.9.52-rt37 #1 PREEMPT RT Fri Oct 6 22:29:28 UTC 2017 armv6l GNU/Linux

The line should  look a little different for armv7

I am not an expert with actually building realtime systems, so input on how it preforms, and examples would be appreciated!

 

How to reuse your old Raspberry Pi as a Telegram-controlled Alarm Clock – AlarmPi August 14, 2017

Posted by GuySoft in diy, Electronics, open source, programming, python, Uncategorized.
Tags: , , ,
add a comment
RaspberryPi Alarm clock

RaspberryPi alarm clock

Hey all,

So do you have a RaspberryPi not doing anything at home? Got that 2GB class 4 SD card that you just don’t know what to do with it? Well this guide is for you! It will let you turn your Pi in to an IOT alarm clock, no code, no complicated commands, just flash, edit two text files and you are good to go. The alarm clock is controlled from Telegram, so you can set it and turn it off from your smartphone. I find that usually using my phone wakes me up. So it’s useful for me. You can also edit the alarm and use any mp3 file you want.
The code is all available in github. AlarmBot is the Telegram Bot. An AlarmPi is the distro (built with CustomPiOS yet again). (more…)

ElectricSheepPi – Use your spare RaspberryPi to run evolving digital art! July 18, 2017

Posted by GuySoft in open source, programming.
Tags: , , , ,
add a comment
Electric Sheep running on a RaspberryPi

Electric Sheep running on a Raspberry Pi

Hey all,
So its been a while since I had time to release something fun. After developing CustomPiOS I thought I might write something to demonstrate how easy it is to make your own RaspberryPi distribution with it. So I made one that runs Electric Sheep on boot. Its called ElectricSheepPi.
Electric Sheep is a collaborative abstract artwork that keeps evolving as you vote for “sheep”. So it makes nice visuals and is great to play on a spare screen and Pi. Raspberrypi 2 works, Raspberrypi 3 is recommended for smooth visuals. You can see examples of the visuals on youtube.

To run it

  1. Download the image
  2. Flash it like any distro
  3. set up wifi, set your wifi settings with the file electricsheep-network.txt or electricsheep-wpa-supplicant.txt.
  4. Plug to HDMI display, internet and boot

Its easy to write a custom distro with CustomPiOS!

To write I had to write a module for CustomPiOS, it was just 32 lines mostly copied from the electric sheep install manual. To make stuff start on boot I used the gui module which lets you start any gui application full screen at boot, that’s 2 lines in the config file.

Thank you Doc’s Tech for hosting the image yet again!

FullPageOS – Out-Of-The-Box Kiosk mode for the RaspberryPi October 17, 2015

Posted by GuySoft in linux, open source, programming.
Tags: , , , , ,
45 comments
FullPageOS

FullPageOS

Hey all,

Today I am announcing a RaspberryPi operating system that addresses a small need we have – Get the RaspberryPi to display a webpage on full screen with no hassle.
The OS is called FullPageOS. And you can download it here.

Why I built it

A friend of mine, Tailor Vijay wanted something to stream video and add titles to it. Also I was looking for a way to start the RaspberryPi with a browser on full screen for a stats screen at work, and apparently the only thing available is complex guides that only partly work on today’s RaspberryPi.

So what I did last weekend is build a distro based off the code of OctoPi, the 3D printer operating system I built. All this distro does is start Chromium at boot on full screen, with a URL of your choice. The url can be changed conveniently from a text file on the /boot FAT folder. So all you have to do is set the wifi and url via text files, boot, and voilà!
Among the minor tweaking is the elusive setting of disabling the screen from blanking.

How to set it up

What’s nice about FullPageOS is that its simple, no need to install packages, just flash it like any distro, set your wifi and URL settings and boot.

  1. Open the FAT filesystem that is mounted as /boot
    on the pi
  2. Set the URL you want in the file fullpageos.txt
  3. If you need to set up wifi, set your wifi settings with the file fullpageos-network.txt or any way you want are used to on the RaspberryPI
  4. Plug to HDMI display, internet and boot

(more…)

OctoPi version 0.6 – Control your 3D printer securely over the internet August 26, 2013

Posted by GuySoft in diy, Electronics, Hamakor, ITU, linux, open source, programming.
Tags: , , , ,
24 comments
OctoPi new logo

OctoPi new logo

Hey all,

OctoPi has got a lot of support, and it has been great to see people are adopting it.

I have released a new version of OctoPi, which has the following new features:

  • Support for both Raspberry Pi camera and webcam. Depending on which you plug to the Pi (Thanks to Gina)
  • New version of OctoPrint with ACL support
  • OctoPrint now runs on HTTPS using HAProxy, allowing secure connection to your printer over the internet

Also, we had to change the logo due to it being the Raspberry Pi foundation trademark. Thanks for everyone on the google plus discussion (especially Janina).

Download the image here

Source code and project management is on github here

I will note it was pretty nice get in to this release PiCam support, since I have no camera it required collaboration of both Gina and me, meaning we have a distro now that probably can cope with more hardware than you would have in your average personal configuration.

Also thanks Matvin for the storage, and we also have another mirror lined up in case of a overload, which happened last time.

Enjoy everyone,

Guy

OctoPi – 3D Printer Web Server Distribution for the Raspberry Pi August 4, 2013

Posted by GuySoft in diy, Electronics, Hamakor, ITU, linux, open source, programming.
Tags: , , , , , ,
27 comments
OctoPi logoOctoPi logo

OctoPi logo

Update2: New mirror opened after Dropbox suspended my public links due to traffic. Download the image here.

Update: Dropbox have suspended my Public links due to “extreme traffic activity” so in a few hours I should be syncing the image to other mirrors. Other hosting would be appreciated!

Hey all,

I am happy to say that I am a backer of the Rigidbot 3D printer, (which you can pre-order already), I am expecting it to arrive in August. In the meantime, I have ordered a Raspberry Pi to play with and started visiting a local maker community known as XLN.

This led me to find a really cool project called OctoPrint, which lets you control 3D printers using a Raspberry Pi over a web interface, however people were not installing it on their Pis because there was no out-of-the-box solution. Today I am happy to announce that a solution is here! I give you Octoprint + Rapberry Pi = OctoPi. A raspberry Pi distribution which runs OctoPrint out of the box, with support for time-lapse video on webcams (there is also an experiential version in the works that supports streaming from a raspberry Pi camera).

Just dd the image on to an sd card, put the sd card in your Pi, boot it and connect to the network and printer, then point your browser to http://octopi.local and you have a fully functional 3D printer server! Plug in a webcam and can also make time-lapse videos. Just as simple as that. More details for windows users can be found on OctoPrint’s download page.

The OctoPi image can be downloaded here.

The sources are available on github, and could also serve as a framework to automatically build other Raspbian-based Raspberry Pi distributions.

Pull requests, forks and issue reports are welcome. Also it would be helpful if someone could help me mirroring, since currently the images are hosted on my Dropbox account.

Thanks to Gina, the developer of OctoPrint, for such a great software! PlugWash on #raspbian for the build tips and Richard Mitchell for the last touches to OctoPi’s logo.

Share and enjoy,

Guy

SvxlinkWrapper – Wrapper for SvxLink to provide additional functionally such as QSO logging and auto-connect May 17, 2012

Posted by GuySoft in Hamakor, ITU, linux, open source, programming, python.
Tags: , , , ,
9 comments

Hey all,

A short post to announce a small piece of software I released today on github for the ham radio people.
I give you SvxlinkWrapper, this wrapper sits on top of Svxlink‘s stdout and stdin and processes it with python. Making it easy to add more advance features to Svxlinik. Since Svxlink is written in C++ and takes a while to compile, this wrapper really speeds up development. Furthermore, it uses straight.plugin making its simple to write more modules by extending SvxlinkwrapperModule and placing it in the modules folder.

Currently the to modules that SvxlinkWrapper has are for auto-connect to Echolink nodes on startup and another for a QSO logger for Echolink connections. There is also a module that should let you send commands over the Echolink chat, if you extend it. This lets me open and close repeater connections directly from the Echolink chat box.

Thats it for today, now that I have more free time, I hope to publish more things, 73

Echolink Node Native on Linux with Svxlink, and a Cheap PTT Hardware Interface August 8, 2011

Posted by GuySoft in Crictor, diy, Electronics, Hamakor, ITU, linux, open source, programming, wireless.
Tags: , , , , , , , , ,
10 comments

The Jerusalem Echolink Node

The Jerusalem Echolink Node (4Z7GAI-R)

Hey all,

I recently got my amateur HAM Radio license from the Israel ministry of communication. My call sign is 4Z7GAI.

I have been working on getting an Echolink node running on the Jerusalem repeater using Linux. Echolink is a closed proprietary software that lets you connect ham radios to one another and key them across the Internet. Luckily someone wrote a FOSS program called Svxlink, which lets you connect to the Echolink network on Linux., A remote radio control with an echolink server, svxlink-server and an Echolink graphical client, Qtel. I am going to explain in this post how to get svxlink compiled and working (compiling is the hard part). I will also giving out here an Ubuntu package for the lazy ones among you.

I will also add a small section on the physical connection to the radio, an old Icom IC-02AT from the 80s (around my age). (more…)

TEDding from the car – gPodder video Plugin for Rockbox April 7, 2011

Posted by GuySoft in Crictor, diy, Electronics, ipod, ITU, linux, open source, podcast, programming, python.
Tags: , , , , , , , , , ,
11 comments
TEDing from the car

TEDing from the car

Hey all,
After a few weeks of bouncing emails with Thomas Perl I am happy to announce that we have a working plugin for his wonderful podcast application called gPodder. With this plugin installed, any mp4 video podcast that is downloaded with gPodder is automatically converted to a format playable by rockbox MPEG player plugin. Effectively meaning seamless sync of video podcasts to any rockbox enabled device. I am specifically using the Sansa fuze player, but just changing the screen resolution at the top of the plugin should make it work with any other rockbox device, and with the right screen size. The final product for me of all this technical stuff is that I can listen to TED lectures in the car. Or using the verb was coined by my friend Uzair “TEDding” from my car.

How to Install

  • First you should have gPodder installed (available also as “apt-get install gpodder” or any other distribution install equivalent).
  • Second you will need these packages installed too:
     apt-get install python-kaa-metadata  ffmpeg python-dbus
  • Now all that is left is to copy this script to
    mkdir -p ~/.config/gpodder/hooks/
    cp rockbox_mp4_convert.py ~/.config/gpodder/hooks/
  • If your are using a different player from the Sansa Fuse, modify the first lines to your screen resolution:
    DEFAULT_DEVICE_WIDTH = 224.0
    DEFAULT_DEVICE_HEIGHT = 176.0

    make sure to include the .0 at the end.

  • Thats it! Now each time video is download, for example from the TEDTalks Video Podcast it would be converted on arrival, and relinked as the file to be synced.

As usual, I would love to hear feedback from users and suggestions.

(more…)

Build your own Free SMS to Twitter gateway with open source tools and cheap hardware March 27, 2011

Posted by GuySoft in Crictor, diy, Electronics, Hamakor, IGF, ITU, linux, open source, programming, python.
Tags: , , , , , , , ,
21 comments
SMS Twitter Gateway

SMS Twitter Gateway logo

Hey all,

I am releasing here set of instructions and source that will enable anyone to set up a phone number, that if you SMS it, will post your massage on to your own twitter account. This service is called “Twiter SMS Gate”. The service handles multiple users, and should be easily modified to support other services like statusnet (and with a bit more code maybe even other social networks). The SMS hardware required is any cheap cellphone that can work with gammu-smsd (mine is a fake Nokia from India). Twiter SMS Gate also lets users easily register to it with their own cellphone.

I hope that people that like this idea would start hosting more SMS gates, as we create a wide network of those around the world. SMS Twitter Gate-IL , The Israeli Gate, has been running for a few weeks now and even got covered in the local media here.

The source is written in Python, which includes the phone hardware hooks, webserver, twitter client and database access.

Here is the cellphone used to run my server, just to show you how simple it is to do this, no super-expensive hardware required! (server is also my personal Linux-running PC:

Fake Nokia Cellphone acting as a dedicated SMS server

Fake Nokia Cellphone acting as a dedicated SMS server

If you have any kind of difficulty setting this up, please give me feedback, so we can make it as easy as possible.