Chronos > Software Dev

Software Roadmap - 0.3.1, 0.4.x, etc.

<< < (11/12) > >>

DDR:
Well, it's been a while since I updated what was going on behind the scenes here. While we've all been working hard, it's been a lot of behind-the-scenes sort of stuff. Nothing very showy, really.

So, some background is in order.

We decided about a year ago that we did not want to keep using the original version of the software, camApp, which ships with the camera and is updated via the betas on this forum. One of the main reasons for this is that we wanted a web api and remote control app. Embedding a web server in original camApp was impractical. An external web server could not reasonably be hacked together with the tools available¹.­ Some infrastructure needed to be built.

So, Foobar ported a newer linux kernel to our CPU, and we got access to much better tools. Porting a linux kernel is generally not considered a one-man job, so it took him a few months. During this time, I put together a virtual machine to develop the new UI, called gui2, on. After I'd completed that, Foobar promptly delivered an early version of the new linux to me. While it lacked drivers for all the camera-y parts, I was able to get a modern tech stack up and running and I used this to develop the app for the next half-year.

As this progressed, it became apparent that the tech stack I'd compiled was not one that we could safely upgrade and maintain. Foobar completed his port of the linux kernel, giving us Debian 8 as the underlying operating system, and we decided to backport the infrastructure I was using from Debian 9. This was completed, but we were still several versions behind what I'd developed the new UI on. I am currently finishing porting everything from my new tech stack to the older, maintainable versions of the tech we had. While a few bugs remain, I got the app running in it's entirety, on it's final tech stack, this afternoon.

Near the beginning of all this, Johan was hired to extract the startup logic from the current camApp. (I was hired to do the mobile app promised in the Kickstarter, which was deferred due to the technical issues mentioned above, so I wound up extracting the graphical user interface from the camApp.) Extracting the startup logic to initialize the sensor proved to be quite difficult. This was completed this morning, and the camera can now start and show the new UI entirely without having to run the current camApp!

The camera can now also run a nascent HTTP API, which plays well with the new UI. If you update a value via the API, the new value is reflected in the UI running on the camera. However, both the new UI and the alpha HTTP API are still largely disconnected from the hardware of the camera. They are running against dummy values. Since Johan has managed to bring up the camera, he is now implementing the dummy values so the HTTP API and the new UI can actually make changes to the camera. Some tasks are expected to be easy to tell the camera to do, while others will require a bit more work. This implementation is represented by box ❶ in the last progress chart posted in this thread³.

While all this has been going on, Loial has been making significant improvements to the firmware of the camera's FPGA. This has been appearing in the forum betas. We are currently in the midst of working on a testing plan for the next beta, since we'd like it to actually work this time. Unfortunately, there turns out to be quite a lot to our software, so while skronstein has been working on the testing plan it is still a work in progress. I myself may be pulled aside for a few days to complete that, so we can test and release next beta here. 🙂

If you'd like to talk to us in person and see some cool stuff, we'll be at NAB. It's April 6th through 11th in Las Vegas, though we'll be around a few days longer for setup and teardown.


¹ These tools were Ash² scripts being called via CGI.
² Ash is like Bash, but awful.
³ There has been no real progress on the chart since then since both Johan and myself have been been dealing with the underlying work of making our respective technologies run. Since this work was unforseen and unpredictable, it was uncharted.

nik282000:
Thanks for the update.

I am excited to see hear the HTTP API is coming along, you guys are doing awesome work!

JamesB:
Wow nobody said it was easy, lots of work behind the scenes. Thanks for sharing your progress and process to get there!

edmond:
Any updates?
It's March of 2019...

DDR:

--- Quote from: edmond on March 07, 2019, 08:49:33 PM ---Any updates?

--- End quote ---
No. >_<

This is quite frustrating all around, I think.

Most of the company has been pulled off into NAB prep. Since it's at the end of this month and we are not strictly speaking ready, that has been where the attention has been.

I myself have been splitting my time between NAB work and writing the documentation for the HTTP API. The documentation is nearing completion, the API is not. To that end, I'm going to announce the dummy API soon, in the hope of gathering some useful feedback. Most APIs are terrible, and I would like this one to be the exception. The real API will be available two or three months after NAB, hopefully. :-\

Actually testing the next beta of the current software is almost done too, thanks to skronstein's efforts. :) We hope to issue a release soon. One of the issues testing has turned up that we didn't know about is that we broke white balance at some point. It now makes whites less balanced instead of more balanced.


I think the idea of the testing is that we will be able to release new betas without delaying for any new features or bugfixes, since we will know what is wrong. However, perfectionism dies hard. I will do what I can to make sure the release does happen, even with caveats such as broken white balance.

Sorry for the delays. :-[

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version