Nov 28, 2013

Android Wifi Mesh - Serval

(Serval Project) ... It is a free and open-source app for Android 2.2 “Froyo” and later, under continuous development. The latest official release of the Serval Mesh app is freely available from Google Play.

Serval Mesh allows people to make voice calls, send text messages and share files with other Serval Mesh users, without requiring infrastructure like satellites, cell phone towers, Wi-Fi hot spots, or radio repeaters. The primary motivation is to provide resilient communications during crisis and disaster situations, when vulnerable infrastructure like phone cell towers and mains electricity are cut off. Serval Mesh is also useful for remote communities who lack conventional telephone services, small organisations who need an internal telephone system, and dissidents in oppressive countries that deny or monitor their citizens' telecommunications.

Serval Mesh uses an Android device's Wi-Fi in Ad Hoc mode to communicate directly with other devices within range. To do so requires root permission on the Android device. On devices where root permission is not available, Serval Mesh can communicate using Wi-Fi in the normal Client mode, which requires an Access Point within range. Serval Mesh can use standard Internet connections such as 3G mobile data, home/office Wi-Fi router-modems, and wired networks (USB or Ethernet) to communicate with other devices.

Read more: http://developer.servalproject.org/dokuwiki/doku.php?id=content:servalmesh:main_page

How AM and FM Works

Nov 24, 2013

Hello World! Processing


processing.org

Arduino - Oscilloscope

(instructables) ... First, download processing. It's free Click here to download. You don't need to install anything, It runs like the Arduino IDE.
Now upload this code into your Arduino 
After Run this code in Processing IDE



And then you just need to connect the Arduino analog pin 0 to the signal you want to read.
And It's done!

Read more: http://www.instructables.com/id/Arduino-Oscilloscope...



Another one via Open-electronics.org


Project Summary:
We have designed an Oscilloscope using PC and Arduino Board. The signal is first of all fed to the Arduino Board where the analog signal is converted to a digital signal by the ADC which is then serially outputted to the PC and is read by the MATLAB software via the COM ports. Here the signal is read in the form of digital data but then is converted to analog one by using the resolution of the ADC used by the Arduino Board. The MATLAB software was then used to plot the signals...




Full project in PDF: DESIGNING A PC OSCILLOSCOPE
Read more: http://www.open-electronics.org/guest_projects/a-pc-and-an-arduino-heres-your-diy-oscilloscope

Nov 16, 2013

Free Online Circuit Simulators


http://www.indiabix.com/electronics-circuits/
http://www.falstad.com/circuit/
Download it, so you can save your circuits: http://www.falstad.com/circuit/circuit.zip




Free at a limited level: http://www.docircuits.com/

Free circuit simulators @ wikipedia:
http://en.wikipedia.org/wiki/List_of_free_electronics_circuit_simulators

Shift registers - how to multiply the i/o lines of your microcontroller


PINS 1-7, 15 Q0 " Q7 Output Pins
PIN 8 GND Ground, Vss
PIN 9 Q7" Serial Out
PIN 10 MR Master Reclear, active low
PIN 11 SH_CP Shift register clock pin
PIN 12 ST_CP Storage register clock pin (latch pin)
PIN 13 OE Output enable, active low
PIN 14 DS Serial data input
PIN 16 Vcc Positive supply voltage

Shifting Out & the 595 chip

At sometime or another you may run out of pins on your Arduino board and need to extend it with shift registers. This example is based on the 74HC595. The datasheet refers to the 74HC595 as an "8-bit serial-in, serial or parallel-out shift register with output latches; 3-state." In other words, you can use it to control 8 outputs at a time while only taking up a few pins on your microcontroller. You can link multiple registers together to extend your output even more. (Users may also wish to search for other driver chips with "595" or "596" in their part numbers, there are many. The STP16C596 for example will drive 16 LED's and eliminates the series resistors with built-in constant current sources.)

Shift register @ Wikipedia
In digital circuits, a shift register is a cascade of flip flops, sharing the same clock, in which the output of each flip-flop is connected to the "data" input of the next flip-flop in the chain, resulting in a circuit that shifts by one position the "bit array" stored in it, shifting in the data present at its input and shifting out the last bit in the array, at each transition of the clock input. More generally, a shift register may be multidimensional, such that its "data in" and stage outputs are themselves bit arrays: this is implemented simply by running several shift registers of the same bit-length in parallel.
Shift registers can have both parallel and serial inputs and outputs. These are often configured as serial-in, parallel-out (SIPO) or as parallel-in, serial-out (PISO). There are also types that have both serial and parallel input and types with serial and parallel output. There are also bi-directional shift registers which allow shifting in both directions: L→R or R→L. The serial input and last output of a shift register can also be connected to create a circular shift register.

Read more: http://en.wikipedia.org/wiki/Shift_register

Oct 24, 2013

Minimal Arduino-compatible circuit with ATMega328

(Hack a Day) ... It’s a very, very minimal Arduino-compatible circuit meant to control all the pins on an ATMega328. The components only cost about £1.40 ($2.25 USD) when bought in volume, making it perfect for teaching a class or workshop on the Arduino and giving each student a circuit to take home.

The basic circuit is just an ATMega328 – the same microcontroller used in the Arduino Uno – with a few caps, resistors, and a 16 MHz crystal. It’s a very bare-bones system, but once built and programmed provides all the functionality of a $25 Arduino.

Like all microcontroller platforms, there’s the chicken-and-egg problem of actually programming the device. The Shrimp team is using a CP2102 USB to UART bridge to program each shrimp. Not an inexpensive part, but it is of course possible to only have one serial bridge for each workshop.

Read more:  




Oct 17, 2013

Raspbian, Yocto on Qemu-arm - Raspberry Pi emulation on Linux

Raspberry Pi emulation on Linux
X works fine, ioquake builds, even some applications built generally for ARM11 architecture may work, but don't expect 3D. No OpenGL support, also, although vchiq_test shows like if it's ok, there's no /dev/vchiq present, but if you insist, here's a Qemu fork with OpenGLES support:
or you can try MesaGL as a workaround solution.

So, the actual command line is*:
qemu-system-arm -kernel kernel-qemu -cpu arm1176 -m 256 -M versatilepb -no-reboot -serial stdio -append "root=/dev/sda2" -hda 2013-09-25-wheezy-raspbian.img

You'll need a kernel and an os image, download:
kernel-qemu: http://xecdesign.com/downloads/linux-qemu/kernel-qemu
images: http://www.raspberrypi.org/downloads

Note, root is /dev/sda2 because there's actually 2 partitions in the image, one FAT32 and a Linux, the latter will be our root filesystem. It may work with other distributions, with the Yocto minimal image and the Minibian for sure, change image name accordingly;

Yocto Minimal 12Mb http://www.cnx-software.com/2013/07/05/12mb-minimal-image-for-raspberry-pi-using-the-yocto-project/

Minibian: http://sourceforge.net/projects/minibian/files/2013-10-13-wheezy-minibian.tar.gz/download

also Raspbian Minimal http://plugwash.raspbian.org/images/



Read more:

HOWTO: Virtual Raspbian on Qemu in Ubuntu Linux 12.10 
*with redirected ssh
http://www.raspberrypi.org/phpBB3/viewtopic.php?f=29&t=37386


12MB Minimal Image for Raspberry Pi using the Yocto Project

QEMU – Emulating Raspberry Pi the easy way (Linux or Windows!)
http://xecdesign.com/qemu-emulating-raspberry-pi-the-easy-way/

MINIBIAN: MINImal raspBIAN image for Raspberry Pi
http://minibianpi.wordpress.com/

Sep 26, 2013

Open Source GSM Base Station

OpenBTS (Open Base Transceiver Station) is a software-based GSM access point, allowing standard GSM-compatible mobile phones to be used as SIP endpoints in Voice over IP (VOIP) networks. OpenBTS is an open source software that was developed and is maintained by Range Networks. The public release of OpenBTS is notable for being the first free software implementation of the lower three layers of the industry-standard GSM protocol stack. It is written in C++ and released as free software under the terms of version 3 of the GNU Affero General Public License (AGPL). Read more: http://en.wikipedia.org/wiki/OpenBTS

OpenBTS.org - http://openbts.org/

Gnuradio Wiki Subspace
http://gnuradio.org/redmine/projects/gnuradio/wiki/OpenBTS 

OpenBTS on Raspberry PI
http://www.raspberrypi.org/phpBB3/viewtopic.php?t=36400&p=396624

OpenBTS on Sourceforge, developers official hompage: http://openbts.sourceforge.net/ 


Phones at Burning Man: Can you hear me now?
http://news.cnet.com/8301-27080_3-10348913-245.html



OpenBSC

OpenBSC is a project aiming to create a Free Software, (A)GPL-licensed software implementations for the GSM/3GPP protocol stacks and elements.

This is a project aiming to create a Free Software, (A)GPL-licensed software implementations for the GSM/3GPP protocol stacks and elements.
We have started with an A-bis (plus BSC/MSC/HLR) implementation for experimentation and research purpose, but have since moved way beyond that.
What this means: OpenBSC is not just a standard BSC, but a GSM network in a box software, implementing the minimal necessary parts to build a small, self-contained GSM network.

OpenBSC includes functionality normally performed by the following components of a GSM network: BSC (Base Station Controller), MSC (Mobile Switching Center), HLR (Home Location Register), AuC (Authentication Center), VLR (Visitor Location Register), EIR (Equipment Identity Register).

In addition, the Osmocom project also develops and maintains the osmo-sgsn and OpenGGSN programs for adding GPRS/EDGE capabilities.

Read more: http://openbsc.osmocom.org/trac/

25c3: Running your own GSM network

This presentation will mark the first public release of a new GPL licensed Free Software project implementing the GSM fixed network, including the various minimal necessary functionality of BSC, MSC, HLR. It will introduce the respective standards and protocols, as well as a short demonstration of an actual phone call between two mobile phones registered to the base station. Read more: http://youtu.be/e_9hPRF5fzA


 

RTLSDR - Software Defined Radio



(thepowerbase.com) The last few months have seen an explosion of activity in the field of Software Defined Radio (SDR), after it was discovered that cheap USB TV tuners based on the Realtek RTL2832U chip could be dialed into frequencies well outside their advertised ranges. What was designed and sold as a simple device for watching TV on your computer could be turned into a radio capable of receiving anything between 64 MHz to 1700 MHz with open source software.
Now, anyone with about $20 USD to spare can tune into everything from police and fire transmissions to the International Space Station.

Tuner Hardware

Before you can start exploring the airwaves, you’ll need a USB tuner supported by RTL-SDR, the software used to unlock the full potential of the Realtek RTL2832U chip. For best results, you’ll also want to get one that uses the Elonics E4000 tuner, as that will give you the broadest frequency response. The RTL-SDR project maintains a short compatibility list which can help narrow things down a bit:
VID PID tuner device name
0x0bda 0×2832 all of them Generic RTL2832U (e.g. hama nano)
0x0bda 0×2838 E4000 ezcap USB 2.0 DVB-T/DAB/FM dongle
0x0ccd 0x00a9 FC0012 Terratec Cinergy T Stick Black (rev 1)
0x0ccd 0x00b3 FC0013 Terratec NOXON DAB/DAB+ USB dongle (rev 1)
0x0ccd 0x00d3 E4000 Terratec Cinergy T Stick RC (Rev.3)
0x0ccd 0x00e0 E4000 Terratec NOXON DAB/DAB+ USB dongle (rev 2)
0x185b 0×0620 E4000 Compro Videomate U620F
0x185b 0×0650 E4000 Compro Videomate U650F
0x1f4d 0xb803 FC0012 GTek T803
0x1f4d 0xc803 FC0012 Lifeview LV5TDeluxe
0x1b80 0xd3a4 FC0013 Twintech UT-40
0x1d19 0×1101 FC2580 Dexatek DK DVB-T Dongle (Logilink VG0002A)
0x1d19 0×1102 ? Dexatek DK DVB-T Dongle (MSI DigiVox? mini II V3.0)
0x1d19 0×1103 FC2580 Dexatek Technology Ltd. DK 5217 DVB-T Dongle
0×0458 0x707f ? Genius TVGo DVB-T03 USB dongle (Ver. B)
0x1b80 0xd393 FC0012 GIGABYTE GT-U7300
0x1b80 0xd394 ? DIKOM USB-DVBT HD
0x1b80 0xd395 FC0012 Peak 102569AGPK
0x1b80 0xd39d FC0012 SVEON STV20 DVB-T USB & FM
Tuner Frequency range
Elonics E4000 52 – 2200 MHz with a gap from 1100 MHz to 1250 MHz (varies)
Rafael Micro R820T 24 – 1766 MHz
Fitipower FC0013 22 – 1100 MHz (FC0013B/C, FC0013G has a separate L-band input, which is unconnected on most sticks)
Fitipower FC0012 22 – 948.6 MHz
FCI FC2580 146 – 308 MHz and 438 – 924 MHz (gap in between)

Read more : http://www.thepowerbase.com/2012/06/getting-started-with-rtl-sdr/

Links

http://sdr.osmocom.org/trac/wiki/rtl-sdr - good place to start
http://www.rtlsdr.com/
http://gnuradio.org/
http://kmkeen.com/rtl-demod-guide/index.html

http://sdrsharp.com/


http://sourceforge.net/projects/gqrx/










Those USB TV tuners used for SDR can also grab GPS data
http://hackaday.com/2012/04/13/those-usb-tv-tuners-used-for-sdr-can-also-grab-gps-data/

Real time GPS decoding with software defined radio
http://hackaday.com/2012/08/19/real-time-gps-decoding-with-software-defined-radio/

Meshnet

Meshnet activists rebuilding the internet from scratch

(newscientist.com) Worried about the NSA snooping on your email? Maybe you need to start creating your own personal internet

(...) Across the US, from Maryland to Seattle, work is underway to construct user-owned wireless networks that will permit secure communication without surveillance or any centralised organisation. They are known as meshnets and ultimately, if their designers get their way, they will span the country.

Read more.: http://www.newscientist.com/article/mg21929294.500-meshnet-activists-rebuilding-the-internet-from-scratch.html#.Ugdkc6zI_-s


FunkFeuer

FunkFeuer is a free, experimental network in Vienna, Graz, in parts of Weinviertel (NÖ) and Bad Ischl. It is build and maintained by computer enthusiasts. This project is non commercial.
http://www.funkfeuer.at/index.php?id=42&L=1


Athens Wireless Metropolitan Network

Athens Wireless Metropolitan Network (AWMN) is a grassroots wireless community, taking advantage of new, state of the art wireless technologies, to connect people and services. The network comprises 1120 backbone nodes (as of Aug, 2010) and more than 2900 client computers connect to it. More than 9,000 people have stated their intention to join AWMN in the near future.
http://en.wikipedia.org/wiki/Athens_Wireless_Metropolitan_Network
http://awmn.net/content.php



Broadband-Hamnet

Broadband-Hamnet™ (formerly called HSMM-Mesh™) is a high speed, self discovering, self configuring, fault tolerant, wireless computer network that can run for days from a fully charged car battery, or indefinitely with the addition of a modest solar array or other supplemental power source. The focus is on emergency communications.

In its current form it is built using the Linksys WRT54G/GL/GS wireless routers and operates on channels 1-6 of the 2.4GHz ISM band, which overlaps with the upper portion of the 13cm amateur radio band. Other platforms and bands are in development at this time. Next will be Ubiquiti equipment with others supported as development resources permit.

OLSR is used for auto linking of the mesh node radios.
OpenWRT firmware tools are used for firmware development.
Broadband-Hamnet™ is currently being designed, developed and deployed as an amateur radio broadband communications system. It originated in Austin, Texas but has spread all across the USA and many other countries around the world.
http://www.hsmm-mesh.org/




Raspberry wifi HSMM-MESH node Emergency Cloud Server 
http://youtu.be/OMYrFmuclOQ
 

 

Mobile Mesh Networks with the Raspberry Pi
http://www.ericerfanian.com/mobile-mesh-networks-with-the-raspberry-pi-part-1/


Mesh Networks @ P2P Foundation
http://p2pfoundation.net/Mesh_Networks