Full ALPR Database System for Blue Iris!

I'm trying to get this ALPR Database installed for the first time on Windows. I followed all the instructions, but it doesn't look like the information is getting to the localhost:3000 server.

I noticed the following message in the Blue Iris logs. Is the Web: No stream: 400 indicating the problem?

View attachment 234034

I think you might get more help if you provided some details about your setup.
 
I'm not sure what details are needed. I've got a BI setup with the basic ALPR feature seemingly working fine in BI. Now I'm trying to get this ALPR database going. Nothing is making it into the database.

I have output the JSON to a text file to see what's being sent to the Database server. I'm seeing the following:

[{"api":"objects","found":{"message":"Found car, person, truck","count":3,"predictions":[{"confidence":0.5956259965896606,"label":"car","x_min":665,"y_min":0,"x_max":1003,"y_max":348},{"confidence":0.6272252202033997,"label":"person","x_min":1285,"y_min":3,"x_max":1377,"y_max":164},{"confidence":0.8179850578308105,"label":"truck","x_min":0,"y_min":4,"x_max":686,"y_max":455}],"success":true,"processMs":1405,"inferenceMs":1405,"moduleId":"ObjectDetectionYOLOv5-6.2","moduleName":"Object Detection (YOLOv5 6.2)","code":200,"command":"detect","requestId":"bc13158c-554b-445b-b883-4fa9053ce464","inferenceDevice":"CPU","analysisRoundTripMs":1644,"processedBy":"localhost","timestampUTC":"Tue, 09 Dec 2025 13:21:12 GMT"}},{"api":"license-plate","found":{"message":"Found DayPlate","count":1,"predictions":[{"confidence":0.8896306157112122,"label":"DayPlate","x_min":787,"y_min":215,"x_max":871,"y_max":266}],"success":true,"processMs":719,"inferenceMs":718,"moduleId":"ObjectDetectionYOLOv5-6.2","moduleName":"Object Detection (YOLOv5 6.2)","code":200,"command":"custom","requestId":"d3b616aa-e274-4b55-9b02-46b5e48056f0","inferenceDevice":"CPU","analysisRoundTripMs":1745,"processedBy":"localhost","timestampUTC":"Tue, 09 Dec 2025 13:21:13 GMT"}},{"api":"alpr","found":{"success":true,"processMs":716,"inferenceMs":691,"predictions":[{"confidence":0.9084706008434296,"label":"Plate: CLMTE 172","plate":"CLMTE 172","x_min":787,"y_min":215,"x_max":871,"y_max":266}],"message":"Found Plate: CLMTE 172","moduleId":"ALPR","moduleName":"License Plate Reader","code":200,"command":"alpr","requestId":"d193c538-f08e-4d6f-b93d-8c6a4cc32ad8","inferenceDevice":"CPU","analysisRoundTripMs":2435,"processedBy":"localhost","timestampUTC":"Tue, 09 Dec 2025 13:21:16 GMT"}}]

If I look in the alpr logs on the server, I'm seeing errors such as below.....


at async NextNodeServer.renderPageComponent (/app/node_modules/next/dist/server/base-server.js:2240:24)

at async NextNodeServer.renderToResponseImpl (/app/node_modules/next/dist/server/base-server.js:2278:32) {

length: 487,

severity: 'ERROR',

code: '23502',

detail: 'Failing row contains (null, CLMT 172, null, images/2025/12/09/CLMT 172_1765287100986_b8ff2292.jpg, thumbnails/2025/12/09/CLMT 172_1765287100986_b8ff2292_thumb.jpg, 2025-12-09 08:31:26.215-05, 2025-12-09 08:31:41.022893-05, LPRAI, ui3.htm?rec=212871517781119-0&cam=LPRAI, null, {789,220,870,263}, null, 0.98, null, f).',

hint: undefined,

position: undefined,

internalPosition: undefined,

internalQuery: undefined,

where: undefined,

schema: 'public',

table: 'plate_reads',

column: 'id',

dataType: undefined,

constraint: undefined,

file: 'execMain.c',

line: '1962',

routine: 'ExecConstraints'

}

POST /api/plate-reads

Error processing request: SyntaxError: Unexpected token ',', ...""ai_dump":, "Image":"... is not valid JSON

at JSON.parse (<anonymous>)

at async d (/app/.next/server/app/api/plate-reads/route.js:1:4138)

at async te.do (/app/node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js:18:17826)

at async te.handle (/app/node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js:18:22492)

at async doRender (/app/node_modules/next/dist/server/base-server.js:1455:42)

POST /api/plate-reads

Error processing request: SyntaxError: Unexpected token ',', ...""ai_dump":, "Image":"... is not valid JSON

at JSON.parse (<anonymous>)

at async d (/app/.next/server/app/api/plate-reads/route.js:1:4138)

at async te.do (/app/node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js:18:17826)

at async te.handle (/app/node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js:18:22492)

at async doRender (/app/node_modules/next/dist/server/base-server.js:1455:42)
 
I'm running BI 5.9.9.73

I'm running everything on the same computer.

My On Alert string is { "ai_dump":&JSON, "Image":"&ALERT_JPEG", "camera":"&CAM", "ALERT_PATH": "&ALERT_PATH", "ALERT_CLIP": "&ALERT_CLIP", "timestamp":"&ALERT_TIME" }
 
I'm running BI 5.9.9.73

I'm running everything on the same computer.

My On Alert string is { "ai_dump":&JSON, "Image":"&ALERT_JPEG", "camera":"&CAM", "ALERT_PATH": "&ALERT_PATH", "ALERT_CLIP": "&ALERT_CLIP", "timestamp":"&ALERT_TIME" }

I'm not sure if it matters, but you seem to have some spaces between the JSON pairs, maybe try removing those and see if it helps? Other than that, your string looks correct to me.

Add alert list set to DB only should cause any issues, it will still make the on alert call.
 
  • Like
Reactions: Spooling
I just noticed that I actually see thumbnails and photos in the ALPR folders, so it looks like data is making it to the database, but nothing shoes up on the dashboard.

I see .jpgs in these folders

storage/thumbnails/2025/12/9
storage/images/2025/12/9
 
I just noticed that I actually see thumbnails and photos in the ALPR folders, so it looks like data is making it to the database, but nothing shoes up on the dashboard.

I see .jpgs in these folders

storage/thumbnails/2025/12/9
storage/images/2025/12/9

Can you try turning off object detection? I had a similar issue, I believe it was caused by either a bug in BI or the database.
I worked around it by turning off objection.
 
BTW: I opened up one of the images I see in the storage folder and it looks fine, with the overlay of the license plate burned into the image. So all that seems to be working fine. The dashboard however shows like there's no activity.
 
It looks like BI is sending the right data to the dashboard, but it can't write the data to the database. Did you install this with the install script? Did it give you any warnings or errors? Maybe the schema is an older version?
 
It looks like BI is sending the right data to the dashboard, but it can't write the data to the database. Did you install this with the install script? Did it give you any warnings or errors? Maybe the schema is an older version?

I followed all the directions for a new install. I didn't notice any errors. Would there be any install logs?

I see this at the start of the schema file.

--
-- PostgreSQL database dump
--

-- Dumped from database version 13.16 (Debian 13.16-1.pgdg120+1)
-- Dumped by pg_dump version 13.16 (Debian 13.16-1.pgdg120+1)
 
The errors would probably have been sent to the console during the install.

You can try to get on the console of your postgres database and see if you can drop the database and recreate it using the schema on github.


dropdb -U postgres postgres
psql -d postgres -U postgres -f schema.sql

There were some database issues a few versions ago with mismatched schemas, but Charlie re-wrote the installation script and I think those are pretty rare these days, so it's a long shot that recreating the DB would help.