**** BEGIN LOGGING AT Fri Jul 21 03:00:02 2017 Jul 21 16:30:15 thetransformerr[: k. Jul 21 16:31:21 no to the "uglyduck" link. Jul 21 16:39:40 jkridner: did you check the app? I've updated the documentation for the server module and app Jul 21 16:44:47 jkridner: I removed the console.log outputs for state in the module, instead it emits events after every step, see the example in documentation Jul 21 16:52:42 jkridner: I'll add a start script to run the module directly Jul 21 16:53:19 ravikp7: I left the thing running and it never got past "webpack: Compiled successfully." Jul 21 16:54:00 nothing happens after that. Jul 21 16:54:23 jkridner: you've to then run the app, by sudo npm start Jul 21 16:55:49 jkridner: npm run build-test runs webpack, which compiles the js/jsx code and the webpack server is used for hot module reload Jul 21 16:57:00 jkridner: I've got everything covered in documentation https://github.com/ravikp7/BeagleBoot Jul 21 16:59:16 jkridner: I'll add redux to the app to use it as app state container, managing states with react components itself is quite messy Jul 21 17:02:17 why doens't it exit when done? Jul 21 17:03:38 jkridner: I also run the webpack-dev server, which is used for hot module reload, whenever I make some changes in the app it recomplies and update the app view automatically Jul 21 17:03:58 jkridner: for development, the app loads page hosted by server Jul 21 17:05:53 jkridner: I pass env variable development in npm start script, and according to that the main electron app loads served page (localhost:1234) else it loads static index.html Jul 21 17:06:21 jkridner: see main.js for the electron app in root directory Jul 21 17:06:52 line 19 Jul 21 17:08:27 jkridner: to not run the server, just compile. I've used script npm run build Jul 21 17:09:02 jkridner: and run app with static files, npm run start-electron Jul 21 17:09:35 jkridner: for development, npm run build-test and then npm start Jul 21 17:11:03 jkridner: this way I can update UI, change app functionality and test them without any app reloads Jul 21 17:12:15 ravikp7: why aren't you forking etcher.io? Jul 21 17:13:13 ravikp7: do I need to "sudo npm run build-test"? Jul 21 17:13:43 ravikp7: still electron app is empty. Jul 21 17:13:49 but, at least I know how to start that now. Jul 21 17:14:11 ravikp7: which way should I run? Jul 21 17:14:28 jkridner: did you pull latest commits? Jul 21 17:15:00 k, pulling. Jul 21 17:15:12 now how do I build and run? Jul 21 17:15:31 jkridner: npm run build-test Jul 21 17:15:51 sudo npm start in another terminal after server runs Jul 21 17:16:18 or npm run build followed by npm run start-electron Jul 21 17:17:12 one more thing Jul 21 17:17:19 after npm install Jul 21 17:17:38 run this command to rebuild usb module for electron Jul 21 17:17:46 npm run electron-rebuild Jul 21 17:17:57 may be this was blocking you Jul 21 17:24:53 jkridner: For not forking etcher, too many modules that I havn't used and don't even understand most of them. I can't change it without having understanding of how things are working there. Every module is used to solve a problem, without knowing the problem, I can't learn the solution. Jul 21 17:26:16 jkridner: By the time I modify it, I can design my own app. I'm more productive this way, now when I see the modules used in etcher, I know why that was used Jul 21 17:27:04 jkridner: long story short, I assure you I can make this work in time. Jul 21 17:45:38 jkridner: any success? Jul 21 18:38:45 jkridner: ping! Jul 21 18:38:50 > Jul 21 18:39:08 jkridner: app ran? Jul 21 18:39:09 k, trying now Jul 21 18:39:39 doing 'npm run electron-rebuild'. Jul 21 18:42:31 have graphics now, but app isn't informing me properly of status. Jul 21 18:42:53 jkridner: what status? Jul 21 18:44:01 jkridner: trying on linux? Jul 21 18:44:17 http://imgur.com/a/F5Wgr Jul 21 18:44:20 Mac Jul 21 18:45:03 jkridner: we still didn't get the server transfer uboot on windows and os x :( Jul 21 18:46:32 jkridner: check status logs from electron app's debugger console Jul 21 18:49:57 jkridner: View -> Toggle Developer Tools Jul 21 19:03:18 jkridner: at least spl gets transferred, right ? logs? Jul 21 19:06:27 ravikp7: we need to chat a bit about asynchronous, event-driven design. Jul 21 19:06:36 jkridner: how do you find the current asynchronous code implementation complex for server module? if not why it's not the right way ? Jul 21 19:06:41 I need the app to automatically detect the device.... Jul 21 19:07:04 upon starting up, it should be looking for the device to be detected and it should notify me at all times what the state of the device is. Jul 21 19:07:34 ravikp7: the current code isn't too bad, but it is overly stateful. Jul 21 19:07:45 jkridner: waiting for it, blocks the process Jul 21 19:08:01 UI freezes Jul 21 19:08:07 which isn't good Jul 21 19:08:12 ravikp7: it should be an event, not a blocking thing. Jul 21 19:08:54 ravikp7: the issue is a bit of the thought pattern around the state flow.... there needs to be less stateful design. Jul 21 19:09:00 each server is just a handler. Jul 21 19:09:18 the u-boot server responds to SPL being detected. Jul 21 19:09:30 SPL server responds to the bootloader being detected. Jul 21 19:09:44 jkridner: how it will wait? with a while loop, untill not detected? Jul 21 19:10:02 never, ever, ever say while loop to me. ;-) Jul 21 19:10:39 wish I wasn't in the middle of so many things.... I'll pull up your code now. Jul 21 19:11:01 * jkridner assumes the bootloading is all part of https://github.com/ravikp7/node-beagle-boot Jul 21 19:12:37 that's what I can't figure out, how to handle event of device detection without blocking Jul 21 19:12:46 ravikp7: I'd like for you to remove the stateful nature of loading u-boot after SPL. the device will let you know when SPL is running. Jul 21 19:13:22 usb.findByIds(vid, pid); is an asynch call, I believe. Jul 21 19:13:39 * jkridner looks into the API. Jul 21 19:14:09 grr... synch. :( Jul 21 19:14:17 yeah :( Jul 21 19:14:29 that's the problem Jul 21 19:14:50 ah, usb.on('attach', Jul 21 19:15:07 see https://github.com/tessel/node-usb Jul 21 19:15:22 you need to be using usb.on('attach' to detect the device. Jul 21 19:15:37 doing a one-time check at launch is also good to add. Jul 21 19:16:11 jkridner: haven't noticed that yet, will use it now Jul 21 19:17:19 it's in last, never read the whole api :( Jul 21 19:18:39 ravikp7: with this detection, do you think you can remove these progressive states and simply launch two TFTP servers? one for SPL (in response to ROM detection) and one for u-boot (in response to SPL detection)? Jul 21 19:19:20 jkridner: sure, got it Jul 21 19:22:04 jkridner: thanks, seems all fixed now, you can expect the required code changes by tommorow Jul 21 19:22:32 thanks! Jul 21 19:22:45 appreciate your diligence as I've been missing. Jul 21 19:22:51 trying to get caught up. Jul 21 19:23:02 this surgery really set me back on a lot. Jul 21 19:23:16 anyway, I should start being more engaged/responsive. Jul 21 19:24:01 jkridner: excellent, thanks :) Jul 21 19:39:19 thetransformerr[: I placed the order just now. Jul 21 19:39:43 nerdboy, ds2: thetransformerr[ got me a link for some items that ship easily in India. Jul 21 19:55:07 which parts? Jul 21 19:55:39 nerdboy: the ones thetransformerr[ mentioned above. Jul 21 21:01:40 jkridner: pushed code with the required changes, please have a look Jul 21 21:22:25 ravikp7: got to run, but code exits for me without getting a connection. Jul 21 21:24:04 jkridner: I updated the server module, are you running that or the app? Jul 21 21:24:53 jkridner: I've added a start script just now Jul 21 21:25:09 jkridner: pull it, then try again Jul 21 21:26:51 jkridner: just another file calling the main.js function with the defined APIs Jul 21 21:32:37 jkridner: now runs? Jul 21 21:40:02 jkridner: going to sleep, 3 am here. will talk to you later today. Leave messages here letting me know if it worked you Jul 22 01:54:11 jkridner: ping! **** ENDING LOGGING AT Sat Jul 22 03:00:03 2017