BookBeaming: Difference between revisions
Danielfuhry (talk | contribs) |
No edit summary |
||
(8 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
[[category:projects]] |
|||
<discontinued project> [[User:Danielfuhry|Danielfuhry]] 21:29, 17 February 2009 (UTC) |
|||
: creator felt it would require reverse engineering or NDA... (but there are many ways to achieve this goal) |
|||
__TOC__ |
__TOC__ |
||
{{Olpcboxtop|toptext=[[{{PAGENAME}}|BookBeaming]]}} |
{{Olpcboxtop|toptext=[[{{PAGENAME}}|BookBeaming]]}} |
||
Line 10: | Line 15: | ||
===Status=== |
===Status=== |
||
The prototyp <s>works</s> with the [http://www.worldspace.com/howitworks/receivers/tongshidamb_r.html TONGSHI DAMB-R] Radio and the [http://www.firstvoiceint.org/How/Radio.html Africa Learning Channel]. |
The prototyp <s>works</s> with the [http://www.worldspace.com/howitworks/receivers/tongshidamb_r.html TONGSHI DAMB-R] Radio and the [http://www.firstvoiceint.org/How/Radio.html Africa Learning Channel]. |
||
As of 26.01.08 any active audio stream can be tapped and recorded. This was however not the original purpose. |
As of 26.01.08 any active audio stream can be tapped and recorded. This was however not the original purpose. |
||
Since January the prototyp is broken due to changes in the codewords used. Specifications appear to be nonpublic. |
Since January the prototyp is broken due to changes in the codewords used. Specifications appear to be nonpublic. |
||
===Goals=== |
===Goals=== |
||
Line 19: | Line 26: | ||
===Collaboration=== |
===Collaboration=== |
||
Sharing one satellite radio could bypass satellite radio shortage in an particular areas. |
Sharing one satellite radio could bypass satellite radio shortage in an particular areas. |
||
===other ideas=== |
===other ideas=== |
||
Some of the receivers are equipped with a FM transmitter. (frequencies 87.7, 88.1, 87.9, 107.5, 107.7, 107.9) |
Some of the receivers are equipped with a FM transmitter. (frequencies 87.7, 88.1, 87.9, 107.5, 107.7, 107.9) |
||
Line 47: | Line 55: | ||
except: |
except: |
||
return read(dh) |
return read(dh) |
||
return struct.pack(64*' |
return struct.pack(64*'B',*r) """ b before -128 <= number <= 127 now 08.03.2008 it's B 0 to 255""" |
||
if __name__=="__main__": |
if __name__=="__main__": |
||
device1=opendevice(0x174e, 0x5357) |
device1=opendevice(0x174e, 0x5357) |
Latest revision as of 07:54, 8 December 2009
<discontinued project> Danielfuhry 21:29, 17 February 2009 (UTC)
- creator felt it would require reverse engineering or NDA... (but there are many ways to achieve this goal)
Description & Goals
Summary
BookBeaming receives static content using a conventional World Space satellite radio.
Status
The prototyp works with the TONGSHI DAMB-R Radio and the Africa Learning Channel.
As of 26.01.08 any active audio stream can be tapped and recorded. This was however not the original purpose.
Since January the prototyp is broken due to changes in the codewords used. Specifications appear to be nonpublic.
Goals
Access to a wide range of content from the weather report to health care.available content (archive.org)
Collaboration
Sharing one satellite radio could bypass satellite radio shortage in an particular areas.
other ideas
Some of the receivers are equipped with a FM transmitter. (frequencies 87.7, 88.1, 87.9, 107.5, 107.7, 107.9) Not working on either battery or USB power. Othere issues signal is too weak (theoretically it could be possible to increase the signal strenght in a firmware or hardware modification)
example source code for audio
Records the current channel via usb. Requires pyusb. It is possible to use this for recording data transmissions. (data still needs to be reformated according to codewords)
import usb import struct def opendevice(idVendor, idProduct): devices=[] for b in usb.busses(): for d in b.devices: if d.idVendor==idVendor and d.idProduct==idProduct: devices.append(d) if len(devices)==1: device=devices[0] return device elif not devices: raise "Device not found" else: raise "More than one device found" def read(dh): try: r = dh.bulkRead(0x00000082,0x40,10) except: return read(dh) return struct.pack(64*'B',*r) """ b before -128 <= number <= 127 now 08.03.2008 it's B 0 to 255""" if __name__=="__main__": device1=opendevice(0x174e, 0x5357) dh=device1.open() dh.claimInterface(0) flob=open('out.mp3','wb') while 1==1: buffer1 = read(dh) buffer2 = read(dh) d = "".join([buffer1, buffer2]) #print repr(d) console out flob.write(d) fileobj.close()