Updating Your Poseidon M28/Se7en/CPOD Firmware

Prepared by Mark Derrick, Poseidon Se7en CCR Instructor

I have expanded the Poseidon instructions for updating the M28 dive computer, Se7en CCR, and CPOD 3rd sensor holder, based on my own experience performing many updates using a Windows 10 based laptop PC as well as experiences supporting our customers and other M28 owners. The process seems especially sensitive to the order in which cables were connected or devices powered on. We've also seen the updates fail when the batteries were not fully charged and when the steps were performed out of order. Carefully following the instructions in this article has always proven successful in our experience.

In summary, what you will be doing to update your M28 dive computer: (1) Using a laptop and browser with Wi-fi to update the Operating System firmware in M28. (2) Using the M28 itself to update the CUSB firmware in the charging/data cable. (3) Using a laptop and RbConfig application with data cable to update the PMIC firmware in M28. You must follow our detailed instructions precisely, in EXACTLY the order listed, to have a good chance of success on the first attempt. If this is your first time doing the M28 firmware update then allow about 60 minutes plus another 60 minutes if you use the M28 to update your Se7en CCR.

Two words of advice if you find yourself now reading or re-reading these instructions because you are in the middle of an M28 update that seems to be going wrong: "Remain Calm." If you clicked on "Reboot to update" in the management web page and the M28 has a blinking light and blank screen, then see the FIRST section item labeled "Reboot to update". If the Firmware Update menu option on the M28 has a lock icon and can not be selected, check the battery charge is full. If your M28 is displaying an error message related to the PMIC see the FIRST and SECOND section items labeled "M28-PMIC Warning"; PMIC errors may be ignored until the THIRD section. If your M28 appears to be unresponsive with nothing but a solid light and blank screen then see the THIRD section item labeled "BRICKED". If your M28 system information indicates "Water temperature sensor is missing", see the THIRD section item labeled "Missing Sensor Error". I understand you are frustrated, but I'm just trying to help you by writing this advice. Don't worry, if you follow these instructions then you will be successful.

PREP - Download Poseidon software to the Windows laptop

Do not perform the update if the M28 has to be relied upon to dive again before existing data from recent diving has cleared. The update will likely clear tissue gas saturation data the M28 uses for calculating decompression obligations and oxygen exposure for repetitive diving and flying times.

You will need a PC that has support for both USB and Wi-Fi. This implies a laptop type portable PC, since hardware support for Wi-Fi is absent from most desktop PC systems. You MUST be connected to Internet for the steps in this section. You will need an internet connection that is NOT behind a firewall appliance or proxy server; we've seen these devices cause problems with the update. Best practice also suggests you temporarily disable any third party anti-virus or security software for the duration of the update process.

Download the RbConfig Tool for PC application setup file from the Poseidon Se7en support page. This file may be an application setup file ending in .exe extension or may be a ZIP format archive file from which the executable will have to be extracted. The current RbConfig version is v1.21 as of July 2018.

Download the FW file for M28 OS firmware update file to the PC from the Poseidon Se7en support page.
This file may be an raw firmware file ending in .posm extension or may be a ZIP format archive file from which the firmware file will have to be extracted. Make sure this file name ends with .posm extension. The current M28 OS version is v2.1.7 as of July 2018.

Install the RbConfig application as normal for a typical Windows setup executable, then launch the RbConfig application on the Windows PC.

Click on the CANbus symbol (a ring with 4 pins), note the symbol is separate and distinct from the CAN menu item just above the symbol. Confusingly, a slightly larger CANbus symbol appears again further down the page, the symbol you want to click on is the one between the Bluetooth symbol (not the Bluetooth menu item) and the Setup gears symbol. A firmware file download occurs automatically within the RbConfig application when newer firmware is released, there is no action required and no indication during the download itself.

Once the firmware has been downloaded to the PC, the "firmware available" box displayed adjacent to the CANbus symbol should indicate the current version. As of July 2018, the current version value is "Firmware version available: v1.49". Note the M28 Operating System firmware version number v2.1.7 and RbConfig software executable version number v1.21 are separate and distinct from the "available firmware" version number of v1.49

These instructions assume familiarity with powering up, shutting down and navigating the menus of the M28 dive computer. If you are new to the M28, please take the time to RTFM... read the friendly manual and practice with the M28 until you are comfortable with the basics of how it works. You may wish to note configuration setting changes from defaults you make in the M28 so that they can be quickly restored in the event your M28 resets to default values. In my experience the M28 normally retains the information across updates, but the possibility of a "Factory reset" occurring always exists.

FIRST - Update Operating System firmware in the M28 using Wi-fi

Charge the M28 battery until full. Do NOT attempt to update if the battery has a low charge. The firmware updates will not succeed if the battery charge is low. Although Poseidon documentation suggests any USB power source is suitable, do NOT use a USB port on the PC, rather ONLY use a dumb USB power supply cube. Also avoid using the fast charge USB version 2.0 compliant power supply cubes from Apple and Samsung.

Disconnect the CUSB power cable from the M28 before proceeding. Install a cap in the CANbus connector on the M28 prior to the update. Power up the M28, if it is not already on and displaying the home screen.

Enable the Wi-fi access point on your M28 by navigating to Setting>Connect>Wifi AP and select ON. When enabled, the Wi-fi symbol will be visible at the top of the home screen display.

Use your PC to connect to the M28 Wi-fi access point. If the PC also connects to the internet via Wi-fi this will require you to disconnect from your internet Wi-fi access point. During this section you can safely ignore any error messages that appear on your PC regarding internet connectivity. Choose the Wi-Fi network name M28-XXX. Look at the back of your M28 to see the XXX serial number for your computer. The M28 Wi-fi access password is ”matterhorn” if you are asked. If you have previously connected to the M28 access point the PC may connect automatically without asking for a password.

On the PC launch the MS Internet Exporer web browser to open a connection to the M28: On the PC browser address bar type in the raw IP address URL http://192.168.7.1 and the M28 will serve a simple management web page (NON-secure) from the dive computer itself over the built-in M28 Wi-Fi access point to the Wi-Fi connected PC and browser.

Prior to updating the firmware in the M28, if you have not done so previously you may wish to use the M28 management web page to download to the PC the existing dive history on your M28 that you wish to retain. In my experience the M28 normally retains the log history across updates, but the possibility of a "Factory reset" occurring always exists. Otherwise, continue to the next step to start the firmware upload process.

In the browser window, select the "Firmware" menu item on the M28 management page and select firmware image to upload as the .posm file that was downloaded to the PC in the FIRST section above. After selecting the file, click ”Upload firmware file”. The time for the browser to upload the file is less than a minute. Once the browser completes the upload to the M28, the window will refresh and indicate "Firmware file is uploaded" and ask you to "Please reboot the system". This means using the M28 management page to reboot the M28, it does NOT mean reboot the PC.

Caution: Please read the next sentence very carefully and do not act until you understand what it says. In the browser window on the PC, select the "System" menu item on the M28 management web page and click on only the item in the page that reads exactly the single word ”Reboot” .

"Reboot to update" Mistake - Do NOT click on the misleadingly named "Reboot to update" button. If you have clicked on the wrong button in the management web page, the M28 will boot in to maintenance mode, which takes several minutes during which time the LED is blinking green. Eventually the M28 will show a maintenance screen that displays the Poseidon logo and "Wifi: M28-XXX, Pw: matterhorn" along with the battery charge percentage. If the M28 screen is blank, try simultaneously pressing and holding both of the two buttons on the m28 for at least 10 seconds. Redo the FIRST section of the instructions from the beginning to re-connect the PC to the M28 Wi-fi access point and display the M28-Recovery web page.

The reboot process takes approximately two minutes and during some phases of the reboot the M28 screen will go blank and the LED may be off. Be patient and wait for the M28 to return to the M28 startup "DANGER!" screen before continuing. After reboot, at this point the M28 is partially updated but many important steps remain before the M28 is completely updated.

M28-PMIC Warning - After the Operating System firmware update is complete, the M28 may be indicating a firmware mismatch for the M28-PMIC. This warning should be ignored at this point in the process, many more steps remain before the PMIC firmware is updated and then the PMIC error will be resolved.

You can verify Operating System firmware has been updated on the M28 by navigating to Apps>System and scrolling through the system information to find "OS version: v2.1.7" Don't proceed until the Operating System firmware has been updated using the PC browser and M28 management web page. Just to be clear, the RbConfig program cannot be used to update the Operating System firmware.

Close the browser and disconnect Wi-fi on your PC from the M28 access point, if it is not already disconnected. Re-establish the internet connection on your PC before proceeding to the next section.

SECOND - Update CUSB Cable firmware using the M28

The CUSB cable itself contains some electronics in the USB end of the connector and it's firmware must also be updated. Failing to successfully update the CUSB cable from the M28 seems to be where users are most likely to go wrong.

Disconnect the CUSB cable from the USB power source if necessary, then connect the CUSB cable to your M28. We have found it is important to connect the cable to the M28 before connecting it to a USB power source.

Once the CUSB cable is connected to the M28, only then connect the CUSB cable to a USB power source. Although Poseidon documentation suggests any USB power source is suitable, do NOT use a USB port on the PC, rather ONLY use a dumb USB power supply cube. Also avoid using the fast charge USB version 2.0 compliant power supply cubes from Apple and Samsung.

You will see an indication of a firmware mismatch, but it may be for either the M28-PMIC or the CUSB. Regardless, on the M28 call up the menu and navigate to ”Firmware Update”, which only appears in the top level menu when the M28 has detected a firmware mismatch. Once Firmware Update is selected on the M28 you will see "Updating CUSB" on the display. The update process takes well under a minute.

Update Menu Locked - If the Firmware Update menu option has a lock icon and can not be selected, charge the battery until full. The firmware updates will not be allowed if the battery charge is low.

M28-PMIC Warning - Once CUSB firmware update is complete, the M28 may again be indicating a firmware mismatch for the M28-PMIC and/or may display a warning the firmware update "Must be done over CAN interface!" which is referring to the PMIC update not the CUSB update. These warnings should be ignored at this point in the process, many more steps remain before the PMIC is updated and then the PMIC error will be resolved.

Occasionally the CUSB update process fails and a CUSB related error is displayed on the M28. If the update fails, force another firmware update of the CUSB, on the M28 menu navigate to Apps>System>Force fw update and select Force fw CUSB. You may have force the CUSB update several times before the update is successful.

You can verify the CUSB cable firmware has been updated on the M28 by navigating to Apps>System and in the system information find "Connected Units" item CUSB: 0149. Don't proceed until the CUSB cable has been updated using the M28. Just to be clear, the RbConfig program cannot be used to update the CUSB cable firmware.

THIRD - Update the M28-PMIC firmware in the M28 using RbConfig

The PMIC is a Power Management Integrated Circuit the M28 electronics uses to control its power consumption and the PMIC has its own separate firmware inside the M28. This section will also update the Se7en firmware files stored in the M28 that can later be used to update the Se7en rebreather itself without the necessity of connecting the rebreather to the PC.

If not already open, launch the RbConfig application on the Windows PC. Make sure the laptop has established a connection to the internet.

Click on the gears wheel setup symbol to the immediate right of the CANbus symbol. The RbConfig - Settings dialog box should appear. In the port type drop down choose CUSB if this is not already selected and grayed out. Then in the "port name" drop down click the down arrow to examine the list of choices available. Make a note of those port names that appear then click CANCEL in the RbConfig - Settings dialog box.

By now the M28 may have shutdown automatically. If so, power the M28 back on before the next step.

Unplug the CUSB cable from the power supply and then plug the USB end of the cable from the M28 in to a USB port on the PC. If this is the first time the cable has ever been plugged in, Windows will download and install a device specific "CUSB Virtual Com Port" driver from Microsoft. If so, a message will appear in the notifications bar of Windows on the PC and you may hear some beeps indicating this is occurring. Wait a minute, until the process is complete.

Once again click on the gears wheel symbol to the immediate right of the CANbus symbol. The RbConfig - Settings dialog box should appear. In the port type drop down choose CUSB if this is not already selected and grayed out. Then in the "port name" drop down click the down arrow to examine the list of choices available. Look for a new com port name that was not previously present, the name will be similar to "Com5 (USB Serial Device)", where the Com port number may vary. Select the appropriate port name and click OK.

Connect the RbConfig application to the M28 by clicking on the CAN symbol again and then ”Open”. Once you are connected you will see a graphic of the CUSB cable and some information about the status of its firmware. The first time you click the Open it may take up to a minute to establish the connection, but in my experience subsequent connections are established in a few seconds.

If the CUSB graphic indicates "update available", go back to the SECOND section and complete updating CUSB cable firmware using the M28. The CUSB cable firmware can NOT be updated using the RbConfig application on the PC.

If Open fails and neither the CUSB or M28 device graphics appear, chances are the wrong port name is selected in RbConfig setup. In this case you may have to iterate selecting port names and then Open until a connection is successfully established causing both the CUSB and M28 devices appear. Another approach is to restart this section by plugging the CUSB cable in to a different USB port on the PC, avoiding any USB 3.0 high speed ports. If you have been using a port on the back of the PC then use one on the front or vice versa, and avoid using USB extension cables, USB hubs, or "daisy chains" from USB ports on monitors or keyboards.

Once the M28 is successfully connected to RbConfig, you will see
"update available" next to an M28 device graphic. In the CAN menu drop down, choose ”Firmware Update” and you will see a dialog box window displaying the update progress plus the CUSB and/or M28 graphics may disappear and reappear several times. The update process takes approximately two minutes (it can take longer, be patient) and the dialog box in RbConfig briefly displays "Done" when complete before closing.

BRICKED -- Occasionally the M28-PMIC update process times out (often around 84%) and an error is displayed in RbConfig plus the M28 screen may be blank with a solid red LED indication. You may see a "Retry" selection in the RbConfig error dialog box, if so then click on Retry. If the retry update fails, then force another firmware update of the M28-PMIC: in the RbConfig application on the PC in the CAN menu drop down, choose ”Forced firmware” and select the M28. You may have to force the M28-PMIC firmware update several times before the update is successful. In rare cases, the M28-PMIC update may need to be retried many times, so some patience is required, but the update always does eventually succeed.

Once the M28-PMIC update process is successful, the M28 will reboot at the end of the update process. The reboot process takes approximately two minutes and during some phases of the reboot the M28 screen will go blank and the LED may be off. Be patient and wait for the M28 to return to the M28 startup "DANGER!" screen before continuing.

You can verify all the firmware has been updated on the M28 by navigating to Apps>System and scrolling through the system information find "OS version: v2.1.7" plus "Connected Units" items CUSB: 0149 and M28-PMIC: 0149.

Missing Sensor Error -- If the system information indicates "ERROR: Water temperature sensor is missing", the M28 has been updated out of sequence using RbConfig before the OS update has been properly completed using Wi-fi as described in the FIRST section. Restarting the entire process from the very beginning of this article will clear the error.

Once the firmware has been uploaded to the M28 from the RbConfig application via the CUSB cable, review and adjust the M28 configuration settings for your preferences as appropriate. At a minimum you should navigate to Settings>Set time/date and Time zone to adjust those values, as well as re-calibrate the compass. I also use this opportunity to re-calibrate the two magnetic switches using the RbConfig application.

The update of your M28 is complete, you may now disconnect the CUSB cable from the M28. If you connect the M28 to your Se7en CCR, continue to the next section.

OPTIONAL - Update the Se7en CCR firmware using the M28

If you are initially installing a new M28 as an upgrade to a pre-existing Se7en with a display paddle, it might be more appropriate to first use the RbConfig application and a Bluetooth connection to update the firmware version on the Se7en to match that of the M28. Otherwise, proceed to update the Se7en firmware using the M28 as follows:

Charge the M28 battery and the Se7en battery until both are full. Do NOT attempt to update if either battery has a low charge.

Begin the update process with both the M28 and the Se7en shutdown. If necessary, shutdown the Se7en and remove the battery.

Connect a CANbus cable directly between the M28 and Se7en. Do NOT include optional CPOD or Display Paddles in a cable chain with the Se7en, update these devices separately.

Power up the M28 and using the M28 menu navigate to "Dive mode" and select (CC) SE7EN. Do this while the battery is removed from the Se7en.

Power up the Se7en by inserting the battery. The M28 should detect and warn regarding the firmware mismatch automatically once the Se7en is powered on and begins running it's power on self tests (POST). On the M28 call up the menu and navigate to ”Firmware Update”, which only appears in the top level menu when the M28 has detected a firmware mismatch. Once Firmware Update is selected on the M28 you will see an indication the Se7en components are being updated.

Once the Se7en firmware has been updated, the Se7en POST will time out and shutdown. Remove the battery, reinsert the battery again and once the Se7en begins it's POST, then verify the Se7en firmware has been updated by using the M28 menu to navigate to Apps>System and in the system information find "Connected Units" System: 0149; CBP: 0149; CHUD 0419; and BAT 0149.

If you need to force a firmware update of any of the Se7en individual components, on the M28 menu navigate to Apps>System>Force fw update and select Force fw for the appropriate component.

Eventually the Se7en POST will time out and the M28 will offer to shutdown the Se7en. Select YES and once the Se7en is shutdown, remove the Se7en battery and disconnect the M28 from the CANbus cable.

Even if not normally connected to the Se7en CCR, the Display Paddle should be maintained at current firmware revision to match the Se7en CCR. That way the Display Paddle will be ready if you wish to use it as a backup for the M28.

Connect the CANbus cable of the Display Paddle directly to the M28, or connect a CANbus cable directly between the CPOD and M28. For the CPOD, install a cap in the unused CANbus connector prior to the update. Do NOT attempt to update these devices while they are connected to the Se7en.

Power up the M28 and using the M28 menu navigate to Setting>Connect>PowerOut>ON, then exit the menu.

On the M28 call up the menu and navigate to ”Firmware Update”, which only appears in the top level menu when the M28 has detected a firmware mismatch. The M28 will begin updating the firmware in the Se7en Display Paddle or CPOD.

Verify the firmware has been updated by using the M28 menu to navigate to Apps>System and in the system information find "Connected Units" CDISP: 0149 or CPOD: 0149.

If you need to force a firmware update, on the M28 menu navigate to Apps>System>Force fw update and select Force fw CDISP or Force fw CPOD.

The Se7en is now updated. However, the next time you setup your Se7en for diving, plan on taking a few extra minutes to use the M28 to review all the dive configuration settings in case the update has caused them to revert to defaults.