Skip to content

Commit

Permalink
Fix - the Oberheim OB-X8 module has again its own sysex ID screwing u…
Browse files Browse the repository at this point in the history
…p auto detection.
  • Loading branch information
christofmuc committed Feb 9, 2025
1 parent 0ec51b0 commit 785a9b4
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 3 deletions.
7 changes: 6 additions & 1 deletion adaptations/OberheimOBX8.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ def name_info(message: List[int]) -> Tuple[int, int]:

sequential.GenericSequential(name="Oberheim OB-X8",
manufacturer=0x10, # Oberheim, not Sequential
id_list=[0x58, 0x59], # 0x58 the synth, 0x59 the module
device_id=0x58,
program_data_ids=[SINGLE_PROGRAM, COMBI_PROGRAM],
banks=8,
Expand All @@ -57,4 +58,8 @@ def programs(data: testing.TestData) -> List[testing.ProgramTestData]:

yield testing.ProgramTestData(message=data.all_messages[0], name="Jersey Girl B", number=22)

return testing.TestData(sysex="testData/Oberheim_OBX8/OBx8-prest.syx", program_generator=programs, friendly_bank_name=(5, "User"))
return testing.TestData(sysex="testData/Oberheim_OBX8/OBx8-prest.syx",
program_generator=programs,
friendly_bank_name=(5, "User"),
device_detect_call="f0 7e 00 06 01 f7", # The test tests with channel 0x00, even if in real life we will use 0x7f
device_detect_reply=("f0 7e 7f 06 02 10 59 01 00 00 02 00 00 f7", 1))
9 changes: 7 additions & 2 deletions adaptations/sequential/GenericSequential.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright (c) 2021 Christof Ruch. All rights reserved.
# Copyright (c) 2021-2025 Christof Ruch. All rights reserved.
#
# Dual licensed: Distributed under Affero GPL license by default, an MIT license is available for purchase
#
Expand All @@ -9,21 +9,26 @@
#
# Evolver - 0b00100000 0x20 (same as Poly Evolver and all other Evolvers)
# Prophet 08 - 0b00100011 0x23 or 0b00100100 0x24 for special edition
# Prophet 08 module 0x24
# Mopho - 0x25 (used in f0f7)
# Tetra - 0b00100110 0x26
# Mopho KB - 0b00100111 0x27 (Mopho Keyboard and Mopho SE) or 0b00101001 0x29 (Mopho X4)
# Mopho X4 0x29
# Tempest - 0x28 (according to Sequential forum)
# Prophet 12 - 0b00101010 0x2a or 0b00101011 0x2b for module/special edition?
# Prophet 12 module 0x2b
# Pro 2 - 0b00101100 0x2c
# Prophet 6 - 0b00101101 0x2d
# OB 6 - 0b00101110 0x2e
# Rev 2 - 0b00101111 0x2f
# Prophet X - 0b00110000 0x30
# Pro 3 - 0b00110001 0x31
# Prophet 5 - 0b00110010 0x32 (this is the Rev 4 of course) or 0b00110011 0x33 (Desktop module?)
# Prophet 5 module 0x33
# Take 5 - 0x35 (they left 0x34 empty - maybe the desktop Prophet 5 and...?)
# Trigon-6 - 0b00111001 0x39 (the manual is not updated but uses the Prophet 6 ID)
# OB-X8 - 0x58 (the manual is not updated, see https://forum.sequential.com/index.php?topic=8073
# OB-X8 - 0x58 (the manual is not updated, see https://forum.sequential.com/index.php?topic=8073)
# OB-X8 module 0x59
# Teo-5 - 0b01011010 0x5a (the manual is not updated but uses the Take 5 ID) - this also additionally uses the MIDI ID for Oberheim, 0x10
from typing import List, Optional, Callable, Tuple

Expand Down

0 comments on commit 785a9b4

Please sign in to comment.