Add support for the Boeye Digital Reader .

This commit is contained in:
ken@szboeye.com 2011-05-03 14:24:21 +08:00
parent 5bf153338b
commit 25a4310fb9
4 changed files with 147 additions and 2 deletions

View File

@ -613,6 +613,7 @@ from calibre.devices.misc import PALMPRE, AVANT, SWEEX, PDNOVEL, \
from calibre.devices.folder_device.driver import FOLDER_DEVICE_FOR_CONFIG
from calibre.devices.kobo.driver import KOBO
from calibre.devices.bambook.driver import BAMBOOK
from calibre.devices.boeye.driver import BOEYE_BEX, BOEYE_BDX
from calibre.library.catalog import CSV_XML, EPUB_MOBI, BIBTEX
from calibre.ebooks.epub.fix.unmanifested import Unmanifested
@ -743,6 +744,8 @@ plugins += [
EEEREADER,
NEXTBOOK,
ITUNES,
BOEYE_BEX,
BOEYE_BDX,
USER_DEFINED,
]
plugins += [x for x in list(locals().values()) if isinstance(x, type) and \

View File

@ -214,11 +214,51 @@ class NookInput(InputProfile):
dpi = 167
fbase = 16
fsizes = [12, 12, 14, 16, 18, 20, 22, 24]
class BoeyeG5Input(InputProfile):
author = 'Ken'
name = 'Boeye Digital Reader G5'
short_name = 'boeyeg5'
description = _('This profile is intended for the Boeye G5.')
# Screen size is a best guess
screen_size = (600, 800)
dpi = 200
fbase = 16
fsizes = [12, 14, 16, 18, 20, 22, 24]
class BoeyeG6Input(InputProfile):
author = 'Ken'
name = 'Boeye Digital Reader G6'
short_name = 'boeyeg6'
description = _('This profile is intended for the Boeye G6.')
# Screen size is a best guess
screen_size = (600, 800)
dpi = 166.66
fbase = 16
fsizes = [12, 14, 16, 18, 20, 22, 24]
class BoeyeG10Input(InputProfile):
author = 'Ken'
name = 'Boeye Digital Reader G10'
short_name = 'boeyeg10'
description = _('This profile is intended for the Boeye G10.')
# Screen size is a best guess
screen_size = (825, 1200)
dpi = 150
fbase = 16
fsizes = [12, 14, 16, 18, 20, 22, 24]
input_profiles = [InputProfile, SonyReaderInput, SonyReader300Input,
SonyReader900Input, MSReaderInput, MobipocketInput, HanlinV3Input,
HanlinV5Input, CybookG3Input, CybookOpusInput, KindleInput, IlliadInput,
IRexDR1000Input, IRexDR800Input, NookInput]
IRexDR1000Input, IRexDR800Input, NookInput, BoeyeG5Input, BoeyeG6Input, BoeyeG10Input]
input_profiles.sort(cmp=lambda x,y:cmp(x.name.lower(), y.name.lower()))
@ -730,6 +770,50 @@ class BambookOutput(OutputProfile):
dpi = 168.451
fbase = 12
fsizes = [10, 12, 14, 16]
class BoeyeG5Output(OutputProfile):
author = 'Ken'
name = 'Boeye Digital Reader G5'
short_name = 'boeyeg5'
description = _('This profile is intended for the Boeye Digital Reader G5.')
# Screen size is a best guess
screen_size = (600, 800)
comic_screen_size = (600, 740)
dpi = 200
fbase = 16
fsizes = [12, 14, 16, 18, 20, 22, 24]
class BoeyeG6Output(OutputProfile):
author = 'Ken'
name = 'Boeye Digital Reader G6'
short_name = 'boeyeg6'
description = _('This profile is intended for the Boeye Digital Reader G6.')
# Screen size is a best guess
screen_size = (600, 800)
comic_screen_size = (600, 740)
dpi = 160
fbase = 16
fsizes = [12, 14, 16, 18, 20, 22, 24]
class BoeyeG10Output(OutputProfile):
author = 'Ken'
name = 'Boeye Digital Reader G10'
short_name = 'boeyeg10'
description = _('This profile is intended for the Boeye Digital Reader G10.')
# Screen size is a best guess
screen_size = (825, 1200)
comic_screen_size = (824, 1140)
dpi = 150
fbase = 16
fsizes = [12, 14, 16, 18, 20, 22, 24]
output_profiles = [OutputProfile, SonyReaderOutput, SonyReader300Output,
SonyReader900Output, MSReaderOutput, MobipocketOutput, HanlinV3Output,
@ -737,6 +821,7 @@ output_profiles = [OutputProfile, SonyReaderOutput, SonyReader300Output,
iPadOutput, KoboReaderOutput, TabletOutput, SamsungGalaxy,
SonyReaderLandscapeOutput, KindleDXOutput, IlliadOutput,
IRexDR1000Output, IRexDR800Output, JetBook5Output, NookOutput,
BambookOutput, NookColorOutput, GenericEink, GenericEinkLarge]
BambookOutput, NookColorOutput, BoeyeG5Output, BoeyeG6Output, BoeyeG10Output,
GenericEink, GenericEinkLarge]
output_profiles.sort(cmp=lambda x,y:cmp(x.name.lower(), y.name.lower()))

View File

View File

@ -0,0 +1,57 @@
__license__ = 'GPL v3'
__copyright__ = '2011, Ken <ken at szboeye.com>'
__docformat__ = 'restructuredtext en'
'''
Device driver for BOEYE serial readers
'''
import re
from calibre.devices.usbms.driver import USBMS
class BOEYE_BEX(USBMS):
name = 'BOEYE BEX reader driver'
gui_name = 'BOEYE BEX'
description = _('Communicate with BOEYE BEX Serial eBook readers.')
author = 'szboeye'
supported_platforms = ['windows', 'osx', 'linux']
FORMATS = ['epub', 'mobi', 'fb2', 'lit', 'prc', 'pdf', 'rtf', 'txt', 'djvu', 'doc', 'chm', 'html', 'zip', 'pdb']
VENDOR_ID = [0x0085]
PRODUCT_ID = [0x600]
VENDOR_NAME = 'LINUX'
WINDOWS_MAIN_MEM = 'FILE-STOR_GADGET'
OSX_MAIN_MEM = 'Linux File-Stor Gadget Media'
MAIN_MEMORY_VOLUME_LABEL = 'BOEYE BEX Storage Card'
EBOOK_DIR_MAIN = 'Documents'
SUPPORTS_SUB_DIRS = True
class BOEYE_BDX(USBMS):
name = 'BOEYE BDX reader driver'
gui_name = 'BOEYE BDX'
description = _('Communicate with BOEYE BDX serial eBook readers.')
author = 'szboeye'
supported_platforms = ['windows', 'osx', 'linux']
FORMATS = ['epub', 'mobi', 'fb2', 'lit', 'prc', 'pdf', 'rtf', 'txt', 'djvu', 'doc', 'chm', 'html', 'zip', 'pdb']
VENDOR_ID = [0x0085]
PRODUCT_ID = [0x800]
VENDOR_NAME = 'LINUX'
WINDOWS_MAIN_MEM = 'FILE-STOR_GADGET'
WINDOWS_CARD_A_MEM = 'FILE-STOR_GADGET'
OSX_MAIN_MEM = 'Linux File-Stor Gadget Media'
OSX_CARD_A_MEM = 'Linux File-Stor Gadget Media'
MAIN_MEMORY_VOLUME_LABEL = 'BOEYE BDX Internal Memory'
STORAGE_CARD_VOLUME_LABEL = 'BOEYE BDX Storage Card'
EBOOK_DIR_MAIN = 'Documents'
EBOOK_DIR_CARD_A = 'Documents'
SUPPORTS_SUB_DIRS = True