Featured post

About the DCGLUG

images images (1)

DEVON AND CORNWALL GNU/LINUX USER GROUP


 

The Devon and Cornwall GNU/Linux User Group is for anyone who uses – or is interested in using – Free, Libre and Open Source Software. The group is made up of a wide range of people from home users to professionals and between us we have a wide range of experience and knowledge. Please feel free to join our discussion mailing list, or chat with us on IRC (chat). The Torbay meetings are now part of the Raspberry Pi jams as these are arranged by members.

Updates:

Global Hackathon

Global hackathon 12-14 Sep 2014

“united globally we hack a better world”

Geeklist #hack4good unites the world’s leading minds to build solutions to humanity’s greatest problems.

Uniting across every country of the world, we are comprised of software engineers, hackers, ui/ux designers, product developers, founders, thought leaders and civic-minded organisations.

We give products built at our hackathons perpetual life to create real impact in the world.

0.6: hack against catastrophic climate change.

 

 

Fab Lab Taster Courses

DEVON FAB LAB TASTER COURSES

** An Introduction to 3D Printing
------------------------------------------------------------
Saturday 16^th Aug - 11am , 1pm, 3pm.


**
An Introduction to Laser Engraving
------------------------------------------------------------
Saturday 23^rd Aug - 11am , 1pm, 3pm.


**
Printing Customised Cases and Covers
------------------------------------------------------------
Saturday 30^th Aug - 11am , 1pm, 3pm.


**
An Introduction to CNC Routing
------------------------------------------------------------
Saturday 6^th September - 11am , 1pm, 3pm.


**
An Introduction to Computerised Embroidery
------------------------------------------------------------
Saturday13^th September - 11am , 1pm, 3pm.


**
Bookings via our Eventbrite page:
http://fablabdevon.us8.list-manage.com/track/click?u=b8a10c99f56bd80ad9ba5aaa5&id=9846107b4b&e=2c61775a67

Web design course in Paignton

Centrepeace in paignton are offering a 2 day web design course,   covering HTML / CSS and Java Script,  please see their website for more information

http://centrepeace.org.uk/1/post/2014/07/learn-web-design-centrepeace.html

Download pdf poster below.

learn_web_design__centrepeace

codeclublogo

If you are under 11 then something similar could be offered as part of code club ,  Please get in touch with centre peace directly and mention code club.

 

Torios Project update

Reproduced from my personal website http://www.zleap.net

For those of you who are following my blog / twitter feed you will know that I am involved as Documentation lead of the Torios project.  Over the past weekend I made a big stride in this.

  • Added the screenshot for the Jwm window manager settings manager
  • Added a section on testing and included some instructions on how to test a virtual box vdi hard disk image
  • Added information on how to create a flash disk.

There is still some work to do on this but I am getting there and hopefully this information can be synchronised with the online wiki manual.

We are still in internal testing phase at the moment but we should hopefully be able to release a pubic pre-alpha very shortly after which we will be seeking more feedback from user testing, so if you are interested please sign up.

If you can help in other ways please get in touch with the project leaders, details can be found on the website.  Ideally you will have a launchpad account which you will need to enable to you sign up to the main discussion list as well as edit and contribute to bugs, blueprints etc.  If you need help please ask.

If you are unsure what launchpad is please go to the website here. Or visit the Torios launchpad project portal.

 

Notes on early testing in virtual box seem to suggest that having 256 mb of RAM provides a nice quick system.  As this is a replacement for Windows XP which is now end of life.

Latest news can be found here.

IRC (chat) meeting schedule can be found here,  don’t worry if you don’t have an irc client I have added a web based interface to the channel

INXI : System information and More

One of the nice things about hangong out on IRC and or with Linux user groups is you get to find out about all sorts of hidden gems.

INXI is one such gem. : https://code.google.com/p/inxi/

It is a full featured system information tool or as the website describes it “A newer, better system information script for irc, administration, and system troubleshooters.

i believe this is installed by default on Mint and a few others for xubuntu you need to install it

sudo apt-get install inxi should do it

As with all or a vast majority of Linux commands there is a man page

man inxi

so what can it do

Well , to get some basic system information up you can use the -Sx argument

$ sudo inxi -Sx
System:    Host: ER1401 Kernel: 3.13.0-30-generic i686 (32 bit, gcc: 4.8.2)
           Desktop: Xfce 4.11.6 (Gtk 2.24.23) Distro: Ubuntu 14.04 trusty

One of the more non system features is one that can give you info on local weather

inxi -xxxWTorquay,Uk
Weather:   Conditions: 70 F (21 C) - Partly Cloudy Wind: From the South at 16 MPH Humidity: 78%
           Pressure: 29.98 in (1015 mb) Location: Torquay (UK) Altitude: 0 ft 
           Time: August 5, 4:52 PM BST Observation Time: August 5, 4:20 PM BST

Which is useful you can also invoke this from IRC clients with

/exec -c inxi -xxxWTorquay,Uk

for example which then executes within IRC, (not all channels appreciate this)

One of the ideas of this program is to provide people with system information so they can help you

of course you can send out put to a file with

/exec -c inxi -xxxWTorquay,Uk > output.txt

Exeter Raspberry Pi jam

2nd August 2014, saw yet another pi jam take place in Exeter Library / Fab lab,  the 2 hour session seemed to be really busy. In the main fab lab there was a introduction to raspberry pi workshop where users were given an intro to the pi and had a chance to experiment with some electronic interfacing SAM_0240 The Library / fablab have some new raspberry pi model B+ for users SAM_0241 Bag of components from CPC ready for the work shop SAM_0244 This is a project from Mark evans, the display shows the Pis IP address SAM_0252 SAM_0253 Some of the creations by some of the younger visitors using scratch SAM_0254 And yes minecraft on the pi,  i think we managed to hack this enough to get the tnt blocks to explode with code rather than using redstone torches which are not available in MC Pi edition. SAM_0242 And bob made an appearance one of Tom Broughs many projects.  This is arduino based but that is not really important, anyone inspired to make their own Bob ask Tom for info :).

SAM_0248

 

Handy – Scratch controlled robot arm  (not the mini webcam)- issue with camera settings hence it is dark,

SAM_0203

Freddie (photo from a previous jam ) has now improved further.

 

So in all an excellent jam,  more of the same on Saturday 9th August in paignton,  we hope to see lots of people there :), and maybe we can look in to doing mini workshops at a future date.

 

Basic OS development with Visual Studio

Recently I came across an add-on for Visual Studio 2013 named Cosmos, which lets you use C# or Visual Basic to develop a fully independent OS. I have been working on one now for a couple of weeks. Sadly, Cosmos is still in early development stages, but it is still possible to make basic graphical OS’s. This post uses C#, but it is just as easy to use Visual Basic. My current code is:

using System;
using System.Collections.Generic;
using System.Text;
using Sys = Cosmos.System;
using Cosmos.Hardware;
using Cosmos.Hardware.BlockDevice;
 
namespace CosmosOS
{
    public class Kernel : Sys.Kernel
    {
        protected override void BeforeRun()
        {
            while (true)
            {
                Run();
            }
        }
 
        protected override void Run()
        {
            string input = Console.ReadLine();
            string input1 = input.ToLower();
            if (input1 == "shutdown" || input1 == "quit" || input1 == "exit") Shutdown();
            else if (input1 == "reboot" || input1 == "restart" || input1 == "reload") Reboot();
 
            else Console.WriteLine("Command \"" + input1 + "\" not recognized!");
        public void Shutdown()
        {
            this.Stop();
            Cosmos.Core.Bootstrap.CPU.Halt();
        }
        public void Reboot()
        {
 
        }
        public static void WriteData(byte[] aData, ulong block)
        {
            if (BlockDevice.Devices.Count > 0)
            {
                for (int i = 0; i < BlockDevice.Devices.Count; i++)
                {
                    var xDevice = BlockDevice.Devices[i];
                    if (xDevice is Partition)
                    {
                        xDevice.WriteBlock(block, 1, aData);
                    }
                }
 
            }
 
        }
        public static byte[] ReadData(ulong block)
        {
            byte[] aData = new byte[] { 1 };
            if (BlockDevice.Devices.Count > 0)
            {
                for (int i = 0; i < BlockDevice.Devices.Count; i++)
                {
                    var xDevice = BlockDevice.Devices[i];
                    if (xDevice is Partition)
                    {
                        aData = xDevice.NewBlockArray(1);
                        xDevice.ReadBlock(block, 1, aData);
                    }
                }
 
            }
            return aData;
        }
    }
}

Lets go over some of this code.

protected override void BeforeRun()
        {
            while (true)
            {
                Run();
            }
        }

This Run function is looped by default anyway, but it loops slightly faster when this code is put in BeforeRun.

 

protected override void Run()
        {
            string input = Console.ReadLine();
            string input1 = input.ToLower();
            if (input1 == "shutdown" || input1 == "quit" || input1 == "exit") Shutdown();
            else if (input1 == "reboot" || input1 == "restart" || input1 == "reload") Reboot();
 
            else Console.WriteLine("Command \"" + input1 + "\" not recognized!");

This is fairly trivial code for a command-line OS, simple input.

 

public void Shutdown()
        {
            this.Stop();
            Cosmos.Core.Bootstrap.CPU.Halt();
        }
        public void Reboot()
        {
 
        }

This is my own shutdown code. I have yet to figure out reboot, though.

 

public static void WriteData(byte[] aData, ulong block)
        {
            if (BlockDevice.Devices.Count > 0)
            {
                for (int i = 0; i < BlockDevice.Devices.Count; i++)
                {
                    var xDevice = BlockDevice.Devices[i];
                    if (xDevice is Partition)
                    {
                        xDevice.WriteBlock(block, 1, aData);
                    }
                }
 
            }
 
        }
        public static byte[] ReadData(ulong block)
        {
            byte[] aData = new byte[] { 1 };
            if (BlockDevice.Devices.Count > 0)
            {
                for (int i = 0; i < BlockDevice.Devices.Count; i++)
                {
                    var xDevice = BlockDevice.Devices[i];
                    if (xDevice is Partition)
                    {
                        aData = xDevice.NewBlockArray(1);
                        xDevice.ReadBlock(block, 1, aData);
                    }
                }
 
            }
            return aData;
        }

I got this code from a forum and modified it a little to make it work – it writes arrays of bytes to the hard disk. Sadly the built-in FAT fileystem can currently only read files, so you will have to make your own.

 

This is a fun tool to just play around with, although it is extremely limited at the moment.

Windows 3.1 in Dosbox

Last night I decided to have a go at seeing if Windows 3.1 would run in dosbox. Surprisingly it does, and pretty quick too, you need to download the dos mouse driver and run that before starting windows but other than that it works.  The install was pretty quick too.

DOSBOX

Windows 3.1 running in DOSbox

I copied the folder i have all my dosbox items in over to the pi and tried this on that,  you need to run dosbox through x in order for the keyboard to work properly (or it seems by default you do) so this slows things down,  dosbox will run without X but the keyboard mapping was seriously messed up,

I guess this being a more proof of concept idea as I am not really sure what I would need windows 3.1 for,  mind you there was an excellent periodic table program with decay trees for elements which was pretty good.   Kinda out of date now as since then we have discovered and named more elements, and named beyond their initial Latin numerical names.