First look at the new battery cover and a general update


EvilDragon

Administrator
Staff member
Joined
Mar 4, 2003
Messages
29,908
Age
45
Location
Ingolstadt
Phewww - moving everything into the new rooms definitely was quite a bit of work.
We had to move back and forth 15 times with the transporter to move everything into the new rooms... and then unpack, sort, and so on.

We're mostly finished. The shop is operating normal again, the repair / rework space is setup again and I'm planning to finish unpacking and sorting everything next week so I can finally continue assemble Pyras.
These are still with the old cases - so it's a lot of manual labour work and will take a while, but I don't want to throw these away and certainly want to ship Pyras until we receive the new cases.

Speaking of the new cases, the new sample is actually already on the way to us, but I received some pictures from Greece upfront where you can see the new battery cover mechanism:

262513390_439524754533932_11647011329281518_n.jpg265691192_1765925496937480_3503162634814553437_n.jpg267503392_627359291800682_9111925357302281232_n.jpg

These pictures are from an early version where you can still see part of the old design. This will be gone in the final version.

256824726_221740600072318_5149241130366612014_n.jpg257274014_2982532242009474_5029766079114227417_n.jpg257418369_316089580036013_8238388090922217092_n.jpg257734587_607935267023871_5154059460798456792_n.jpg

These are the design files, including a comparison with the original case.
Basically, you put on the battery cover and then slide it in. This should work a lot better and also prevent the tabs from breaking.

Here's also a small video showing how to use it:


I'll do a proper high-quality one as soon as I receive the samples :)


Okay, so how do we continue from here?

As mentioned, I'll continue to slowly assemble Pyras in around 1,5 weeks, so we get more units shipped out and use up the old cases.
As soon as I receive the sample, I'll test it, make a video and let a new case production start if anything is correct. Once I receive these cases, they'll be coated and then we can finally speed up assembly speed (approx. factor 4 or 5), as no manual labour should be needed anymore.
Boy, I never imagined so many weird issues to happen... geez.


Work has begun on the audio driver

I've made a deal with hns that we works on the audio driver and tries to get the hardware accelearion (AESS) to work again properly. This should not only lower the needed CPU power when playing audio, but might also fix some annoying issues we have (overdriven speakers, sudden noise while playing, etc.). Let's hope he is able to get to work that one :)
I have to thank him for the offer :)


eMails not received?

It seems that a lot of the latest final order eMails I've sent out have not reached the receiver. No idea why, as I was using the same tool (mautic) as before.
However, I will set up a small website where users can enter their order number and will receive their final order eMails.

I just need to write a PHP script where I can put the valid order numbers inside a text file and once a user enters it, it should either spit out the link to the orderered unit (4G US, 4G EU or Standard) or let the user know his order number is not (yet) ready.
It shouldn't be a big task, but as I'm not a PHP coder myself, it might take a bit longer.
If some PHP developer reads this and can slap something up (shouldn't take longer than 15 - 20 minutes), please contact me either via PM at the boards or using any of the livechats available on the shop website (https://www.dragonbox.de/)

That's it for now, I hope you like the news - and now it's back to work for me :)
 

Asaggynoodle

Long Term Lurker
Joined
Jan 4, 2012
Messages
173
Location
USA
Appreciate the update ED! Hoping to see more people get their devices soon so developers can get things done! Thanks ED!
 

TeDaDeS

Hardcore Member
Joined
Jan 15, 2004
Messages
1,699
Location
The Netherlands
Website
Visit site
Sounds like a good start of the year, getting the new shop operational will reduce some stress I hope.
The new battery cover looks like it will work nicely. Thanks for the update ED.
 

Djoga'Ro

moonstruck
Joined
Apr 3, 2016
Messages
2,277
A fidged battery door. I wonder how many loose ones we'll see over the years. :D
 

λ the β-Redex Reducer

β-Redex Reducing Member
Joined
Sep 13, 2016
Messages
1,431
Age
52
Location
Lambda Centre
I just need to write a PHP script where I can put the valid order numbers inside a text file and once a user enters it, it should either spit out the link to the orderered unit (4G US, 4G EU or Standard) or let the user know his order number is not (yet) ready.
I do not fully understand this. What I understand from this is that someone who pre-ordered enters his own order number and then gets taken to a page where he can complete the order. But what if he does not know his order number or enters someone else's?
 

bennr01

Silent Observer
Joined
Apr 5, 2016
Messages
31
Thanks for the update, ED!

I just need to write a PHP script where I can put the valid order numbers inside a text file and once a user enters it, it should either spit out the link to the orderered unit (4G US, 4G EU or Standard) or let the user know his order number is not (yet) ready.
It shouldn't be a big task, but as I'm not a PHP coder myself, it might take a bit longer.
If some PHP developer reads this and can slap something up (shouldn't take longer than 15 - 20 minutes), please contact me either via PM at the boards or using any of the livechats available on the shop website (https://www.dragonbox.de/)

I don't have much PHP experience myself, but would something like this work?

PHP:
<?php

    //path to file to read from
    // this should be a json file mapping ordernumber -> URL
    // this should *not* be inside your webroot directory
    $PREORDERS_JSON_FILE = "/tmp/preorders.json";

    $method = $_SERVER["REQUEST_METHOD"];
    if ($method == "GET") {
        ?>
        <HTML>
            <HEAD>
                <TITLE>Pyra preorder link recovery</TITLE>
            </HEAD>
            <BODY>
                <H1>Recover pyra preorder link</H1>
                <form method="POST">
                    <label for="ordernumber">Order number:</label><br>
                    <input type="text" id="ordernumber" name="ordernumber" required><br>
                    <input type="submit" value="Check">
                </form>
            </BODY>
        </HTML>
        <?php
    } elseif ($method == "POST") {
        $ordernumber = $_POST["ordernumber"];
        $filecontent = file_get_contents($PREORDERS_JSON_FILE);
        $preorders = json_decode($filecontent, true);
        if (array_key_exists($ordernumber, $preorders)) {
            $url = $preorders[$ordernumber];
            header("Location: " . $url, true, 302);
            exit();
        } else {
            ?>
                <HTML>
                    <HEAD>
                        <TITLE>Order not yet ready</TITLE>
                    </HEAD>
                    <BODY>
                        <H1>Order not yet ready</H1>
                        <P>Either your order is not yet ready or you entered a wrong order number.</H1>
                        <P>Please check <A href="https://pyra-handheld.com/boards/threads/should-i-have-received-my-final-order-email-already.99284/">the boardy for current progress.</P>
                        <BR>
                        <A href="">Try again</A>
                    </BODY>
                </HTML>
            <?php
        }
    } else {
        echo "Unknown HTTP method: $method!";
    }
?>

This script expects a json file (set via variable at the start), which contains a mapping of ordernumber->URL. If a ordernumber is valid, the client gets redirected to the specified URL. Otherwise, a message is shown that the ordernumber is either invalid or not yet ready.
Still, there isn't any safeguard against multiple orders via the same ordernumber of someone simply spamming all possible order numbers, so it's probably not usable.
 

EvilDragon

Administrator
Staff member
Joined
Mar 4, 2003
Messages
29,908
Age
45
Location
Ingolstadt
I do not fully understand this. What I understand from this is that someone who pre-ordered enters his own order number and then gets taken to a page where he can complete the order. But what if he does not know his order number or enters someone else's?
The order numbers have 9 digits and only the ones for which the Pyras are ready will work. So the possibility of entering a random order number that will actually work is VEEERY low.
Besides, each order is being checked, so if someone places the final order without having the voucher code or even placed a preorder, I will contact that person and not automatically send out a Pyra.

If you preordered, you should've received an eMail including your order number. You can also log in to the shop and check your order numbers.
So anyone should be able to find out the order number. And it's only in case you didn't receive the email, it's only a backup function, basically.

Now, if you changed your email address, deleted all emails from the shop, don't have your login ready, etc... well, then the only way is to contact me.
But seriously, if you preorder something, you should at least keep the emails with the order number safe somewhere :)
Post automatically merged:

Thanks for the update, ED!



I don't have much PHP experience myself, but would something like this work?

PHP:
<?php

    //path to file to read from
    // this should be a json file mapping ordernumber -> URL
    // this should *not* be inside your webroot directory
    $PREORDERS_JSON_FILE = "/tmp/preorders.json";

    $method = $_SERVER["REQUEST_METHOD"];
    if ($method == "GET") {
        ?>
        <HTML>
            <HEAD>
                <TITLE>Pyra preorder link recovery</TITLE>
            </HEAD>
            <BODY>
                <H1>Recover pyra preorder link</H1>
                <form method="POST">
                    <label for="ordernumber">Order number:</label><br>
                    <input type="text" id="ordernumber" name="ordernumber" required><br>
                    <input type="submit" value="Check">
                </form>
            </BODY>
        </HTML>
        <?php
    } elseif ($method == "POST") {
        $ordernumber = $_POST["ordernumber"];
        $filecontent = file_get_contents($PREORDERS_JSON_FILE);
        $preorders = json_decode($filecontent, true);
        if (array_key_exists($ordernumber, $preorders)) {
            $url = $preorders[$ordernumber];
            header("Location: " . $url, true, 302);
            exit();
        } else {
            ?>
                <HTML>
                    <HEAD>
                        <TITLE>Order not yet ready</TITLE>
                    </HEAD>
                    <BODY>
                        <H1>Order not yet ready</H1>
                        <P>Either your order is not yet ready or you entered a wrong order number.</H1>
                        <P>Please check <A href="https://pyra-handheld.com/boards/threads/should-i-have-received-my-final-order-email-already.99284/">the boardy for current progress.</P>
                        <BR>
                        <A href="">Try again</A>
                    </BODY>
                </HTML>
            <?php
        }
    } else {
        echo "Unknown HTTP method: $method!";
    }
?>

This script expects a json file (set via variable at the start), which contains a mapping of ordernumber->URL. If a ordernumber is valid, the client gets redirected to the specified URL. Otherwise, a message is shown that the ordernumber is either invalid or not yet ready.
Still, there isn't any safeguard against multiple orders via the same ordernumber of someone simply spamming all possible order numbers, so it's probably not usable.

Heh, thanks :) Clockworkcoder is also already working on something like that.

Basically, it's fine. But it should not directly redirect to the page but instead show a text with some instructions and the links included.

There should be three different texts with links: One for users who preordered the US version, one for the EU version and one for the Standard version.
So in the file (I planned to use a CSV, but JSON would work as well), I will have the Order number together with the version that has been preordered.

Also, there should be a three second delay built-in, so no one spams the server with random order numbers :)

But yeah, something simple like that would work :)
 

matzesu

Forum Addict!
Staff member
Joined
Oct 24, 2008
Messages
12,601
Age
38
Location
Germany,, Saarland, at home
So the final question is :
„What’s your Ordernumber? (Tm ) „
Whit HNS working on the Audio, and a new batterie cover sounds good,

Although I wonder how easy it is to change this part on a early model,

Are there only the Shoulderbuttons and the Sticker? So if you previously fixed your Pandora Shoulderbuttons (when it’s was only a dis location on the foam pad), you could change it yourself?
My Batterie compartment ditnt made issues yet, expect of the issue that let the Pyra lost batterie contact when you push your Stylus in too rough..
 

matzesu

Forum Addict!
Staff member
Joined
Oct 24, 2008
Messages
12,601
Age
38
Location
Germany,, Saarland, at home
I just though about the ORDER to @hns for the Audio Driver, im a bit worried: If i remember correctly, DebianHF on Pyra is not his fafored Pyra Distro,
he is more a Fan of Letux ^^ , So lets hope he made the Driver for Debian HF....
 

Djoga'Ro

moonstruck
Joined
Apr 3, 2016
Messages
2,277
As I understand it, it shouldn't matter. What matters would be the upstream kernel version - for its API.
 

matzesu

Forum Addict!
Staff member
Joined
Oct 24, 2008
Messages
12,601
Age
38
Location
Germany,, Saarland, at home
Ok, so he dont take the DebianHF , write a Driver, and put it in, but he writes a Driver, and the Developers of the Pyra Debian put it in?
The same as when he would fix a hole in a Bike Tire, but only got the Tire, and not the whole Bike ...

I dont know what actually happens between Letux and Debian, i know he is quite deep in the Letux Stuff, he made a lot of Work whit the Letux, and i wonder why whe use Debian instead of Letux on Pyra, but well, the good thing is that there is a Choice, and the Official Linux on Pyra is Debian..
 
Top