On safari with Raspberry Pi.

Secondary School Raspberry Pi Curriculum

planetsedge:

This has been 10-months in the works. It’s not explict maybe until the enrichment reading, but this is for a Raspi-based computing program for students writing or reading below grade level as a result of language-based learning differences.

Shoulda forked it: as Fall 2013 comes closer, I get more anxious without any district approval. So, I made it rely on a Parallel OS book so it complies with cisco’s IT 1.0 program. And I didn’t fork it first.


It’s on git and produced in rST. It’s a work in progress. Wanna collaborate? Please?

Source: planetsedge

The students want to commit to winning a blue Raspberry Pi from RSComponents this month. They’ve got strong ideas and can pull this off.

The students want to commit to winning a blue Raspberry Pi from RSComponents this month. They’ve got strong ideas and can pull this off.

Text

revisionthing:

For Ubuntu, Debian, Raspbian. For our alternate reality game, we needed to be able to stegnography images en masse. Raspberry Pi and steghide to the rescue. A few new bash features for students and me to work with this time (e.g. we played with until, began working with arrays, tried nested loops). If there are better ways, let us know. If we’ve done well, we’d like to know that as well. Have we?

#!/bin/bash
# until tomorrow ./stegged must exist &
# ./cover must exist & have images &
# ./hide must exist and have images
#TO DO: argument for verbose output
#TO DO: make hide/ and /cover variables that can be configured
#TO DO: license and README.md
#install argument to:
#apt-get update && apt-get install steghide
#move script to /usr/bin
#generate /etc/stegify.conf for variables
#and more

passphrase="this"
#pics=($(ls ./cover/)) #cover photos list - no longer used
hide=$(ls ./hide/) #content to hide list
hiding=0 #counter set
covers=0 #counter set
declare -a pics=($(ls ./cover)) #defines array for cover pics
#echo "Printing Array" #troubleshooting
#echo ${pics[*]} #troubleshooting
###Loop through to count pics and steg###
for pic in ${pics[*]}
do
    covers=$(($covers+1)) #count cover files
	#echo "cover file number $covers is $pic" #troubleshooting
done
#echo "Total cover picturs: $covers" #troubleshooting
i=1 #counter

for hideme in $hide #steg loop
do
        hiding=$(($hiding+1)) #count pics to hide
        #echo "file to hide $hiding is $hideme" #troubleshooting
	#echo "embed content=$hideme" #troubleshooting
	echo "covering $hideme with ./cover/${pics[$i]}"
		steghide embed \
		-cf "./cover/${pics[$i]}" \
		-ef "./hide/$hideme" \
		-sf "./stegged/${pics[$i]}-steg.jpg" \
		-p "$passphrase"
		#echo "${pic[$i]}-steg.jpg created" #troubleshooting
	i=$(($i+1))
done
#echo "total pictures hidden: $hiding" #troubleshooting


What do you think?

Source: revisionthing

Text

Creating #qr codes with #bash and #raspian is easy from the command line (apt-get install #qrencode. But bulk generation of qr code can be a bit mid numbing. So, together with advance technology students, we put together this bash script to create qr codes from a list of urls in a plain text file:

#!/bin/bash 
list="./url-list.txt" #variable called list is a file in the current directory
URLS=$(cat $list) #creates var called URLS from file
i=0 #new variable to iterete and increment
#loop
printf %s "$URLS" | while IFS= read -r line
do
    for url in $line
	do
		i=$(( $i + 1)) #increment
		echo "echo URL is $line" #troubleshooting
		qrencode -s 5 -m 5 -o "./qr/$i.png" "$url" #create qr and stuff in subfolder called qr w/ a number equal to #i
		echo "created ./qr/$i.png" #troubleshooting
		echo "total qr codes generated is $i"
	done
done

This is how we did for this adventure.

The Problem:

This doesn’t deliver out of the box. The url list needs a trailing blank line. Or \n.

Can some one show us the way to avoid that? We’re missing something simple. Probably much of this is unnecessary. Nevertheless, what’s the key to making this work without the terminal \n in url-list.txt?

Source: revisionthing

Text

How we’re doing it in the lab, anyway:

Install qemu

Create a target directory: such as Desktop/raspi-qemu

Make a nice swap image in the target directory:

qemu-img create -f raw $target/swap $swapsize

download this to the target directory:
http://xecdesign.com/downloads/linux-qemu/kernel-qemu

Download and unzip raspbian to the target directory (raspberrypi.org/downloads)

Then you can start emulating:

qemu-system-arm -kernel kernel-qemu -cpu arm1176 -m 256 -M versatilepb -no-reboot -serial stdio -append “root=/dev/sda2 panic=1” -hda ./$raspbian_img -hdb swap
 

But, that limits you to the 2gig extracted image. Not much room to do anything.

Here’s how we grow the .img file:

On Ubuntu, we use qemu-img resize $raspbian.img 7.8GB

We then sudo parted $raspbian.img

unit B

print (note the start block of partition 2; note the final block of the img (up))

delete partition 2

mkpart primary, ext4, start block from note, final block of img - 1 from note.

Then we start qemu with the modified img.

Then, within the emulated Pi, we resizefs /dev/sda2

We’ve scripted the process, more or less: https://github.com/ghoulmann/raspi-qemu

Text

Happy Retail Birthday

cyberneticsarenow:

The new Portable Raspberry Pi has been created by SK Pang Electronics and features a QWERTY keyboard complete with touchpad and it owns portable power pack, which has all been mounted on to a transparent base with a carrying handle.

 A break from our classroom dispatches for this ^

cyberneticsarenow:

The new Portable Raspberry Pi has been created by SK Pang Electronics and features a QWERTY keyboard complete with touchpad and it owns portable power pack, which has all been mounted on to a transparent base with a carrying handle.

 A break from our classroom dispatches for this ^

(via hackr)

Source: cyberneticsarenow

Text

Students this unit are remixing Raspbian so it serves a single purpose for a Raspberry Pi solving a real problem.

Once they’ve listed installed packages (pkg), they researched which they can do without. We’re not all sure we agree on the common purpose of the distro, we’re making a core similar to TurnKey Linux’s appliance core. A lot of crossreferencing. I’m keeping in mind the Raspbian Minimal images I’ve come across as we move forward.

Here’s how they’re starting out (build notes getting written along the way):

cd ~/
mkdir distro
sudo mkdir /mnt/img
wget .zip file from mirror
unzip raspbian.zip to ~/distro/raspbian.img
chmod 777 ~/distro/raspbian.img
parted, unit B, print, grab first block of partition 2 for notes.
 quit parted.
sudo mount -o loop,offset=numberyouwrotedown ~/distro/raspbian.img /mnt/img

From there, be sure to run raspi-config and take care of locale, keyboard, timezone or your package management will throw more errors.

After these steps, we found paring down raspbian to me easy with apt-get purge, apt-get clean, apt-get autoclean.

You’ll want at least an 8GB card.

Also, did try with qemu. No luck; loop wasn’t compiled into the kernel I was using.

Raspberry Pi Centered Curriculum

Added: literacy (science fiction, summary through political critique), nondominant and underrepresented contributors in STEM fields, digital media literacy, STEM current events, digital/new media theory.

Having difficulty with graduated algorithm objectives.

Collaborative format is on github: https://github.com/ghoulmann/cs-curriculum

Collaborators wanted. Here’s what’s happened so far: draft.

Collaborators wanted. Here’s what’s happened so far: draft.