×

INDI Library v2.0.7 is Released (01 Apr 2024)

Bi-monthly release with minor bug fixes and improvements

Experiences with Celestron NexImage cameras?

  • Posts: 161
  • Thank you received: 39
I've looked at cameras, and I have seen a few deals on NexImage cameras lately which look on the surface like they'd be good deals. However, I can find almost nothing about how well, or poorly they perform under Linux and INDI. The few that I do find either seem to refer to the old ones, with a Phillips chip. With Linux, so often things are either: No mention, because you plug it in and have 0 problems, or no mention, because no one has ever looked at it.

So I'm wondering if anyone has a NexImage, and if so, which one, and how well do they function? I'm guessing they'd be v4l devices, but based on a few posts on the internet I could find. It looks like the original color one works fine.

So if people could comment on that it would help me, or someone else searching the internet before asking questions.
Models, that I'm aware of:
NexImage Solar System Imager Model: 93709 (Sensor: ??, can't find it on Celestron's site, from comments elsewhere seems to be a Phillips chip also used in webcams?)
NexImage Burst Color Model: 95518 (Aptina AR0132 color sensor)
NexImage Burst Monochrome Model: 95519 (Aptina AR0132 mono sensor)
NexImage 5 Model: 93711 (Micron MT9P031, Some reference I can no longer find, I saw that it worked with the QHY5 drivers? Same chip as the QHY5P-II-M)
NexImage 10 Model: 93708 (ON Semi MT9J003 Color CMOS, USB 3)

(Useful reference: s3.amazonaws.com/celestron-site-marketin...ras+Compare_2017.pdf because of this, and having some technical details, I'll mention the models of Skyris too, in case that goes away, and some dead forum post is useful)

Skyris 132C Model: 95508 (Aptina AR0132 color, USB 3)
Skyris 132M Model: 95509 (Aptina AR0132 mono, USB 3)
Skyris 236C Model: 95506 (Sony IMX236LQJ color, USB 3)
Skyris 236M Model: 95507 (Sony IMX236LQJ mono, USB 3)
5 years 11 months ago #25367

Please Log in or Create an account to join the conversation.

  • Posts: 161
  • Thank you received: 39
I did find a seemingly great deal on a NexImage 5, so I did get it.

Here is the USB ID:
Bus 003 Device 055: ID 199e:8207 The Imaging Source Europe GmbH

Based on the driver package prior to seeing it, I was able to track back it, and most other Celestron cameras back to The Imaging Source. Which lead me to here: github.com/TheImagingSource/tiscamera/wi...USB-2.0-CMOS-Cameras

I followed that procedure, with the commands in bold, and the serial number replaced with <SERIAL>
sudo ./firmware-update -l

Found 1 device(s).

Name - ID - Serialnumber
NexImage 5 - 199e:8207 - <SERIAL>
sudo ./firmware-update -id <SERIAL>

Device manufacturer: Celestron
Product name: NexImage 5
Serial number: <SERIAL>
VendorID:ProductID: 199e:8207
Firmware version: 129
UVC mode is: off
Camera EEPROM size: 32768

sudo ./firmware-update -ud <SERIAL> -f ../../../data/firmware/usb2/dfk72uc02_3012.euvc

!!! Attention !!!
This action could break your camera.

Do you really want to proceed? [y/N] y
Firmware Size: 19968 EEPROM Size: 32768
100 %

Upload successful!
Please reconnect your camera.

sudo ./firmware-update -id <SERIAL>

Device manufacturer: Celestron
Product name: NexImage 5
Serial number: <SERIAL>
VendorID:ProductID: 199e:8207
Firmware version: 196
UVC mode is: on
Camera EEPROM size: 32768


Following that, the camera worked, and at low exposure time, gave me a great picture of some garden flowers, along with insect, via a Celestron First Scope Telescope (using v4l2 and guvview. A 76mm/300mm FL telescope. I'd see about a picture of stars, but there's the issue of these things called clouds that show up as an extra on seemingly any astronomy related purchase. This one came with a very large free package of wind as well!

Unforuntely, INDI doesn't seem to be as cooperative as guvcview.

This appears to be because of the formats supported:
ioctl: VIDIOC_ENUM_FMT
Index : 0
Type : Video Capture
Pixel Format: 'GREY'
Name : 8-bit Greyscale

Index : 1
Type : Video Capture
Pixel Format: 'GRBG'
Name : 8-bit Bayer GRGR/BGBG

Which looks like a 2 line pattern, if that's to be believed. Based on looking at guvcview's colorspaces.c it looks like that's how it's handling it.

If trying to stream, you get ... basically static.
For now, greyscale seems to work. I've been piddling around with a new conversion:

void bayer_grbg_to_rgb24(unsigned char *dst, unsigned char *src, long int WIDTH, long int HEIGHT)
{
	//Format is
	// GRGRGRGRGR
	// BGBGBGBGBG
	// GRGRGRGRGR
	// BGBGBGBGBG
	long int row;
	long int col;
	long int src_pixel;
	long int src_pixel_row2;
	for (row = 0; row < HEIGHT; row++) {
		for (col = 0; col < WIDTH; col++) {
			i=(row*WIDTH+col)*3; //Output is in 3 bytes RGB, so convert a single pixel each time.
			src_pixel=(row*WIDTH+col)*2; //Bayer pattern has 2 bytes in first row: GR
			src_pixel_row2=((row+1)*WIDTH+col)*2; //Bayer pattern has 2 bytes in 2nd row:BG
			dst[i]/*RED*/=src[src_pixel+1];
			dst[i+1]/*GREEN*/=(src[src_pixel]+src[src_pixel_row2+1])/2;
			dst[i+2]/*BLUE*/=src[src_pixel_row2+1];
		}
	}
}

I've added in the case to adjust the size of the rgb24_buffer based on pixel format: case V4L2_PIX_FMT_SGRBG8: in v4l_builtin_decoder.cpp, allocBuffers() but I'm a bit at a loss on it. Sometimes, it runs for a few minutes, and sometimes it fails immediately. It's probably something stupid that someone will see immediately above.

Unless the *src has some size issue.
The following user(s) said Thank You: Jasem Mutlaq, Eric
5 years 11 months ago #25754
Attachments:

Please Log in or Create an account to join the conversation.

James, you have some serious hacking skills! That's what I call dedicated!
Maybe for (row = 0; row < HEIGHT; row++) should be for (row = 0; row < HEIGHT - 1; row++) ?
5 years 11 months ago #25768

Please Log in or Create an account to join the conversation.

  • Posts: 161
  • Thank you received: 39
Ok, I've got it working. Amusingly helped by some networked RGB lights called Filimins that a friend started a business building.

Or did last night, I let my computer go to sleep and lost some controls (v4l2 problem not INDI) Like the R/G/B gains.

Here's the branch if you can use it, via some git magic, otherwise I'll make a clean pull request at some point in the next few days. github.com/james-lan/indi/tree/neximage (I'm based off of azwing's so that causes some issues I think.)
The following user(s) said Thank You: Jasem Mutlaq
5 years 11 months ago #25774

Please Log in or Create an account to join the conversation.

  • Posts: 161
  • Thank you received: 39
Some more notes for anyone else who tries to use this: I got the controls back, apparently, there's a kernel->userspace transfer or something going on with uvc type things.

You'll need the file from the The Imaging Source github above, you need uvcdyntrl installed, then run this:
uvcdynctrl -i data/uvc-extensions/tisEUVC.xml -d /dev/video1

It goes from this:
v4l2-ctl -d /dev/video1 -l
brightness (int) : min=0 max=255 step=1 default=12 value=12
gain (int) : min=4 max=63 step=1 default=16 value=36
exposure_absolute (int) : min=1 max=300000 step=1 default=127 value=127
focus_absolute (int) : min=0 max=1000 step=1 default=0 value=0
privacy (bool) : default=0 value=0

to this:
v4l2-ctl -d /dev/video1 -l
brightness (int) : min=0 max=255 step=1 default=12 value=12
gain (int) : min=4 max=63 step=1 default=16 value=36
trigger_global_reset_shutter (bool) : default=0 value=0
exposure_absolute (int) : min=1 max=300000 step=1 default=127 value=127
focus_absolute (int) : min=0 max=1000 step=1 default=0 value=0
privacy (bool) : default=0 value=0
trigger (bool) : default=0 value=0
software_trigger (button) :
gainr (int) : min=0 max=63 step=1 default=1 value=36
gaing (int) : min=0 max=63 step=1 default=1 value=36
gainb (int) : min=0 max=63 step=1 default=1 value=36
binning (int) : min=1 max=4 step=1 default=1 value=1
x_offset (int) : min=0 max=1794 step=2 default=0 value=0
y_offset (int) : min=0 max=1464 step=2 default=0 value=0

Of those:
Brightness does nothing that I can tell.
Binning breaks it.
Trigger of all types is are somewhat untested by me, though they seem related to the snapshot mode.
Focus does nothing.
Exposure Absolute is in 0.1ms intervals. (Up to 300000 = 30 seconds, which seems to work. (Haven't tried it a lot yet, that's based on the white as this thing's background that showed up on streaming about 30 seconds after!))
R/G/B gains do work. There's probably an ideal value... but that either takes a patient approach or is the thing that drives people mad trying to properly figure out.

Testing with an ETX-70, I can see a fair number of stars. Sadly I can see stars, but I start to sink in the mud, and I'm exhausted. :(
The following user(s) said Thank You: Jasem Mutlaq
5 years 11 months ago #25776

Please Log in or Create an account to join the conversation.

  • Posts: 161
  • Thank you received: 39
Pull request submitted: github.com/indilib/indi/pull/587

That should add support for the NexImage 5 to INDI as well as likely the NexImage 10 (Based on this: github.com/openastroproject/openastro/issues/252 it appears to use the same format.)

(The more of git I use the more it's both more powerful and really annoying.)
Last edit: 5 years 11 months ago by james_lan. Reason: Added note about NexImage 10
5 years 11 months ago #25795

Please Log in or Create an account to join the conversation.

  • Posts: 161
  • Thank you received: 39
Just to note, I did get another NexImage5, and following my own instructions worked. (Always great when that happens.)
5 years 2 months ago #34050

Please Log in or Create an account to join the conversation.

  • Posts: 4
  • Thank you received: 0
I’m having an issues getting mine going. I mirror my install on a netbook and on RPi. Everything was installed a week or so ago. I’ve had the v4l2 working on both. Rpi ccd works (poorly) and netbooks screen cam streams.
Running Ubuntu mate 19
Installed indi full

Neximage shows up running lsusb as in your example. It does not show up under /dev/video1 (video0 are other cams). Disabled the ccd on rpi off in bios on the netbook and rebooted but no joy.

All kinds of issues trying follow through the TIS instructions. Dependency not installing and files missing errors all over the place.
4 years 10 months ago #39963

Please Log in or Create an account to join the conversation.

  • Posts: 4
  • Thank you received: 0
Oh actually reading the readme actually worked.
4 years 10 months ago #40046

Please Log in or Create an account to join the conversation.

  • Posts: 10
  • Thank you received: 0
Hello,

New user here trying to use indi.

I know this is an old thread but bumping up this because i'm was trying to make a neximage mono to get work with indi.
My platform is Ubuntu 32bit 18.04
I read through the thread and ran following commands

sudo ./firmware-update -ud <SERIAL> -f ../../../data/firmware/usb2/dmfk72uc02_162.euvc (neximage mono) and after that
sudo ./firmware-update -id <SERIAL> shows

Device manufacturer: Celestron
Product name: NexImage Burst M
Serial number: <SERIAL>
VendorID:ProductID: 199e:8307
Firmware version: 162
UVC mode is: on
Camera EEPROM size: 32768


v4l2-ctl -d /dev/video1 -l lists

brightness 0x00980900 (int) : min=0 max=100 step=1 default=50 value=50
contrast 0x00980901 (int) : min=0 max=100 step=1 default=36 value=36
saturation 0x00980902 (int) : min=0 max=100 step=1 default=60 value=60
hue 0x00980903 (int) : min=-2 max=2 step=1 default=0 value=0
white_balance_temperature_auto 0x0098090c (bool) : default=1 value=1
gamma 0x00980910 (int) : min=1 max=12 step=1 default=6 value=6
power_line_frequency 0x00980918 (menu) : min=0 max=2 default=1 value=1
white_balance_temperature 0x0098091a (int) : min=2800 max=6500 step=1 default=5000 value=5000 flags=inactive
sharpness 0x0098091b (int) : min=0 max=7 step=1 default=2 value=2
backlight_compensation 0x0098091c (int) : min=0 max=1 step=1 default=0 value=0
exposure_auto_priority 0x009a0903 (bool) : default=0 value=1


but when connecting the camera , dmesg -w displays
[ 2088.796242] usb 2-3: USB disconnect, device number 3
[ 2091.568068] usb 2-3: new high-speed USB device number 4 using ehci-pci
[ 2093.254372] usb 2-3: New USB device found, idVendor=199e, idProduct=8307
[ 2093.254377] usb 2-3: New USB device strings: Mfr=2, Product=1, SerialNumber=3
[ 2093.254381] usb 2-3: Product: NexImage Burst M
[ 2093.254384] usb 2-3: Manufacturer: Celestron
[ 2093.254386] usb 2-3: SerialNumber: 28414778
[ 2093.254896] uvcvideo: Found UVC 1.00 device NexImage Burst M (199e:8307)
[ 2094.376623] uvcvideo 2-3:1.0: Entity type for entity Extension 4 was not initialized!
[ 2094.376628] uvcvideo 2-3:1.0: Entity type for entity Processing 3 was not initialized!
[ 2094.376632] uvcvideo 2-3:1.0: Entity type for entity Camera 1 was not initialized!
[ 2094.377095] input: NexImage Burst M as /devices/pci0000:00/0000:00:1d.7/usb2/2-3/2-3:1.0/input/input15
[ 2094.413153] uvcvideo: Failed to query (GET_LEN) UVC control 5 on unit 4: -32 (exp. 2).

and running guvcview displays
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel map
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock

(guvcview:7070): dbind-WARNING **: 11:20:31.356: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files
V4L2_CORE: Could not grab image (select timeout): Resource temporarily unavailable
V4L2_CORE: Could not grab image (select timeout): Invalid argument
V4L2_CORE: Could not grab image (select timeout): Invalid argument
V4L2_CORE: Could not grab image (select timeout): Invalid argument
V4L2_CORE: Could not grab image (select timeout): Invalid argument


and no image is displayed. The camera now does not work with the Windows app (iCap) too. (Windows does recognize the camera)

Any help would be appreciated.

Thanks
3 years 11 months ago #52675

Please Log in or Create an account to join the conversation.

  • Posts: 10
  • Thank you received: 0
3 years 11 months ago #53007

Please Log in or Create an account to join the conversation.

  • Posts: 161
  • Thank you received: 39
It looks like that's not the right firmware, or at least I can't find any reference via google of dmfk72uc02_162.euvc (Their naming scheme has for the 2nd an m (mono) or an f (color) never both)

It looks like you uploaded the wrong firmware, try it with the DMK 42AUE03 namely the dmk42ue03_4001_uvc.euvc as that appears to be the only AR0132 sensor based ones they released (along with a DFK version), though I can't find any support references to that model number outside of repository. Though I did find an old product catalog.

The controls thing should use the uvcdynctrl command either the same? or something similar, as above. Hope that helps.
The following user(s) said Thank You: Akg
3 years 11 months ago #53142

Please Log in or Create an account to join the conversation.

Time to create page: 1.356 seconds