Work I Completed

I spent most of this week looking back at the mechanical issues presented by Winston. This was mainly about trying to get the 12V 12A battery to work. This battery has scared me. We have already had one incident where someone has broken one of these, and are only left with one now. I do not trust that this battery won’t blow up randomly, so i made sure to test everything, checking the voltage and current at every point, just to make sure I don’t overload any component. Or at least I should have done that. I accidentally plugged it straight in without checking anything and ended up breaking a wifi module very quickly. It turns out you cannot plug a 12V battery into a 5V module safely. With this realisation, I decided to grab a multimeter and see where the issue lied. The multimeter revealed that the battery, although plugged only into the servo board, lead straight into the 5V rack which lie upon the shield that was being used. What I didn’t know was that all these 5V pins are connected, and so the 12V coming from the battery connected to the wire for the wifi module. The obvious solution to this is to add resistance. However, I have realised that I do not remember how to calculate required resistance (I have since revised), and ended up using online tools to find that I needed about 7K Ohms of resistance. This isn’t far off what I would expect, and as such it seemed very realistic. Luckily, a 7K resistor was in the room, and so I plugged it in to find the new voltage was 12V. This didn’t make too much sense. We were still reading a value and therefore the power must to have been going through the resistor, but the resistor was not resisting anything. We decided to test bigger resistors, and so a 100K Ohm resistor was used. This was a big step up so we expected near 0V to be read on the multimeter. But after plugging it in, the multimeter read only just above 11.5V (roughly). This indicated that the resistor needed to be even bigger, so we tried the biggest one we had, a 1 million Ohm resistor. This dropped the voltage all the way down to about 11V. This was still very surprising. We tried connecting multiple 1 million Ohm resistors in series to find that, after only 7 were connected, we were reading 7 V. This made it clear that the issue was needing bigger resistors yet. The reason we were off by so much with our guess of 7K is likely due to the high current in use. Although the battery was connected to 12 motors, each motor takes less than 1 Amp to function, so the 12V was being sent with about 11A, meaning it required more resistance than expected. With this discovery I decided to go to JayCar and buy some 10 M Ohm resistors. This was surely enough to drop the voltage to 5 right? Well, kind of. It turns out it would take 20 M Ohms of resistance to get the desired voltage. So buying 10 M Ohm resistors did make it possible, but still multiple would be needed. It was at this moment, however, that we realised no resistance was needed at all, because there was no reason for that wire to connect from the servo board to the 5V pin in the Arduino. So unplugging still allowed full function without any overload. On the bright side, I now have some 10 M Ohm resistors.

PeCan

Another notable thing that happened this last week was the PeCan+CTF 2023, a cybersecurity CTF running nationwide. I didn’t get too much time to prepare for this competition, with Winston being a priority, but I did get some practice in the PeCan Coin. This coin had multiple layers of cryptic text. Although I did get some help, having seen the discussions about it in class before I attempted to solve it, I did solve it, and, I was the only one (in the class) to solve it. The first layer was a templar cipher, which although was one of the things I had heard, is something I have seen many times. Deciphering this reads “Try every other”, indicating to use every second character from the mess of characters on the outside of the coin. This will give two hints, one for each even letter and one for each odd, these are “MD5 and XOR may help”, and “WH3R3 IS TH3 T0UC4N”. This is where everyone else got stuck. This did have me stuck for quite some time too, as the (what looked like) hex on the coin was not long enough to be the end product of an MD5 hash, and therefore couldn’t be reversed. I decided to try encrypting “WH3R3 IS TH3 T0UC4N”, as I had seen no other way that it could be involved. This gave me a string that I could use with the (what looked like) hex in an XOR cipher, to reveal the message “Bring this to 2023: PECAN4WASGR8”. Although being able to solve this felt good, coming 3rd, and losing to both year 11 teams, did not. However, 3rd in the division and 7th out of 117 teams is still good.

Reflection

All in all, Winston is coming together, slowly but surely. Unfortunately, slowly is not good enough, and I aim to have him more or less done this week. This will be probably the most stressful week thus far, and I do not look forward to that. I am excited for PyCon though, even if Winston doesn’t work perfectly, we can make something work enough the present it.

PeCan was a good experience this year, although I think i preferred last years (maybe because we did better), but I think the challenges last year were better because they were less straight deciphering, and a lot more problem solving and knowing things other than ciphers. We still placed well and I am very happy with our performance. The timing of this being when I need to work on Winston most will make this week worse, but it is probably worth it.