Repository navigation
Releases: radorybar/canon-m3-ascom
Release list
Canon M3 ASCOM 0.2.0
Canon M3 ASCOM (formerly m3alpaca) is an ASCOM Alpaca camera driver that makes a Canon EOS M3 running
CHDK usable as an astro camera (e.g. in N.I.N.A.) over one USB cable.
This is a pre-release: it works with the real camera and in N.I.N.A. on two Windows PCs, but has not been
used for a full night under the sky yet.
Install
Download canon-m3-ascom-0.2.0-setup.exe below and run it. Python is not needed. The wizard asks which
USB driver to use:
- A: standard Windows camera driver (recommended): nothing is replaced, the camera keeps working with
Windows and other programs. - B: WinUSB: slightly faster transfer; the camera must be connected and switched on during setup.
The standard driver can be restored from the Start menu or when uninstalling.
The installer is not code-signed, so Windows SmartScreen may warn: More info → Run anyway.
Step-by-step guide: docs/INSTALL.md.
What's new since 0.1.0
- Renamed to Canon M3 ASCOM (package
canon_m3_ascom, programcanon-m3-ascom) - Setup wizard with the choice of USB driver; the WinUSB driver is installed through libwdi
- New transport through the standard Windows driver (WPD), no Zadig needed
- Icon in the notification area, log file, autostart, Start menu shortcuts (logs, diagnostics, config)
- Gain is the ISO value itself (100 … 12800)
- Faster frames: raw decoding ~4× and ImageBytes encoding ~30× faster, remote capture stays ready
between frames - Stability: automatic reconnect after a pulled cable or a camera restart, non-blocking disconnect,
keep-alive, discovery survives network errors, protection against stale PTP data - A failed exposure is reported so that N.I.N.A. fails the frame at once, instead of waiting for its
timeout or saving the previous image again - The log shows the time each frame spends in the camera, on USB, in the driver and in the client
Verified
On a Canon EOS M3, firmware 1.21A, CHDK 1.6.1-6315, Windows 11, N.I.N.A. 3.2:
- both driver options (standard driver and WinUSB), install and uninstall
- sequences of frames; pulling the USB cable and switching the camera off and on during a sequence:
the frame fails, the next one works again - about 3.3 s of overhead per frame (camera ~1.5 s, USB ~1 s, decoding ~0.6 s), independent of the
exposure time
Checksum
SHA-256 of canon-m3-ascom-0.2.0-setup.exe:
2F0B4E09EC5462442F0CD086F4F00FB52F76EDE1A07C2C4CC8DA6CC82F7E921E
m3alpaca 0.1.0
First public version of m3alpaca: an ASCOM Alpaca camera driver that makes a Canon EOS M3 running
CHDK usable as an astro camera (e.g. in N.I.N.A.) over one USB cable.
This is a pre-release: it works with the real camera and in N.I.N.A., but has not been used for a
full night under the sky yet.
Features
- Built-in CHDK PTP client (Python, pyusb + WinUSB): raw remote capture over USB, the same sequence as
chdkptp'srs -raw, with one persistent USB session - 14-bit raw decoding: 6112×4060 buffer, 6000×4000 active area, RGGB Bayer data
- Alpaca ICameraV3: ImageBytes transfer, discovery, ISO as a gain list, sensor temperature,
subframes, exposures from 1/4000 s to 300 s ptpdiag: step-by-step diagnostics for the first connection (USB, PTP, CHDK, Lua, test frame)- Simulator backend with a star field coupled to an Alpaca focuser, for trying autofocus indoors
- USB-level camera emulator; tests run without a camera
- Install script and guide for a telescope PC
Verified
On a Canon EOS M3, firmware 1.21A, CHDK 1.6.1-6315, Windows 11:
- raw capture over USB, ~38 MB/s (a 43 MB frame in ~1.2 s), about 3 s overhead per frame
- black level 2048, RGGB colour order
- exposures of 30, 60 and 120 s, without an automatic in-camera dark frame
- exposures from N.I.N.A. 3.2; autofocus with the simulator backend
Requirements
- Windows 10/11, Python 3.12, N.I.N.A. 3.x (or another Alpaca client)
- Canon EOS M3 with CHDK 1.6
- WinUSB driver for the camera, installed with Zadig
See the README and the
telescope PC install guide.
Install
Download the source zip below, then on the imaging PC:
powershell -ExecutionPolicy Bypass -File scripts\install.ps1
The wheel (m3alpaca-0.1.0-py3-none-any.whl) can also be installed with
pip install m3alpaca-0.1.0-py3-none-any.whl.
Known limitations
- Tested only on the EOS M3; other CHDK cameras need their sensor geometry added
- Exposures cannot be aborted once started on the camera
- No binning; no DNG output yet
- Not tested yet: a night on the sky (autofocus with a real focuser, plate solving, long sequences)