Connecting the robot car to Azure AI Foundry

image

If you have been following along you will know that I’ve connected a robot car to both a local LLM and cloud based Gemini. The last iteration is here:

https://blog.ciaopslabs.com/2026/07/18/controlling-a-robot-car-with-ai/

I decided that I should connect the car to Azure AI Foundry because there are so many more models available as well as everything else that comes with Azure.

Screenshot 2026-07-19 091107

So I set up a simple Foundry project

Step 1: Create an Azure AI Foundry Project

  1. Browse to Azure AI Foundry:

    Azure AI Foundry

  2. Sign in with your Azure account.
  3. Select:
    • Create Project
    • Project Name:
      RobotNavigation
      
  4. Create or select:
    • Azure Subscription
    • Resource Group
    • Azure AI Services Resource
  5. Wait for deployment to complete.

 


Step 2: Deploy a Model

Within your Foundry project:

  1. Open:
    Model Catalog
    
  2. Deploy:
    • GPT-5-mini
    • GPT-5.1-mini
    • GPT-4.1-mini

For a robot car:

GPT-5-mini

is usually sufficient and inexpensive.


Step 3: Obtain Connection Details

From Foundry copy:

Endpoint URL

API Key

Model Name

 

C++

#define FOUNDRY_RESPONSES_URL \

“https://robot-navigation-resource.services.ai.azure.com/openai/v1/responses”

#define FOUNDRY_MODEL “gpt-5-mini”

 

The recommendation was the use the gpt-5-mini model, so I plugged it into the existing code, made a few improvements and ended up with this:

https://github.com/directorcia/Azure/blob/master/Iot/LLM/llm-foundry.ino

My observation is that the navigate is generally better but the delays are longer when it has to ‘thinlk’ (aka go to the LLM). This has to do with the size of model, basically gpt-5-mini vs gemini3-flash.

So, the lesson here is I need the smallest possible model for the job. For now I’ll stick with gpt-5-mini.

So more research indicates that I shoudl probably offload more processes to the local device and only the LLM at a much higher level. A better plan seems to bei instead of asking the LLM to invent a manoeuvre plan, ask it to choose from local candidate plans you already created.

So let me go and try that now.

 

 

Leave a comment