Commit Graph

170 Commits

Author SHA1 Message Date
Matthew McWilliams a6de66eb66 Blink LED on startup 2023-04-11 00:24:39 -04:00
Matt McWilliams 6ada6b08ed Add LED features to projector firmware. 2023-04-10 23:28:02 -04:00
Matt McWilliams 461add1cda Start adding LEDs 2023-03-26 16:06:08 -04:00
Matt McWilliams 231c354cb1 Update McopySerial usage in both scripts that use it. 2023-03-21 20:38:45 -04:00
Matt McWilliams 4e0149e752 Fixed issue with baud being stored as const overflowed. Silly mistake.
Also storing command chars as public const variables to shorten code and allow for mc.COMMAND rather than McopySerial::COMMAND. Cleans up example code a lot.
2023-03-21 20:35:00 -04:00
Matt McWilliams 5c6b9191e5 Work in progress: Serial does not work from external library 2023-03-20 19:45:32 -04:00
Matt McWilliams 77a0f7d8a0 Use the correct pins for the projector 2023-03-18 17:36:24 -04:00
Matt McWilliams 9faae6fc36 Create the first state sender. 2023-03-18 17:25:58 -04:00
Matt McWilliams 3689eb7528 Rewrite mcopy_light to use McopySerial 2023-03-18 17:13:41 -04:00
Matt McWilliams 210dc85558 Add getString and print methods 2023-03-18 17:04:06 -04:00
Matt McWilliams 722ff9c05e Remove unneeded comments 2023-03-10 21:19:30 -05:00
Matt McWilliams 51114df576 First draft of the JKMM100 firmware using McopySerial. Boy does this make my life easier.
Need to find a better way than copying it into all of these different projects.
Oh well.
2023-03-09 21:54:54 -05:00
Matt McWilliams 9126bc82c0 Confirm the camera command (this should happen after it expects frame is taken). 2023-03-09 21:51:49 -05:00
Matt McWilliams e09fe7d42f McopySerial now has a confirm() method which marks the end of a command. This is a wrapper around Serial.println() 2023-03-09 21:51:29 -05:00
Matt McWilliams 234e69c7a2 Canon BLE firmware now uses the McopySerial script for it's USB communication. 2023-03-09 21:30:59 -05:00
Matt McWilliams d7017af245 Move connect and identify methods to internal ones. 2023-03-09 21:26:31 -05:00
Matt McWilliams f49c70ead6 Define all command chars as static constants. Provide an identity when initializing and allow for setting with another method. 2023-03-09 21:18:10 -05:00
Matt McWilliams 9a89dbe6a5 Automatically toggle debug state internally 2023-03-09 21:08:36 -05:00
Matt McWilliams 844bb286a5 Build the skeleton of McopySerial. Contains all command chars as flags. Is now re-built with latest command flags automatically when syncing to all projects. Compiles. Will implement more in canon firmware. 2023-03-09 21:01:20 -05:00
Matt McWilliams 95e2e997e5 Move mcopy serial script. Add work (isn't working). 2023-03-08 21:28:09 -05:00
Matt McWilliams d41f082839 Update light sketch, add Pixie lib 2023-03-05 17:13:29 -05:00
Matt McWilliams e27cae353f Work on McopySerial library. Still having trouble with compiling. 2023-03-04 19:25:50 -05:00
Matt McWilliams b12a08e47a Rename lib to match style of others 2023-03-04 19:04:55 -05:00
Matt McWilliams 9b298ac676 Sync actual files 2023-03-04 19:01:35 -05:00
Matt McWilliams 52acb97e08 Try without symlinks 2023-03-04 18:59:47 -05:00
Matt McWilliams 78450e9e6a Add mcopy_serial library 2023-03-04 18:52:51 -05:00
Matt McWilliams dc746fe6f4 canon work 2023-03-03 10:13:40 -05:00
Matt McWilliams 0e3bc563a7 Update blink functionality. Probably will not work during start? 2023-03-01 13:51:54 -05:00
Matt McWilliams d9aa7dc698 Ignore build artifacts 2023-03-01 13:38:27 -05:00
Matt McWilliams 85832d18f6 Placeholder for notes 2023-02-27 23:16:44 -05:00
Matt McWilliams 5f0da91659 Canon BLE work 2023-02-26 22:19:07 -05:00
Matt McWilliams e1bf69e622 Add work on mcopy_cam_canon. This includes teh CanonBLERemote library, ArduinoNvs (dependency of CanonBLERemote) and TickTwo, potentially to manage a blinking UI component. Not working. Finish the firmware feature in this branch. 2023-02-25 22:24:29 -05:00
Matt McWilliams dec96ec9be Use variable in stepper declaration 2022-11-11 15:47:58 -05:00
Matt McWilliams 3942cd05be Declare stepsPerRevolution so change is explicit when that happens 2022-11-11 15:47:43 -05:00
Matt McWilliams ee1e9c9feb Stepper firmware is working. Needed extra tape around coupling connector to add friction to connection and now it keeps. 2022-11-04 19:37:11 -04:00
Matt McWilliams 1fcbec7466 Work on stepper motor design and software. Motor still moves more slowly than it should but will investigate multiple factors leading to this result 2022-10-28 19:46:02 -04:00
Matt McWilliams 98f2c7a24a Pausing work on arri_s_DC firmware because hardware is less than ideal. Too much play in the motor position to trust right now. Steppers better approach. 2022-10-28 11:28:30 -04:00
Matt McWilliams 787e6ed06e Add a concept arri_s camera controller firmware. Using class-based approach as an experiment in Arduino code structure. 2022-10-28 07:50:30 -04:00
Matt McWilliams f55b72044c Mcopy firmware with optional capper feature 2022-07-17 11:05:20 -04:00
Matt McWilliams 6582154ec6 Fix debug script and component 2022-07-17 09:56:03 -04:00
Matthew McWilliams 18dbb72a54 Minor updates to comments 2022-07-06 14:42:53 -04:00
Matthew McWilliams c0ec81c0f9 Add Servo debug script 2022-07-06 14:42:16 -04:00
Matt McWilliams c3661d6ff1 Remove opto endstop logic, ready for hardware testing. 2022-06-28 08:58:31 -04:00
Matt McWilliams 62a66f5f6d More mount work and start of endstop logic. Rebuilding the B&H projector unity. 2022-06-17 23:39:19 -04:00
Matt McWilliams 28dc19fc32 Work on endstop functionality 2022-06-13 22:46:13 -04:00
Matt McWilliams 585c47d6c7 Allow capper identifier in list of acceptable responses. 2022-06-13 08:08:42 -04:00
Matt McWilliams 04a0330327 All work on first draft of capper hardware 2022-06-12 22:26:03 -04:00
Matt McWilliams 2f9201716a All capper work. Debug firmware for testing. STL of cap as printed. 2022-06-12 13:14:43 -04:00
Matthew McWilliams f7a3c52260 Silly typo: did not invoke Servo_init() and so servo was not initalizing 2022-06-10 13:19:38 -04:00
Matt McWilliams c77201ef4e Add new commands and identifiers for the capper, start moving into capital characters 2022-06-07 07:55:26 -04:00
Matt McWilliams 2861bc52fd intval2 connector firmware 2021-03-19 14:09:46 -04:00
sixteenmillimeter eb7e62aac7 Fixed projector function 2020-10-03 21:32:16 -04:00
sixteenmillimeter 65292524b1 Edit addresses the issue implied by #52. In simple tests with improvised hardware, frame cannot complete in less than 450ms, which is half a full frame. Will add another check to proj_stop() to evaluate the time elapsed and throw an error if too high or low (+/- 20%) 2020-09-29 15:13:22 -04:00
sixteenmillimeter 5e481e77b0 Addressing the issue with the JKMM99 projector functionality where frames stop prematurely. Conceivably, the proj_microswitch() function is the only place that calls proj_stop() so the issue is with the logic there. It makes little sense that this function allows for 15ms frames because of the test that requires a 450ms elapsed time before it is stopped. 2020-09-29 14:00:54 -04:00
sixteenmillimeter c5d7f9c91f Re-write of the JKMM99 which replaces the relay-based camera controller with an intval-based one. This relies on the Arduino Uno in the control box to handle all of the control logic in place of an on-board Arduino Trinket Pro. 2020-09-28 23:49:57 -04:00
sixteenmillimeter 9502d255c7 Fixed typo in Pins() where PROJECTOR_FWD was set to LOW twice instead of PROJECTOR_BWD. 2020-09-28 23:47:36 -04:00
sixteenmillimeter 08c3c23da0 Firmware for new JKMM99. Deployed for testing. 2020-08-18 14:21:27 -04:00
sixteenmillimeter dd1bec8394 Firmware for controlling the JK 106 projector with a 103/104-style camera 2020-08-09 20:04:26 -04:00
sixteenmillimeter 67d0e750c2 Mcopy camera firmware 2020-07-01 18:03:20 -04:00
sixteenmillimeter ed75924e24 Filmout release 1.5.0. 2020-01-20 01:37:38 -05:00
sixteenmillimeter 6ec81a3429 Timing tweaks for Oxberry firmware. Successfully ran 2000 frames with these settings. 2019-12-18 13:48:33 -05:00
sixteenmillimeter 09da9500b5 Oxberry camera firmware. 2019-12-17 14:54:01 -05:00
mmcwilliams 7a52bc7c6e Secondary projector and secondary camera behaviors have been added to the main process. This is not represented in the UI... yet. All renderer code is still in flux. 2019-04-04 18:49:07 -04:00
mmcwilliams f276d5ce83 Add commands for controlling a secondary projector. 2019-03-01 20:14:20 -05:00
mmcwilliams 46ce99ec18 Add an alternate camera firmware for MONO NO AWARE's JK. 2019-03-01 18:01:45 -05:00
mmcwilliams ac888b1fc4 Firmware first drafts for MONO NO AWARE optical printer 2019-02-28 17:50:39 -05:00
mmcwilliams b98b831ae4 Fix projector_second component code. 2019-02-26 16:42:04 -05:00
mmcwilliams 7398f7993d Start work on secondary projector feature 2019-02-25 18:14:29 -05:00
mmcw-dev b6a6b8a81e Reverse High/low for relay 2019-02-09 09:30:11 -05:00
mmcwilliams d31d7770aa Turn off light after delay 2019-02-08 14:29:13 -05:00
mmcwilliams 74bb33052c Create an mcopy component for cameras that are triggered by relay, ie DSLRs and intvals. 2019-02-08 12:58:14 -05:00
mmcwilliams 95007d06a2 Install libs from intval_go_node project 2019-02-08 12:46:58 -05:00
mmcwilliams 448ad1bda4 Momentary switch delay was too long. 2018-07-03 14:25:36 -04:00
mmcwilliams 4aa44576b3 Set brightness and alternatively log the rgb 2018-02-01 14:56:09 -05:00
M McWilliams 9bbf2393b7 Adjust timings in the jkfirmware 2018-01-30 05:05:04 -05:00
mmcw-dev e3d6144abd Solid state relay version of the mcopy jk firmware 2018-01-22 22:05:10 -05:00
mmcwilliams 695a289bdb Settings, intval and mcopyJK firmware work. 2018-01-17 12:24:59 -05:00
mmcwilliams f671967c18 Improve the serial test by comparing a character type 2018-01-09 23:24:09 -05:00
mmcw-dev c8c083054e First version of the mcopy_jk firmware for the JK103 that is being refurbished at AgX. 2018-01-05 15:49:19 -05:00
mmcw-dev 324386096a Projector component needs a cmd_mcopy_identifier function to tell gui app that it's an arduino. 2018-01-05 15:48:50 -05:00
mmcw-dev 2301f0aa43 Started mcopy_jk firmware, based off the old mcopyJK project. Will have to trigger relays to start events. Will also have to add previous absent feature of tracking the jk state via the internam microswitches. 2018-01-04 23:45:40 -05:00
mmcw-dev fa10ee6785 Test device with adafruit pixie 2018-01-02 01:15:45 -05:00
mmcw-dev ed1a0902aa Add working projector functions to mcopy_projector_jk 2017-12-28 20:54:54 -05:00
mmcw-dev 674dc9591e Switch pixie to neopixel code in mcopy_projector_tests 2017-12-28 20:54:19 -05:00
mmcw-dev 4ffd0a7daa Update projector and projector_tests to use distinguishing identifiers from new expanded list. 2017-12-28 18:32:03 -05:00
mmcw-dev 3efdba9ec4 Add wiring instructions to mcopy_light_tests 2017-12-28 18:31:10 -05:00
mmcwilliams 8549a08fb7 Re-organize firmware files 2017-12-28 09:30:16 -05:00
mmcwilliams b136b78d0e create target firmware for arduino 2017-12-27 00:37:30 -05:00
Matt 236908993e Update requirements 2017-02-09 09:35:07 -05:00
mmcwilliams ed593b3b7c Merge INTVAL 2.1 project into mcopy firmware 2016-06-09 17:21:05 -04:00
mmcwilliams 413deb421d Enable Pixie headers for testing the pixie 2016-05-25 15:58:49 -04:00
Matt 5f2dbd77b7 Merged mcopy_camera.ino into test firmware
Also added optional log() function to print out time that the frame
took, in ms for profiling.
2016-05-12 23:12:00 -04:00
Matt 1a116261a6 Add identification logic to camera firmware
This allows the Electron client to query the each Arduino and properly
assign each serial port to their function.
2016-05-12 23:10:44 -04:00
Matt 408c0beb61 Merged functions from INTVAL into camera firmware
Taking functionality from here:
https://github.com/sixteenmillimeter/intval2
2016-05-12 22:59:10 -04:00
Matt a45c8104d8 Update test and firmware files to update Pixie every sec
Send a signal to change the color of the light every second to prevent
them from getting “stuck” re:
https://learn.adafruit.com/pixie-3-watt-smart-chainable-led-pixels/

“You do have to send it data every 1 second at a minimum (as a
protection against the bright and hot LEDs staying 'stuck on', they
will eventually timeout if no updates are received)”
2016-05-12 22:34:38 -04:00
Matt e6aca8c6a9 Big delay in the loop for some bad reason 2016-05-12 22:25:46 -04:00
mmcwilliams 70842a377e Flip raw reading logic for microswitch
Using a microswitch with INPUT_PULLUP instead of an endstop. As a
result 1 == switch closed instead of 0 == endstop closed.
2016-05-09 09:26:10 -04:00
Matt 6fa80d63ee Correctly manage memory when reading from endstop 2016-04-22 14:34:44 -04:00
Matt be4002ed87 Created framework for projector motor control 2016-04-21 23:37:37 -04:00
Matt eec3414364 Add basic endstop code to projector_test 2016-04-21 08:33:16 -04:00