Installing firmware update

Before even thinking about reflashing firmware over MIDI make sure you have a decent MIDI interface and MIDI on your computer is configured properly. MIDI implementation in Windows is a disaster anyway, but USB-over-MIDI (an unfortunate consequence of everyone using a laptop) only makes things worse. In case you have one of those dirt cheap Chinese USB to MIDI cables based on CH345 chip with the optocoupler left off to cut the costs by a few cents, you might be out of luck. Those cables are good enough for the simplest MIDI messages (NOTE ON, NOTE OFF) but fail with any messages longer than 3-4 bytes.

Some of the MIDI USB Interfaces known to work:
Elektron TM 1 Turbo Midi interface
Steinberg UR44 Audio Interface
NI Komplete Audio 6
MOTU Traveler
MOTU UltraLite mk3 Hybrid
ESI RoMI/O II
Some of the MIDI USB Interfaces known to NOT work:
Alesis USB MIDI Cable
M-Audio MIDISPORT 2x2
Digidesign DIGI 003

NB! Unfortunately I have had 
multiple reports of Edirol
UM-1SX  not working so this
one is included here as suspicious
until further clarification.
This cable sold on eBay, AliExpress and Amazon is known to work: The cheapest cable sold on eBay and AliExpress is known to NOT work:
MIDI cable that works
MIDI cable that does not work
 
More detailed guidance about MIDI interfaces and Sysex can be found on the Internet. Also, avoid any unnecessary MIDI devices (MIDI routers, mergers, splitters), USB hubs or other external devices between your computer and Electribe. Those might interfere with MIDI transmission and cause unpredictable issues during reflashing.
 
To check your computer’s MIDI connection send/transmit this DEVICE INQUIRY MESSAGE REQUEST Sysex message to your device. To do this:
(1) Have MIDI-OX running without any other MIDI program open at the same time,
(2) On menu bar select Options|MIDI Devices and make sure those MIDI ports connected to your Electribe device are selected. Validate this turning some knobs on your device: you should see MIDI messages fly by in Monitor – Input panel,
(3) Select View|Sysex in program menu and type into Command Window panel the bytes exactly as seen below. In case your Electribe device is not set to MIDI Channel 10 (MIDI|MIDIch on Electribe) type F0 7E 7F 06 01 F7
(5) Select Command Window|Send/Receive Sysex. 15-byte response should appear in the Display Window panel. The dialog should look similar to this:
 
DEVICE INQUIRY MESSAGE REQUEST

 

Here, 09 means the Electribe device is listening on MIDI Channel 10, so change your settings accordingly if needed. The response should be 15 bytes long, some digits could differ due to a different firmware version. Naturally any other MIDI monitoring tool can be used as well.

In case this procedure is not working please do not attempt to reflash the firmware and contact shaman@electribe.cc.

 

Reflashing firmware

Once MIDI connectivity has been set up you can proceed with downloading and installing firmware update. Everything required for this is handled by Electribe ER-1/ER-1mkII Flash Utility (erflash.exe):

erflash.exe  ER-1 Firmware Flash Utility for 64-bit Windows  

Note. The installation only works on 64-bit Windows for now! So no bootcamp, Windows on some Mac/Linux partition or an ancient 32-bit laptop. Has to be a PC due to the fragility of MIDI timings for now, but macOS version is in works.

Flash Utility is a command line program that has to be executed in Windows command window (press Win + R keys, type cmd, press Enter). Always make sure that you do not have any other MIDI utility (eg. MIDI-OX, Bome etc.) running at the same time, as MIDI ports are not shared. Make sure your Electribe is listening on MIDI channel 10 for the Installer utility to work. Finally, make sure that SysEx is enabled on your device. Either an ‘o‘ is flashing in the rightmost column of MIDI/MIDI FILTER menu (see ‘MIDI filter settings’ in Electribe ER-1 Owner’s Manual) or MIDI/DUMP menu option is selected when starting installation.

Navigate to the directory where you downloaded erflash.exe. Type  erflash /firmware. The screen will look like this:

er1flash /firmware screenshot
1. Press Enter to continue, Ctrl-C to cancel.
2. Enter the number from the range that corresponds to the MIDI IN port connected to the Electribe.
3. Enter the number from the range that corresponds to the MIDI OUT port connected to the Electribe.
4. Select the type of your device: 1 for an original ER-1, 2 for ER-1mkII.
5. Enter the serial number (6 digits) from the label, license number (8 characters) sent to you and version number (3 digits) of the firmware update: 999 to get the latest, 000 to restore the original.
6. Press Enter to continue, Ctrl-C to cancel.
7. Last chance to back off. Press Enter to continue, Ctrl-C to cancel. Reflashing starts.
8. Cross your fingers and wait. Reflashing takes about one minute. While the process runs, BEAT and SELECT LEDs indicate the progress. After the WRITE button has blinked 16 times GLOBAL button lits up. Now it’s time to restart your device.

To validate successful reflashing turn your Electribe on while pressing and holding SHIFT button. Factory firmware version is displayed. Turn off the device and turn it on while pressing and holding PATTERN SET button. Now, Electribe Shaman Firmware update version is displayed. In case the display reads 3-F you still have the factory firmware. Pressing STEP16 resumes normal operation.

Loading Custom Samples

Before you start, turn Memory Protect OFF on your Electribe (GLOBAL > PROTECT > oFF). In Windows command window navigate to the directory where you downloaded erflash.exe. Type  erflash /samples. The screen will look like this:

er1flash /samples screenshot
1. Press Enter to continue, Ctrl-C to cancel.
2. Enter the number from the range that corresponds to the MIDI IN port connected to the Electribe.
3. Enter the number from the range that corresponds to the MIDI OUT port connected to the Electribe.
4. Select the type of your device: 1 for an original ER-1, 2 for ER-1mkII.
5. Enter the names of .wav files with or without relative directory. Simply pressing Enter defaults to 00.wav, 01.wav, 02.wav and 03.wav in the current directory. Note that the sample files can have arbitrary names but the order of the samples is important as Electribe allocates them to predefined parts. If allocating samples fails, a sample is not available or not in proper format, or the total size exceeds the limits simply start the process again.
6. Press Enter to continue, Ctrl-C to cancel. Reflashing starts,
7. Electribe displays the ‘spinning wheel’ while reflashing and restarts automatically when done. Reflashing samples takes about 80 seconds.


Reporting An Issue

Electribe ER-1/ER-1mkII Flash Utility has been tested and found working on several laptop and desktop computers running 64-bit Windows 10 with different USB-to-MIDi cables. Mac OSX version is under development. Due to some idiosyncrasies in Windows MIDI implementation (limited buffer size etc.) as well as crippled USB cables, MIDI operations might occasionally fail. In those cases press Ctrl-C to cancel and repeat the whole procedure. Be extra careful during reflashing, those situations are clearly identified by CAUTION! prompts. However, in the unlikely event that something unexpected occurs, please report this immediately via email.

Please prepare the following information:

  1. Date and time of the incident (helps to link this with logs on server);
  2. Windows version and type of the computer;
  3. MIDI cable type (direct MIDI cable, USB-to-MIDI cable; for the latter, a snapshot of the cable would help);
  4. Serial number of the device (license code is NOT required);
  5. Screenshot of the command window (similar to the one above) or the session copy-pasted from the window;
  6. ER-1 Flash utility log file (erflash.log) that is created and stored in the working directory (the one where erflash.exe resides);
  7. Snapshot of the Electribe device showing the state of the display, LEDs and buttons after failure.

Additional narrative about the circumstances, what else was running on the computer etc. would also help.

 shaman@electribe.cc