Matt McWilliams
63f4278b2b
Resolve startup order issues and explanation for all the delays that were meager attempts to solve a race condition. By moving more IPC connectionts to handles, which can be awaited, there are no more attempts to send message to light object that fails because it has not yet been instantiated.
2024-04-06 23:37:30 -04:00
Matt McWilliams
142c990a0e
Refactored GUI into TypeScript and class-based format
2023-03-18 16:59:26 -04:00
Matt McWilliams
7741134917
Create the Timing class
2023-02-28 14:30:17 -05:00
Matt McWilliams
f296488bc2
Further progress on #20 . TODO: Image display logic on the server side. Need to add image to proxy list and give it a properly-extensioned name and cmdAll.
...
ALSO: Server is not working on iOS.
2023-02-25 12:40:35 -05:00
Matt McWilliams
c9bcb74a9f
Progress on #20 . Can start up a server and serve client.js
2023-02-25 02:08:05 -05:00
Matt McWilliams
ee0ab663d7
Complete the alert feature. Have not created pause, but this could be done using the same alert object to prevent code duplication.
2022-08-03 09:02:47 -04:00
Matt McWilliams
9d0545aa4f
All capper features in app, can shoot blank frames, can turn on capper independently and can schedule blank frames in the sequencer. Some cleanup may be needed but there are no noticeable regressions in the app. TODO: Finish all arduino scripts.
2022-07-15 18:11:26 -04:00
Matthew McWilliams
70c2c695f0
All capper work. Need to wrap all actions in the 'b' command and push functionality to a lower level to prevent unneeded complexity.
2022-07-13 15:21:26 -04:00
Matt McWilliams
f585aa2a5a
Upgrade electron 11 -> 19 (huge jump). Install new remote module to preserve legacy communication protocol.
2022-06-04 11:11:23 -04:00
Matt McWilliams
85bfa57127
Update all modules in app to latest version, including electron. Removed electron updater because of no plans to integrate and to reduce the app size.
2021-02-22 13:23:36 -05:00
sixteenmillimeter
8672b6584a
Work towards issue #52 . Adds a statement within the arduino.end() method that watches for an 'E' char byte and will alert the UI while pausing a running sequence. Needs to be in place for firmware to be able to throw errors to UI.
2020-09-29 13:48:06 -04:00
sixteenmillimeter
aec3e29476
Wait until image is loaded in a temp element and then report back to main process using ipc. This uses the "display_load" ipc channel to call back to the Display class and resolve a promise made in the .show() method. Resolves #38 .
2020-02-21 02:28:26 -05:00
mmcwilliams
1b83fe6937
Downgrade winston from 3 to 2 because it prints better in the console. Change all require statements to imports, requiring only what's used.
2019-08-04 19:38:45 -04:00
mmcwilliams
741d4619ee
Replace all references to dig with filmout
2019-07-27 08:39:39 -04:00
mmcwilliams
073e778a3b
Visual tweaks for linux
2019-06-26 18:03:54 -04:00
mmcwilliams
6b10e9c28d
System module phones home
2019-06-24 12:42:27 -04:00
mmcwilliams
9b17d5cd47
Meant to commit this as last commit. Oh well.
2019-06-18 16:48:54 -04:00
mmcwilliams
22187777e7
Remove node-side digital lib and replace with filmout lib. Still remaining: rename internal uses of "dig" or "digital" to "filmout", including markup on the frontend.
2019-06-18 15:42:30 -04:00
mmcwilliams
6442d99817
Update delay, exec and exit usage and require statments.
2019-06-08 21:43:14 -04:00
mmcwilliams
5e0947d343
As much as I could do. Still doesn't work. Last commit.
2019-04-18 21:58:11 -04:00
mmcw-dev
b33ef36ab4
Work on multiple device UI
2019-04-16 10:01:42 -04: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
43ee0d0672
Sequence now runs entirely in the main process. Renderer no longer stores the sequence, it is a for loop inside the main process.
2019-03-23 21:58:22 -04:00
mmcwilliams
42691c1577
All work on grid + sequencer rewrite.
2019-03-22 17:06:57 -04:00
mmcwilliams
553d2bbb0d
Made progress on sequencer module, renamed from sequence.
2019-03-22 04:33:53 -04:00
mmcwilliams
ddb33e7f35
Require the Commands module as cmd in main.js
2019-03-22 03:13:46 -04:00
mmcwilliams
742adccf34
Took a tiny detour on the film out feature, or "digital projector". This now avoids showing a browser window fullscreen on mac, which is having performance issues when opening and then running sequences. There is a major source of lag, seemingly coming from the camera? Need to test with fake projector to see if there's a problem with the arduino lib.
2019-03-21 22:33:30 -04:00
mmcwilliams
6d1e9ec78f
Print state for now. Need to store position in it? Make resetting it simple.
2019-03-21 19:36:37 -04:00
mmcwilliams
7ce3fa854a
Remove dev object and replace with new devices module. Log an error on failure to enumerate devices that isn't caught within the method.
2019-03-21 18:09:14 -04:00
mmcwilliams
87d43fc15b
Only use log module in main
2019-03-21 15:47:25 -04:00
mmcwilliams
6faf78b92e
Merge remote-tracking branch 'origin/master'
2019-03-21 15:08:54 -04:00
mmcwilliams
cf7664fb2a
Remove objects cam, proj, light and replace with new modules
2019-03-21 15:02:54 -04:00
mmcwilliams
f2c2d6ce43
WIP wednesday
2019-03-20 18:37:00 -04:00
mmcwilliams
d308b8a59e
Merge remote-tracking branch 'origin/master'
2019-03-19 22:33:23 -04:00
mmcwilliams
a4682ed9d3
Simplify logs. Still prints timestamp as json.
2019-03-19 14:48:01 -04:00
mmcwilliams
f89ad53235
Caught a silly mistake. Accidentally referenced setDir instead of setExposure in intval exposure function. It's ok because that's dormant anyway.
2019-03-18 19:11:05 -04:00
mmcwilliams
00b5efa484
Logging still sucks.
2019-03-09 13:17:32 -05:00
mmcwilliams
95b6f77848
Try to improve logging. It's not there, yet.
2019-03-08 22:33:03 -05:00
mmcwilliams
6622a72241
Resize app when second projector connected
2019-02-26 16:43:14 -05:00
mmcw-dev
aff070cdc4
Connect second projector
2019-02-26 11:49:00 -05:00
mmcwilliams
7398f7993d
Start work on secondary projector feature
2019-02-25 18:14:29 -05:00
mmcwilliams
73ae599cff
Uninstall and remove references to async module
2019-02-23 22:40:59 -05:00
mmcw-dev
723b23fa41
Fix intval bug and apply UI projector value change to digital file state.
2019-02-23 22:19:42 -05:00
mmcwilliams
8bd505da36
Save and restore settings, including profiles.
2019-02-23 12:25:46 -05:00
mmcwilliams
8fd29e89d8
Okay. Removed the light.state.on behavior. Now, a frame is rendered to the set color state of the "light" only when the camera is moving. Unnecessary frames don't display AND the correct color is represented at the right time. No juggling state values between steps in the sequence.
2019-02-13 18:57:18 -05:00
mmcwilliams
e7ac873f41
Two birds, one commit. Can even pull out the bad logic of the light.state.on value, but that's not hurting anybody.
2019-02-13 18:49:59 -05:00
mmcw-dev
962a7c8213
Fix loop bug. When selection a video as a projector (need to work on this metaphor) the loops are automatically set. Previous issues were due to id re-use.
...
Also, (almost) you can choose a light color value that a frame will be overlayed on with a Darken composite mode. This is almost working but is kludgey because the first frame is always coming up black. Will need to make adjustments in the light module.
2019-02-11 01:08:20 -05:00
mmcw-dev
3493759998
Scale frame export to video's advertized size
2019-02-10 14:07:07 -05:00
mmcwilliams
40b5ecfe69
Digital projector feature added. Select a video and it will be displayed on the main monitor (TODO: address this) and the camera will advance in sync, as with a regular optical printer.
2019-02-08 18:21:16 -05:00
mmcwilliams
30a070dca0
Device UI
2019-02-08 14:28:57 -05:00