Month: February 2026
Why do I receive Licence Manager Error-8 ?
I enter the licence key during installation.When I enter the applicatiıon after the isntallation is complete I am receiving the following error code.I enter the licence key during installation.When I enter the applicatiıon after the isntallation is complete I am receiving the following error code. I enter the licence key during installation.When I enter the applicatiıon after the isntallation is complete I am receiving the following error code. matlab 913_r2022b_win64 MATLAB Answers — New Questions
SVC CONTROL(detailed model)
I can’t find how we choose the size of TCR and TSC in Static Var compensator example(detailed model)I can’t find how we choose the size of TCR and TSC in Static Var compensator example(detailed model) I can’t find how we choose the size of TCR and TSC in Static Var compensator example(detailed model) tsc, tcr MATLAB Answers — New Questions
How to Use Scoped Graph Permissions to Access SharePoint Files
Limit App Access to Specific Files and Folders in a SharePoint or OneDrive Site
Following on from the discussion about using RBAC for Applications to limit apps from being able to send email fromany Excange Online mailbox, let’s discuss how SharePoint Online and OneDrive for Business can limit app access to files and lists. In another article, I describe how to use the Sites.Selected permission to limit app access to sites. Being able to grant permission to apps to access specific sites is a fundamental control similar to the mailbox-level control exerted by RBAC for Applications.
More so than mailboxes, SharePoint Online sites can store confidential information in files and lists, and SharePoint has always offered the ability to restrict access at the item or file level. As we’ll discover, tenants can employ much the same technique to create a delegated scope to limit app access to individual lists, list items, and files. Some practical examples always help, and that’s what’s covered in this primer.
Graph Permissions for Granular Access to SharePoint Content
A set of Graph permissions to limit access to SharePoint and OneDrive information is at the heart of the discussion. The previous article describes how to use the Sites.Selected permission, The focus now switches to three Graph delegated scoped permissions to control app access with different scopes within a site. They are delegated by an administrator to an app, and they are scoped to specific files, lists, or list items. The permissions are:
- Files.SelectedOperations.Selected: Manage app access to files or folders within a document library. Access granted to a folder allows access to all files within the folder.
- Lists.SelectedOperations.Selected: Manage app access for a list.
- ListItems.SelectedOperations.Selected: Manage app access for more or more list items.
At a technical level, document libraries are lists and files are items within those lists. Other lists store different kinds of data, not all of which are files, and that’s why separate permissions exist for files and list items.
Three-Steps to Scoped Access
Creating a delegated scope to allow app-only access to specific resources requires three steps:
- Assign the required Graph permission to the app. Figure 1 shows an app registration with consent to use the four limited scope permissions. Having consent for the Graph permissions doesn’t matter because the permissions are useless without scoped access being granted to files, lists, or list items. Consent is for application permissions to allow app-only access to files and folders. Delegated scoped permissions are also supported for interactive sessions.
- Grant access to the app by creating an entry in the permissions endpoint for the target resource.
- Authenticate the app with Entra ID and make sure that the access token contains the correct Graph permission.

I use cmdlets from V2.35.1 of the Microsoft Graph PowerShell SDK in the following examples.
Adding Scoped Access to Files and Folders in a Selected Site
The New-MgDriveItemPermission cmdlet adds a scoped permission to a drive item (file or folder). In this example, we’ll limit access to the Critical Info folder. To add the scoped permission, we need to know the identifiers for the drive (document library) and drive item (folder). Using an interactive session with consent for Sites.FullControl.All permission and holding the SharePoint administrator role allows us to access the data and fetch the identifiers. This code:
- Gets the default document library.
- Gets items in the root folder.
- Extracts details of the Critical Info folder.
# Find default document library
$DefaultDocumentLibrary = Get-MgSiteDrive -All -SiteId $SiteId | Where-Object {$_.Name -eq 'Documents'}
# Get items in the root folder
[array]$Data = Get-MgDriveItemChild -DriveId $DefaultDocumentLibrary.Id -DriveItemId "root" -All
# Find the target folder to gramt permission for
[array]$Folders = $Data | Where-Object {$_.folder.childcount -gt 0} | Sort-Object Name
$CriticalFolder = $Folders | Where-Object {$_.Name -eq "Critical Info"}
# Just to test, see what files are in the folder
[array]$CriticalFolderFiles = Get-MgDriveItemChild -DriveId $DefaultDocumentLibrary.Id -DriveItemId $CriticalFolder.Id -All
The identifier for the app that will access the folder is also needed. Once that information is secured, we can create the request body to use with the New-MgDriveItemPermission cmdlet to add the scoped permission:
# Get application identifier
$AppId = (Get-MgApplication -Filter "displayName eq 'SharePoint Limited Access app'").AppId
# Define role to assign
$Role = "write"
# Create request body to request role for the application
$Requestbody = @{
roles = @($Role)
grantedTo = @{
application = @{
id = $AppId
}
}
}
# Attempt to add the permission
$Status = New-MgDriveItemPermission -DriveId $DefaultDocumentLibrary.Id -DriveItemId $CriticalFolder.Id -BodyParameter $RequestBody
If ($Status) {
Write-Host ("{0} permission granted for {1}" -f $Role, $CriticalFolder.Name)
}
Repeat the process to add permissions for as many folders or individual files as required. A difference in the request bodies used to assign permissions for use with Sites.Selected and Files.SelectedOperations.Selected is that the file permission uses the older grantedTo property as its assignment target while the site permission uses the newer grantedToIdentitiesV2 property. Microsoft is moving away from grantedTo to grantedToIdentitiesV2 for permission assignments, so this might change in time.
After the permission is granted, the app can navigate to the folder and work with the items in the folder using the same commands to find the document library and target folder as shown above. The app doesn’t have the Graph permission to search for the target site, so this value might have to be hard coded. The app cannot see any other document libraries in the site or any other folders in the document library. SharePoint masks this information from the app when it returns data in response to app requests.
Granular App Access to Files and Folders
The Files.SelectedOperations.Selected permission is an effective method of granting granular access to files and folders in a SharePoint Online or OneDrive for Business document library. For more information about using delegated scopes, see the Microsoft documentation. This script shows how to retrieve document libraries, files, and folders to create a report of SharePoint Online files. It might help you understand how to navigate site contents.
Insight like this doesn’t come easily. You’ve got to know the technology and understand how to look behind the scenes. Benefit from the knowledge and experience of the Office 365 for IT Pros team by subscribing to the best eBook covering Office 365 and the wider Microsoft 365 ecosystem.
2FSK example Simulink model to 4FSK
Hi,
I used the 2FSK example Simulink model, changed the M‑ary value to 4, and tested it on the ADALM‑PLUTO transmitter with a sample rate of 32 MHz. However, in the spectrum, I am seeing continuous harmonics. What are the recommended values for samples per symbol (SPS), samples per frame (SFS), and frequency separation?Hi,
I used the 2FSK example Simulink model, changed the M‑ary value to 4, and tested it on the ADALM‑PLUTO transmitter with a sample rate of 32 MHz. However, in the spectrum, I am seeing continuous harmonics. What are the recommended values for samples per symbol (SPS), samples per frame (SFS), and frequency separation? Hi,
I used the 2FSK example Simulink model, changed the M‑ary value to 4, and tested it on the ADALM‑PLUTO transmitter with a sample rate of 32 MHz. However, in the spectrum, I am seeing continuous harmonics. What are the recommended values for samples per symbol (SPS), samples per frame (SFS), and frequency separation? fsk, adalm-pluto MATLAB Answers — New Questions
Negative torque pump: Pressure at port A must be greater than or equal to Minimum valid pressure.
Hello everyone,
I am working on a hydraulic circuit that is driven by a motor operated by a Frequency Drive(VFD). (to simpify the model and avoid sharing confidential data, I used Test sequence with a negative torque output to simulate the VFD output) The motor control of the VFD creates some oscillations reaching negative torque values in the generated motor torque resulting in errors of the fixed displacement pump and pipe, eventually stopping the simulation.
Error:An error occurred during simulation and the simulation was terminated
Caused by:
[‘HydraulicCircuit/Solver Configuration’]: At time 3.500000, one or more assertions are triggered. See causes for specific information.
Pressure at port B must be greater than or equal to Minimum valid pressure. The assertion comes from:
Block path: HydraulicCircuit/Fixed-Displacement Pump (TL)
Assert location:
o (location information is protected)
Pressure at port A must be greater than or equal to Minimum valid pressure. The assertion comes from:
Block path: HydraulicCircuit/Pipe (TL)
Assert location:
o (location information is protected)
o (location information is protected)
I am looking for a way to make the hydraulic circuit resistant to these sudden pressure drops as they will certainly occur due to PID regulator settings of the VFD.Hello everyone,
I am working on a hydraulic circuit that is driven by a motor operated by a Frequency Drive(VFD). (to simpify the model and avoid sharing confidential data, I used Test sequence with a negative torque output to simulate the VFD output) The motor control of the VFD creates some oscillations reaching negative torque values in the generated motor torque resulting in errors of the fixed displacement pump and pipe, eventually stopping the simulation.
Error:An error occurred during simulation and the simulation was terminated
Caused by:
[‘HydraulicCircuit/Solver Configuration’]: At time 3.500000, one or more assertions are triggered. See causes for specific information.
Pressure at port B must be greater than or equal to Minimum valid pressure. The assertion comes from:
Block path: HydraulicCircuit/Fixed-Displacement Pump (TL)
Assert location:
o (location information is protected)
Pressure at port A must be greater than or equal to Minimum valid pressure. The assertion comes from:
Block path: HydraulicCircuit/Pipe (TL)
Assert location:
o (location information is protected)
o (location information is protected)
I am looking for a way to make the hydraulic circuit resistant to these sudden pressure drops as they will certainly occur due to PID regulator settings of the VFD. Hello everyone,
I am working on a hydraulic circuit that is driven by a motor operated by a Frequency Drive(VFD). (to simpify the model and avoid sharing confidential data, I used Test sequence with a negative torque output to simulate the VFD output) The motor control of the VFD creates some oscillations reaching negative torque values in the generated motor torque resulting in errors of the fixed displacement pump and pipe, eventually stopping the simulation.
Error:An error occurred during simulation and the simulation was terminated
Caused by:
[‘HydraulicCircuit/Solver Configuration’]: At time 3.500000, one or more assertions are triggered. See causes for specific information.
Pressure at port B must be greater than or equal to Minimum valid pressure. The assertion comes from:
Block path: HydraulicCircuit/Fixed-Displacement Pump (TL)
Assert location:
o (location information is protected)
Pressure at port A must be greater than or equal to Minimum valid pressure. The assertion comes from:
Block path: HydraulicCircuit/Pipe (TL)
Assert location:
o (location information is protected)
o (location information is protected)
I am looking for a way to make the hydraulic circuit resistant to these sudden pressure drops as they will certainly occur due to PID regulator settings of the VFD. hydraulic_system, thermal_liquid MATLAB Answers — New Questions
mcb_ee_pmsm_foc.slx is not getting executed ,i am getting error Could not open source package
not workingnot working not working not working MATLAB Answers — New Questions
Latency check for the simulink model.
Hello,I have created a simulink model and want to check individual blocks latency in the simulink.Some one please suggest me what is the best way to check the latency of the individual blocks and also check latency of complete model.Hello,I have created a simulink model and want to check individual blocks latency in the simulink.Some one please suggest me what is the best way to check the latency of the individual blocks and also check latency of complete model. Hello,I have created a simulink model and want to check individual blocks latency in the simulink.Some one please suggest me what is the best way to check the latency of the individual blocks and also check latency of complete model. simulink latency, block latency MATLAB Answers — New Questions
The Display block and Scope block of Simulink did not work when running external mode to tuning
As the title, I am trying to use external mode to model the PMSM board (STM32H7) to tune, I used the display block or scope but it is not working.
The image is attached below, as you see, when the switch changed between 0 and 1, the display block was always 0 while the system was working normally.
I know in external mode, we could use the data inspecter or logic analyzer which is of the tool, but it is inconvenient.
Therefore, I really would like to know how to config the MATLAB/Simulink to use these block in external mode. (I tried some ways but not work)
I use the 2024b version.
Thank you in advance for any help you can provide.
Best regards,
Raven PhamAs the title, I am trying to use external mode to model the PMSM board (STM32H7) to tune, I used the display block or scope but it is not working.
The image is attached below, as you see, when the switch changed between 0 and 1, the display block was always 0 while the system was working normally.
I know in external mode, we could use the data inspecter or logic analyzer which is of the tool, but it is inconvenient.
Therefore, I really would like to know how to config the MATLAB/Simulink to use these block in external mode. (I tried some ways but not work)
I use the 2024b version.
Thank you in advance for any help you can provide.
Best regards,
Raven Pham As the title, I am trying to use external mode to model the PMSM board (STM32H7) to tune, I used the display block or scope but it is not working.
The image is attached below, as you see, when the switch changed between 0 and 1, the display block was always 0 while the system was working normally.
I know in external mode, we could use the data inspecter or logic analyzer which is of the tool, but it is inconvenient.
Therefore, I really would like to know how to config the MATLAB/Simulink to use these block in external mode. (I tried some ways but not work)
I use the 2024b version.
Thank you in advance for any help you can provide.
Best regards,
Raven Pham simulink, external mode, scope block MATLAB Answers — New Questions
Primer: Use RBAC for Applications to Control App Use of the Mail.Send Permission
Demise of SMTP AUTH Means Potential Misuse of the Mail.Send Permission
With time slipping away as Microsoft moves to retire basic authentication for the SMTP AUTH client submission protocol from Exchange Online, tenants must update PowerShell scripts that send email using SMTP AUTH and replace the Send-MailMessage cmdlet (which uses basic authentication) with an alternative based on OAuth, In many cases, the easiest way to upgrade is to ruse the Send-MgUserMail cmdlet from the Microsoft Graph PowerShell SDK (or the underlying Graph API request). The cmdlet uses OAuth to secure its connection to an Exchange Online mailbox to submit and send email.
Send-MgUserMail depends on the Graph Mail.Send permission. In its delegated form, the permission allows a message to be sent from the mailbox of the signed-in user. The application form of Mail.Send is a high-profile permission that allows an app to send email from any mailbox. In effect, the Mail.Send application permission allows an app to impersonate any user when sending email. Mail.Read is another high-profile permission that allows apps to read content from any mailbox.
When updating scripts under time pressure, the temptation often exists to take the quick and easy path. In practice, this can lead to administrators granting scripts consent to access mailboxes without guard rails. Fortunately, a solution exists: use RBAC for Applications to restrict app access to selected mailboxes.
RBAC for Applications
Microsoft launched RBAC for Applications in December 2022. The mechanism depends on scripts being executed in app-only mode (including for Azure Automation runbooks) because RBAC for Applications uses apps as the basis for assigning permission to access Exchange Online data. Over three years on, the number of scripts that make unrestricted use of the Mail.Send permission is testament that many script developers are unaware that they should and can restrict access to mailboxes in scripts. It’s possible that a lack of knowledge is the root cause, so let’s explain how to apply RBAC for Applications to a script. Further information is available in Microsoft’s documentation.
As an example, I use the script to report Microsoft 365 service health data via email. An updated version of the script that can run in delegated or app-only mode can be downloaded from the Office 365 for IT Pros GitHub repository.
Create a Registered Application
We need an app for RBAC for Applications to work, so the first task is to create a new registered app, which I called Service Health Notifications (Figure 1). You can see that the app has consent for application permissions to read the organization directory and to read service health and message data. RBAC for Applications only controls access to Exchange Online data. For other data, apps still need consent for Graph (and perhaps other) permissions.

The app has no consent to use the Mail.Send permission, so a script that connects to the Microsoft Graph using this app cannot send email. RBAC for Applications will grant the necessary access.
Create the Service Principal
The link between RBAC for Applications and the Entra ID app is via a service principal object. This is an Exchange Online service principal rather than the Entra ID service principals that are usually discussed when referring to apps. To create the service principal, we need:
- The application identifier.
- The identifier of the Entra ID service principal for the application.
- The application’s name.
This information can be found by looking up the Entra ID service principal before creating the service principal with the New-ServicePrincipal cmdlet. You’ll need to sign into Exchange Online PowerShell as an administrator before you can create a service principal, management scope, or management role assignment:
$SP = Get-MgServicePrincipal -Filter "displayName eq 'Service Health Notifications'" New-ServicePrincipal -AppId $SP.AppId -ObjectId $SP.Id -DisplayName $SP.DisplayName DisplayName ObjectId AppId ----------- -------- ----- Service Health Notifications e6105d20-c4f6-4bc6-bdc7-7a07e6f6e242 a40e80e0-7e1b-4339-a961-d6ecbc0ec7e1
Create the Management Scope
A management scope identifies a set of mailboxes for RBAC of Applications to assign permissions over. Any of the filterable mailbox properties can be used in a management scope. Our app needs access to send email from a specific mailbox, which we can identify with its display name:
New-ManagementScope -Name "Azure Management Account" -RecipientRestrictionFilter "displayName -eq 'Azure Management Account'"
Before creating the service principal, it’s a good idea to check that the filter returns the correct objects by running the filter with the Get-Recipient cmdlet:
Get-Recipient -RecipientPreviewFilter "displayName -eq 'Azure Management Account'"| Format-Table DisplayName, PrimarySMTPAddress DisplayName PrimarySmtpAddress ----------- ------------------ Azure Management Account Azure.Management.Mailbox@office365itpros.com
Create the Management Role Assignment
A management role assignment connects an app, target mailboxes (scope), and an application permission. In our case, we want to connect the app with the management scope that we just created and the “Application Mail.Send” permission. You can see the set of available permissions supported by RBAC for Applications by running the Get-ManagementRole cmdlet:
Get-ManagementRole | Where-Object {$_.Name -like "Application *"}The New-ManagementRoleAssignment cmdlet creates the assignment to link the components together. In this example, you can see how the application identifier, permission, and management scope are specified:
New-ManagementRoleAssignment -App $SP.AppId -Role "Application Mail.Send" -CustomResourceScope "Azure Management Account"
The assignment is effective immediately. Assuming no errors, the application should now be able to send email from any of the mailboxes identified in the management scope without consent being granted for the Mail.Send permission.
Administrative Unit Support
Our example management scope uses a recipient filter to find the set of mailboxes available to the app. RBAC for Applications also supports the use of Entra ID administrative units to define the sets of resources made available through management scopes and role assignments.
A Simple Fix for Misuse of the Mail.Send Permission
Like anything else, RBAC for Applications takes a little getting used to, but it’s really quite straightforward. App, scope, and assignment combine to make the right permission available to an app for limited Exchange Online resources. That’s so much better than allowing apps to have free rein over mailbox contents. Your CEO might just agree as I’m sure they don’t fancy apps sending mail on their behalf.
Need help to write and manage PowerShell scripts for Microsoft 365, including Azure Automation runbooks? Get a copy of the Automating Microsoft 365 with PowerShell eBook, available standalone or as part of the Office 365 for IT Pros eBook bundle.
Programmatically get edge ids from geometry of femodel
I am using matlab’s pde toolbox and setup a geometry for femodel like this:
% Source – https://stackoverflow.com/q/79888928
% Posted by MiB_Coder
% Retrieved 2026-02-16, License – CC BY-SA 4.0
gd = [3 4 0 1 1 0 0 0 1 1]’; % Example: A simple square
sf = ‘S1’;
ns = (‘S1′)’;
[g,bt] = decsg(gd, sf, ns)
fe = femodel(AnalysisType="electrostatic", Geometry=g);
fe.PlanarType = "axisymmetric";
figure(1); clf;
pdegplot(fe, ‘EdgeLabels’, ‘on’, ‘FaceLabels’,’on’);
axis equal off;
I can get a diagram indicating which edge-id is assign to an edge:
The resulting geometry does not contain information, which vertices form the edges:
>> fe.Geometry
ans =
fegeometry with properties:
NumFaces: 1
NumEdges: 4
NumVertices: 4
NumCells: 0
Vertices: [4×2 double]
Mesh: []
How can I retrieve which edge id belongs to which vertices in the geometry.
How can I retrieve which edge id is where programmatically?How can I retrieve which edge id is where programmatically?I am using matlab’s pde toolbox and setup a geometry for femodel like this:
% Source – https://stackoverflow.com/q/79888928
% Posted by MiB_Coder
% Retrieved 2026-02-16, License – CC BY-SA 4.0
gd = [3 4 0 1 1 0 0 0 1 1]’; % Example: A simple square
sf = ‘S1’;
ns = (‘S1′)’;
[g,bt] = decsg(gd, sf, ns)
fe = femodel(AnalysisType="electrostatic", Geometry=g);
fe.PlanarType = "axisymmetric";
figure(1); clf;
pdegplot(fe, ‘EdgeLabels’, ‘on’, ‘FaceLabels’,’on’);
axis equal off;
I can get a diagram indicating which edge-id is assign to an edge:
The resulting geometry does not contain information, which vertices form the edges:
>> fe.Geometry
ans =
fegeometry with properties:
NumFaces: 1
NumEdges: 4
NumVertices: 4
NumCells: 0
Vertices: [4×2 double]
Mesh: []
How can I retrieve which edge id belongs to which vertices in the geometry.
How can I retrieve which edge id is where programmatically?How can I retrieve which edge id is where programmatically? I am using matlab’s pde toolbox and setup a geometry for femodel like this:
% Source – https://stackoverflow.com/q/79888928
% Posted by MiB_Coder
% Retrieved 2026-02-16, License – CC BY-SA 4.0
gd = [3 4 0 1 1 0 0 0 1 1]’; % Example: A simple square
sf = ‘S1’;
ns = (‘S1′)’;
[g,bt] = decsg(gd, sf, ns)
fe = femodel(AnalysisType="electrostatic", Geometry=g);
fe.PlanarType = "axisymmetric";
figure(1); clf;
pdegplot(fe, ‘EdgeLabels’, ‘on’, ‘FaceLabels’,’on’);
axis equal off;
I can get a diagram indicating which edge-id is assign to an edge:
The resulting geometry does not contain information, which vertices form the edges:
>> fe.Geometry
ans =
fegeometry with properties:
NumFaces: 1
NumEdges: 4
NumVertices: 4
NumCells: 0
Vertices: [4×2 double]
Mesh: []
How can I retrieve which edge id belongs to which vertices in the geometry.
How can I retrieve which edge id is where programmatically?How can I retrieve which edge id is where programmatically? pde, femodel, edge MATLAB Answers — New Questions
How to add forced displacement or oscillation into Simscape Multibody?
I’m trying conducting oscillation analysys of multibody dynamics in Simscape Multibody.
In my model, I need to add forced displacement. The figure is an example model that I want to make. In this model, the wall is moving and its displacement is oscillating. I know how to add external force in Simscape Multibody. But what I need is forced displacement like the figure.
The below figure is a model I’m making. In this model, I want to make ‘Base solid’ oscillate without external force.
Please tell me how to add forced displacement.I’m trying conducting oscillation analysys of multibody dynamics in Simscape Multibody.
In my model, I need to add forced displacement. The figure is an example model that I want to make. In this model, the wall is moving and its displacement is oscillating. I know how to add external force in Simscape Multibody. But what I need is forced displacement like the figure.
The below figure is a model I’m making. In this model, I want to make ‘Base solid’ oscillate without external force.
Please tell me how to add forced displacement. I’m trying conducting oscillation analysys of multibody dynamics in Simscape Multibody.
In my model, I need to add forced displacement. The figure is an example model that I want to make. In this model, the wall is moving and its displacement is oscillating. I know how to add external force in Simscape Multibody. But what I need is forced displacement like the figure.
The below figure is a model I’m making. In this model, I want to make ‘Base solid’ oscillate without external force.
Please tell me how to add forced displacement. simscape, multibody MATLAB Answers — New Questions
Rough Terrain in Simscape Multibody
I am trying to simulate the navigation of a vehicle over an irregular terrain in Simscape Multibody.
I would like to dynamically modify the terrain height and slope during the simulation.
Is it possible to model a terrain that translates and rotates according to a time-varying input signal, without the terrain applying accelerations or non-physical forces to the bodies in contact with it?I am trying to simulate the navigation of a vehicle over an irregular terrain in Simscape Multibody.
I would like to dynamically modify the terrain height and slope during the simulation.
Is it possible to model a terrain that translates and rotates according to a time-varying input signal, without the terrain applying accelerations or non-physical forces to the bodies in contact with it? I am trying to simulate the navigation of a vehicle over an irregular terrain in Simscape Multibody.
I would like to dynamically modify the terrain height and slope during the simulation.
Is it possible to model a terrain that translates and rotates according to a time-varying input signal, without the terrain applying accelerations or non-physical forces to the bodies in contact with it? simscape MATLAB Answers — New Questions
Exchange Online PowerShell Dumps the Credential Parameter
Old Credential Parameter Gets the Bullet in June 2026
Much as I support the efforts to eradicate single-factor authentication from Microsoft 365, especially for administrative purposes, the February 12, 2026, announcement about the deprecation of the Credential parameter in Exchange Online PowerShell left me cold.
The logic underpinning the announcement is undeniable. Microsoft 365 is gradually turning the screw on administrators to force the adoption of multifactor authentication. The process started a few years ago and has gradually spread over the Microsoft 365, Azure, and Entra administrative interfaces.
Username and Password Credentials
The Credential parameter for the Connect-ExchangeOnline cmdlet accepts a PSCredential object containing the username and password for an account and uses the credentials (Figure 1) to connect to Exchange Online in an authentication flow called Resource Owner Password Credentials (ROPC). Even though ROPC is supported by OAuth, it doesn’t support multifactor authentication and is therefore just about as secure as watching someone manually enter a username and password to run an interactive Exchange Online PowerShell session.

In addition, the Microsoft Authentication Library (MSAL), the component used by applications to acquire access tokens from Entra ID has deprecated ROPC. MSAL is heavily used across Microsoft 365, so when an important component removes support for a capability, it’s time for software that depends on the capability to get rid of it too. And that’s what’s happening here.
I doubt that the change will make any difference to administrators who run interactive sessions with the Exchange Online management module. Their administrative accounts use multifactor authentication (or should) and I can’t see any administrator signing into Exchange Online PowerShell with a credentials object.
Background Jobs Might be Impacted
Where the change could impact operations is in background jobs based on the Exchange Online management module, especially jobs which run scripts written a few years ago and run by the Windows Task Scheduler. I’ve said for years that people should avoid using the Windows Task Scheduler to run jobs. Better and much more secure alternatives exist, like Azure Automation runbooks. Executing Exchange Online runbooks on a schedule managed by Azure Automation is more secure and reliable than any job managed by Task Scheduler.
Some companies continue to insist on banging the drum for the old approach by pumping out example scripts that use Task Scheduler. I suspect that they do this because Task Scheduler is easier for people to set up and configure. Azure Automation is more complex, but it’s like driving a car: two months after you start using Azure Automation to run Exchange Online scripts, you’ll wonder why you thought it so complicated when you started.
Cost is the other fear I hear about moving work to Azure Automation. It’s true that Azure Automation requires a paid Azure subscription with a valid credit card, but the free tier offers 500 minutes of job run time per month. You can run a lot of scripts in 500 minutes, and the cost thereafter is $0.002/minute.
Change and Opportunity
Change brings opportunity, or so it’s said. In this case, the change is the removal of an old parameter that’s well past its best-by date and the opportunity is to find and revamp scripts that use the soon-to-be-deprecated parameter. Move to a more secure form of authentication (the gold standard for unattended jobs is Azure Automation with managed identities) and take the chance to review the code to improve its performance and robustness.
The Changeover
Microsoft says that the change is effective in versions of the Exchange Online management PowerShell module released after June 2026. This does not mean that the Credential parameter will stop working on July 1, 2026. It does mean that if you update to a new version of the module after June 2026, you can expect to find the parameter is missing. It also means that at some time in the future Microsoft will remove the server-side code that processes the ROPC authentication flow for Exchange Online. At this point, the parameter will cease working even if you use an older version of the module where the parameter is still available.
With so much goodness flowing from the deprecation of an old and insecure component, why I am unhappy? The simple reason is that I’d prefer if the developers working on Microsoft 365 PowerShell modules dedicated their time to resolve the infuriating assembly clashes between Exchange Online, Teams, and the Microsoft Graph PowerShell SDK. I guess that goal doesn’t count as high as elimination of old components and the subsequent reduction of engineering costs. Oh well…
Verification code not receiving from matlab while creating new account using MY BITS Gmail account
verification code from mathworks matlab not getting while creating new account using MY BITS Gmail accountverification code from mathworks matlab not getting while creating new account using MY BITS Gmail account verification code from mathworks matlab not getting while creating new account using MY BITS Gmail account verification code not receiving from matlab MATLAB Answers — New Questions
How to port the ZCU208 reference design to a custom ZU48DR-based board
I am currently working with a MathWorks reference example and we were able to run this example on the ZCU208 evaluation board, and it works correctly on that platform.
However, we now need to run the same example on our custom hardware board, which is based on a Zynq UltraScale+ RFSOC (ZU48DR) device.
We would like to understand whether it is possible to port the ZCU208 reference design to a custom ZU48DR-based board.
We attempted to create a custom board using the workflow described in the MathWorks documentation:
https://in.mathworks.com/help/soc/ug/create-board-support-framework.html
However, at the very first step, MATLAB reports that there is no available RFSOC board support. It says Only the following boards are supported – Zynq-7000 SoC and Zynq UltraScale+ MPSoC. There is no option available for Zynq UltraScale+ RFSOC.
Could you please clarify if MATLAB currently provides official support for creating custom RFSoC boards? and Is there a recommended method to port the ZCU208 reference workflow to a custom ZU48DR board?
Additionally, we observed that when running the workflow on a ZCU111 board, the rftool configures the clocks(for CLK 104 board) and initializes the RFDC IP.
Is it possible for us to gain access to or enable rftool functionality when using custom RFSOC board?I am currently working with a MathWorks reference example and we were able to run this example on the ZCU208 evaluation board, and it works correctly on that platform.
However, we now need to run the same example on our custom hardware board, which is based on a Zynq UltraScale+ RFSOC (ZU48DR) device.
We would like to understand whether it is possible to port the ZCU208 reference design to a custom ZU48DR-based board.
We attempted to create a custom board using the workflow described in the MathWorks documentation:
https://in.mathworks.com/help/soc/ug/create-board-support-framework.html
However, at the very first step, MATLAB reports that there is no available RFSOC board support. It says Only the following boards are supported – Zynq-7000 SoC and Zynq UltraScale+ MPSoC. There is no option available for Zynq UltraScale+ RFSOC.
Could you please clarify if MATLAB currently provides official support for creating custom RFSoC boards? and Is there a recommended method to port the ZCU208 reference workflow to a custom ZU48DR board?
Additionally, we observed that when running the workflow on a ZCU111 board, the rftool configures the clocks(for CLK 104 board) and initializes the RFDC IP.
Is it possible for us to gain access to or enable rftool functionality when using custom RFSOC board? I am currently working with a MathWorks reference example and we were able to run this example on the ZCU208 evaluation board, and it works correctly on that platform.
However, we now need to run the same example on our custom hardware board, which is based on a Zynq UltraScale+ RFSOC (ZU48DR) device.
We would like to understand whether it is possible to port the ZCU208 reference design to a custom ZU48DR-based board.
We attempted to create a custom board using the workflow described in the MathWorks documentation:
https://in.mathworks.com/help/soc/ug/create-board-support-framework.html
However, at the very first step, MATLAB reports that there is no available RFSOC board support. It says Only the following boards are supported – Zynq-7000 SoC and Zynq UltraScale+ MPSoC. There is no option available for Zynq UltraScale+ RFSOC.
Could you please clarify if MATLAB currently provides official support for creating custom RFSoC boards? and Is there a recommended method to port the ZCU208 reference workflow to a custom ZU48DR board?
Additionally, we observed that when running the workflow on a ZCU111 board, the rftool configures the clocks(for CLK 104 board) and initializes the RFDC IP.
Is it possible for us to gain access to or enable rftool functionality when using custom RFSOC board? custom zu48dr-based board MATLAB Answers — New Questions
Where is the Save icon (not Save As) in a figure (.fig) R2025b Matlab
Only see Save As and cannot find where Save icon is.Only see Save As and cannot find where Save icon is. Only see Save As and cannot find where Save icon is. save a figure MATLAB Answers — New Questions
Unable to get polarbubblechart to show all equal diameter bubbles
I am unable to get "polarbubblechart" to have 3 bubbles all have the same correct size.
All the same size are always are big and unusable. If any one is different the plot is unusable. I need to have all bubbles the same size and controllable. See code below.
What am I missing?
ra = 1
x = pi*ra^2
theta = [0 pi/4 pi/2]
theta = theta.’
rho = [10; 10; 10]
sz = [x x x]
%h.SizeData = sz
h = polarbubblechart(theta,rho,sz)
h.SizeData = sz
ABP = 1
ra = .5
x = pi*ra^2
theta = [0 pi/4 pi/2]
theta = theta.’
rho = [10; 10; 10]
sz = [1 x x]
%h.SizeData = sz
h = polarbubblechart(theta,rho,sz)
h.SizeData = sz
ABP = 1I am unable to get "polarbubblechart" to have 3 bubbles all have the same correct size.
All the same size are always are big and unusable. If any one is different the plot is unusable. I need to have all bubbles the same size and controllable. See code below.
What am I missing?
ra = 1
x = pi*ra^2
theta = [0 pi/4 pi/2]
theta = theta.’
rho = [10; 10; 10]
sz = [x x x]
%h.SizeData = sz
h = polarbubblechart(theta,rho,sz)
h.SizeData = sz
ABP = 1
ra = .5
x = pi*ra^2
theta = [0 pi/4 pi/2]
theta = theta.’
rho = [10; 10; 10]
sz = [1 x x]
%h.SizeData = sz
h = polarbubblechart(theta,rho,sz)
h.SizeData = sz
ABP = 1 I am unable to get "polarbubblechart" to have 3 bubbles all have the same correct size.
All the same size are always are big and unusable. If any one is different the plot is unusable. I need to have all bubbles the same size and controllable. See code below.
What am I missing?
ra = 1
x = pi*ra^2
theta = [0 pi/4 pi/2]
theta = theta.’
rho = [10; 10; 10]
sz = [x x x]
%h.SizeData = sz
h = polarbubblechart(theta,rho,sz)
h.SizeData = sz
ABP = 1
ra = .5
x = pi*ra^2
theta = [0 pi/4 pi/2]
theta = theta.’
rho = [10; 10; 10]
sz = [1 x x]
%h.SizeData = sz
h = polarbubblechart(theta,rho,sz)
h.SizeData = sz
ABP = 1 polarbubblechart, size MATLAB Answers — New Questions
Exporting a live script as a pdf renders tables with an inconsistent format
Hi everyone,
I’m trying to export a live script to a PDF for one of my assignments, but the format of tables that MATLAB renders is inconsistent. With some tables, each numerical value is displayed on one line, while with others, the last digit of the number is split on a second line within the cell. In both cases, the table does not fill the entire page space. I see that I can adjust the column widths manually in the live script, but I was wondering if there is a more succinct way to render the tables so that the numbers are not split across multiple lines.
Attached are screenshots of the correct and incorrectly formatted tables, as well as my export settings.
Any help is appreciated.Hi everyone,
I’m trying to export a live script to a PDF for one of my assignments, but the format of tables that MATLAB renders is inconsistent. With some tables, each numerical value is displayed on one line, while with others, the last digit of the number is split on a second line within the cell. In both cases, the table does not fill the entire page space. I see that I can adjust the column widths manually in the live script, but I was wondering if there is a more succinct way to render the tables so that the numbers are not split across multiple lines.
Attached are screenshots of the correct and incorrectly formatted tables, as well as my export settings.
Any help is appreciated. Hi everyone,
I’m trying to export a live script to a PDF for one of my assignments, but the format of tables that MATLAB renders is inconsistent. With some tables, each numerical value is displayed on one line, while with others, the last digit of the number is split on a second line within the cell. In both cases, the table does not fill the entire page space. I see that I can adjust the column widths manually in the live script, but I was wondering if there is a more succinct way to render the tables so that the numbers are not split across multiple lines.
Attached are screenshots of the correct and incorrectly formatted tables, as well as my export settings.
Any help is appreciated. live script, table, linux, pdf, formatting, rendering, export MATLAB Answers — New Questions
How do I include a header file in MATLAB code?
I’m quite new to MATLAB and I’m trying to make a header file and include it in my MATLAB code. The header file contains a lot of constants and calculations that would be needed in the main code. I’m not sure first of all though how to save the header file, (should it be .m?) and also what’s the line of code needed to include it in a MATLAB code. I’m only getting answers for including C/C++ header files in MATLAB.
Apologies if this is a really basic question!I’m quite new to MATLAB and I’m trying to make a header file and include it in my MATLAB code. The header file contains a lot of constants and calculations that would be needed in the main code. I’m not sure first of all though how to save the header file, (should it be .m?) and also what’s the line of code needed to include it in a MATLAB code. I’m only getting answers for including C/C++ header files in MATLAB.
Apologies if this is a really basic question! I’m quite new to MATLAB and I’m trying to make a header file and include it in my MATLAB code. The header file contains a lot of constants and calculations that would be needed in the main code. I’m not sure first of all though how to save the header file, (should it be .m?) and also what’s the line of code needed to include it in a MATLAB code. I’m only getting answers for including C/C++ header files in MATLAB.
Apologies if this is a really basic question! header files, matlab, extension MATLAB Answers — New Questions
Reliably resize uifigure – sometimes set Position is ignored under test automation
Hi,
I’m facing a strange issue, where resizing of a uifigure doesn’t work consistently under testautomation stress.
Maybe someone has a tip for me, is there a better way to ensure that fig.Postion = [something] is visually applied, than drawnow/pause?
I have set of complicated dialogs, where frames needs to be extended to accomodate additional controls, when user clicks something. Everything works OK for manual testing, but starts failing on test automation.
I have a class object, representing the dialog, and it has property "mainFigure" – uifigure. For resizing of it (extra space on the lower part) I’ve implemented method
function pos = increaseMainFigureHeight(obj, increase)
pos = obj.mainFigure.Position;
% move bottom
pos(2) = pos(2) – increase;
% and increase the height
pos(4) = pos(4) + increase;
obj.mainFigure.Position = pos; <<<
% Flush callbacks and allow layout/window to settle before asserting position
desiredPos = pos;
for k = 1:60
drawnow;
if isequal(obj.mainFigure.Position, desiredPos) <<<<< this read may return different value!
disp([‘increase ok: ‘ num2str(k)]);
break;
end
pause(0.05);
end
if k>=60
Messaging.debug(‘Figure height update not solved in 60 rounds’, level=Messaging.Warning);
end
end
And very similar for decrease the height.
Under manual conditions the "disp([‘increase ok: ‘ num2str(k)]);" prints always 1 – after setting new positions and drawnow, reading of the position will correspond to the positions, which were just set!
However, as soon as I get it under testautomation:
classdef ReusableDialogTest < matlab.unittest.TestCase
methods (Test)
function testIncreaseDecreaseMainFigureHeight(testCase)
dlg = dialogs.AIConfigDialog(); % Just create some dialog, inherited from ReusableDialog
clp = onCleanup(@() delete(dlg));
increaseSize = 100;
initialPos = dlg.mainFigure.Position;
extendedPosition = initialPos;
extendedPosition(2) = initialPos(2) – increaseSize;
extendedPosition(4) = initialPos(4) + increaseSize;
for repeat = 1:20
dlg.increaseMainFigureHeight(increaseSize);
testCase.assertEqual(dlg.mainFigure.Position, extendedPosition);
dlg.decreaseMainFigureHeight(increaseSize);
testCase.assertEqual(dlg.mainFigure.Position, initialPos);
end
end
end
end
I’m starting getting problems.
Note: I’ve inserted the loop for 20 repetitions, just to make the issue more visible.
Typical output for running the test will look like:
Running ReusableDialogTest
Setting up ReusableDialogTest
Done setting up ReusableDialogTest in 0 seconds
Running ReusableDialogTest/testIncreaseDecreaseMainFigureHeight
increase ok: 3
decrease ok: 1
increase ok: 2
decrease ok: 1
increase ok: 2
decrease ok: 2
…
So, sometimes several rounds of drawnow/pause are required.
But sometimes it stucks completely. In following case decrease didn’t succeed with 60 hops of drawnow/pause:
Running ReusableDialogTest
Setting up ReusableDialogTest
Done setting up ReusableDialogTest in 0 seconds
Running ReusableDialogTest/testIncreaseDecreaseMainFigureHeight
increase ok: 3
Warning: Figure height update not solved in 60 rounds
================================================================================
Assertion failed in ReusableDialogTest/testIncreaseDecreaseMainFigureHeight and it did not run to completion.
———————
Framework Diagnostic:
———————
assertEqual failed.
–> The numeric values are not equal using "isequaln".
–> Failure table:
Index Actual Expected Error RelativeError
_____ ______ ________ _____ __________________
2 478 578 -100 -0.173010380622837
4 252 152 100 0.657894736842105
Actual Value:
729 478 583 252
Expected Value:
729 578 583 152
——————
Stack Information:Hi,
I’m facing a strange issue, where resizing of a uifigure doesn’t work consistently under testautomation stress.
Maybe someone has a tip for me, is there a better way to ensure that fig.Postion = [something] is visually applied, than drawnow/pause?
I have set of complicated dialogs, where frames needs to be extended to accomodate additional controls, when user clicks something. Everything works OK for manual testing, but starts failing on test automation.
I have a class object, representing the dialog, and it has property "mainFigure" – uifigure. For resizing of it (extra space on the lower part) I’ve implemented method
function pos = increaseMainFigureHeight(obj, increase)
pos = obj.mainFigure.Position;
% move bottom
pos(2) = pos(2) – increase;
% and increase the height
pos(4) = pos(4) + increase;
obj.mainFigure.Position = pos; <<<
% Flush callbacks and allow layout/window to settle before asserting position
desiredPos = pos;
for k = 1:60
drawnow;
if isequal(obj.mainFigure.Position, desiredPos) <<<<< this read may return different value!
disp([‘increase ok: ‘ num2str(k)]);
break;
end
pause(0.05);
end
if k>=60
Messaging.debug(‘Figure height update not solved in 60 rounds’, level=Messaging.Warning);
end
end
And very similar for decrease the height.
Under manual conditions the "disp([‘increase ok: ‘ num2str(k)]);" prints always 1 – after setting new positions and drawnow, reading of the position will correspond to the positions, which were just set!
However, as soon as I get it under testautomation:
classdef ReusableDialogTest < matlab.unittest.TestCase
methods (Test)
function testIncreaseDecreaseMainFigureHeight(testCase)
dlg = dialogs.AIConfigDialog(); % Just create some dialog, inherited from ReusableDialog
clp = onCleanup(@() delete(dlg));
increaseSize = 100;
initialPos = dlg.mainFigure.Position;
extendedPosition = initialPos;
extendedPosition(2) = initialPos(2) – increaseSize;
extendedPosition(4) = initialPos(4) + increaseSize;
for repeat = 1:20
dlg.increaseMainFigureHeight(increaseSize);
testCase.assertEqual(dlg.mainFigure.Position, extendedPosition);
dlg.decreaseMainFigureHeight(increaseSize);
testCase.assertEqual(dlg.mainFigure.Position, initialPos);
end
end
end
end
I’m starting getting problems.
Note: I’ve inserted the loop for 20 repetitions, just to make the issue more visible.
Typical output for running the test will look like:
Running ReusableDialogTest
Setting up ReusableDialogTest
Done setting up ReusableDialogTest in 0 seconds
Running ReusableDialogTest/testIncreaseDecreaseMainFigureHeight
increase ok: 3
decrease ok: 1
increase ok: 2
decrease ok: 1
increase ok: 2
decrease ok: 2
…
So, sometimes several rounds of drawnow/pause are required.
But sometimes it stucks completely. In following case decrease didn’t succeed with 60 hops of drawnow/pause:
Running ReusableDialogTest
Setting up ReusableDialogTest
Done setting up ReusableDialogTest in 0 seconds
Running ReusableDialogTest/testIncreaseDecreaseMainFigureHeight
increase ok: 3
Warning: Figure height update not solved in 60 rounds
================================================================================
Assertion failed in ReusableDialogTest/testIncreaseDecreaseMainFigureHeight and it did not run to completion.
———————
Framework Diagnostic:
———————
assertEqual failed.
–> The numeric values are not equal using "isequaln".
–> Failure table:
Index Actual Expected Error RelativeError
_____ ______ ________ _____ __________________
2 478 578 -100 -0.173010380622837
4 252 152 100 0.657894736842105
Actual Value:
729 478 583 252
Expected Value:
729 578 583 152
——————
Stack Information: Hi,
I’m facing a strange issue, where resizing of a uifigure doesn’t work consistently under testautomation stress.
Maybe someone has a tip for me, is there a better way to ensure that fig.Postion = [something] is visually applied, than drawnow/pause?
I have set of complicated dialogs, where frames needs to be extended to accomodate additional controls, when user clicks something. Everything works OK for manual testing, but starts failing on test automation.
I have a class object, representing the dialog, and it has property "mainFigure" – uifigure. For resizing of it (extra space on the lower part) I’ve implemented method
function pos = increaseMainFigureHeight(obj, increase)
pos = obj.mainFigure.Position;
% move bottom
pos(2) = pos(2) – increase;
% and increase the height
pos(4) = pos(4) + increase;
obj.mainFigure.Position = pos; <<<
% Flush callbacks and allow layout/window to settle before asserting position
desiredPos = pos;
for k = 1:60
drawnow;
if isequal(obj.mainFigure.Position, desiredPos) <<<<< this read may return different value!
disp([‘increase ok: ‘ num2str(k)]);
break;
end
pause(0.05);
end
if k>=60
Messaging.debug(‘Figure height update not solved in 60 rounds’, level=Messaging.Warning);
end
end
And very similar for decrease the height.
Under manual conditions the "disp([‘increase ok: ‘ num2str(k)]);" prints always 1 – after setting new positions and drawnow, reading of the position will correspond to the positions, which were just set!
However, as soon as I get it under testautomation:
classdef ReusableDialogTest < matlab.unittest.TestCase
methods (Test)
function testIncreaseDecreaseMainFigureHeight(testCase)
dlg = dialogs.AIConfigDialog(); % Just create some dialog, inherited from ReusableDialog
clp = onCleanup(@() delete(dlg));
increaseSize = 100;
initialPos = dlg.mainFigure.Position;
extendedPosition = initialPos;
extendedPosition(2) = initialPos(2) – increaseSize;
extendedPosition(4) = initialPos(4) + increaseSize;
for repeat = 1:20
dlg.increaseMainFigureHeight(increaseSize);
testCase.assertEqual(dlg.mainFigure.Position, extendedPosition);
dlg.decreaseMainFigureHeight(increaseSize);
testCase.assertEqual(dlg.mainFigure.Position, initialPos);
end
end
end
end
I’m starting getting problems.
Note: I’ve inserted the loop for 20 repetitions, just to make the issue more visible.
Typical output for running the test will look like:
Running ReusableDialogTest
Setting up ReusableDialogTest
Done setting up ReusableDialogTest in 0 seconds
Running ReusableDialogTest/testIncreaseDecreaseMainFigureHeight
increase ok: 3
decrease ok: 1
increase ok: 2
decrease ok: 1
increase ok: 2
decrease ok: 2
…
So, sometimes several rounds of drawnow/pause are required.
But sometimes it stucks completely. In following case decrease didn’t succeed with 60 hops of drawnow/pause:
Running ReusableDialogTest
Setting up ReusableDialogTest
Done setting up ReusableDialogTest in 0 seconds
Running ReusableDialogTest/testIncreaseDecreaseMainFigureHeight
increase ok: 3
Warning: Figure height update not solved in 60 rounds
================================================================================
Assertion failed in ReusableDialogTest/testIncreaseDecreaseMainFigureHeight and it did not run to completion.
———————
Framework Diagnostic:
———————
assertEqual failed.
–> The numeric values are not equal using "isequaln".
–> Failure table:
Index Actual Expected Error RelativeError
_____ ______ ________ _____ __________________
2 478 578 -100 -0.173010380622837
4 252 152 100 0.657894736842105
Actual Value:
729 478 583 252
Expected Value:
729 578 583 152
——————
Stack Information: matlab gui, matlab, gui MATLAB Answers — New Questions









