 We can move to our next speaker. I don't have to show my slides but it is Kenneth Lane with his hack to hack or not to hack. So I think we all saw on Facebook that he received a new table, a faulty table and he has brought it back to life. So Kenneth, I hope my 2013 MacBook survives the presentation. It hasn't been very well. Okay, so I'm Kenneth. So this whole to hack or not to hack thing came about because of this particular, let me try to present, hope it doesn't crash. Kenapa? Because of this post that Tim made one to two weeks ago about this frame that he's giving away. Because somehow the controller died on him and the new one that the supplier gave couldn't get it working. So I think probably the reason why I named the talk to hack or not to hack is to share with everyone how I decided on whether I want to even pick up the frame or not. Because I mean there are always people who are keen to give you stuff but how to we decide whether it's worth spending or time on. So this is how I evaluated. So the first thing is he said that the newer one powers the motor okay, which kind of tells you that the motor itself is working well. And there's something weird with the signalling when it comes to the new controller. So I ran through the following things in my mind, okay, good. There's two sets of controller available, which means there's some spare parts for me to possibly swap around. And the motor is working based on his analysis. But the new controller is only somewhat working, which is possibly the area that I need to look into. And the thing that it doesn't come with a tabletop, it's quite an easy thing to be fix. I can just go to e-care or go to any furniture shop and get it. So after looking at it and evaluating, I was thinking, okay, I think it's worth a heck. And I've been thinking about getting a motorised desk for a while. So why not, right? So I contacted the team, went down, drag these 20 plus kg frame home and spend that Sunday afternoon putting them together. Then the next question comes, I always like to open up stuff. We hardware hackers like to see what's inside. But we are always overly enthusiastic about EME, usually break the casing or break something along the way, which is not very helpful. You wanted to fix something but end up breaking something before you even get started. So I thought I should come up with a plan. So the first one I test that, okay, the new controller works, it powers up, great. The display shows something which is even better. We're like more than halfway there. But then the motor doesn't move. I'm like, oh no. Then I'm like, okay. There's no other way out of this. I need to open up the old controller and figure out what already happened and what broke the old controller. And another thing, when it comes to hardware hacking, we always think that we can remember the colour sequence of the cable. It's green, red and black. Then after 2 hours of hacking and you want to put back, then you're like, which cable is going where. So it's always go fast and we'll take a photo, make sure that everything is documented. You can see clearly in your photo which pin has which cable. So that when you are ready to put it back, you don't end up putting in reverse and shorting all your hardware away. So I took the pictures, opened up the thing and realised that the power supply is not working. Let me just go back to this one. So the right side over here is an ACDC. That gives you a 32V to the motor controller board over here. Then I did a first fundamental thing. I quickly measure and see whether there's even power in the first place. Then I quickly realised that it seems like somehow the PSU is not working. So I was like, okay, good. Team gave me two set of controllers. The new one has a working power supply. So simple fix. Just swap it. When everything is good, it's time to take the video. So to our friends, say that, okay, we got it working. So it is a demo of me putting everything together, together with my father and shows that, okay, everything is great. But that wasn't the thing that got me very excited. That there are two other things that I wanted to hack on. So the first one was, it's very curious, why did the power supply feels very weird. So the place that I'm pouring here with my multimeter is actually the fuse. So it's the AC fuse that somehow if you look at the old meter over here, it says open circuit, which means the AC fuse kind of trip and which is why the PSU is not giving us the 32V. That was the thinking, okay, if the fuse broke but you don't have a fuse at home, you should put in your own fuse. But then I was obviously not thinking I was like, I think this cable is thin enough. I mean in my mind, it's like sufficiently thin that in any event that something serious happens, it's going to burn. It's like, okay, good. Temporary fuse. Then this happened. So yeah, it's a good reminder for me as well. Now you know, usually when the fuse blows, it's the rectifier bridge and the switching tube that blows. If those two get shorted, it will look at the fuse will blow. Okay, awesome. So maybe the correct move would have been to ask in headwear first, the headwear group first before, putting my own temporary fuse. So this kind of gave me answer my curiosity or scratch my back on why that PSU failed. But there's another exciting thing that you can see here in the middle of the screen. When I was looking at the board, I saw this UART pin out. Hey, it says five-boat RXD, TXD and ground. So I was like, this thing is way more interesting than getting the motorized frame working. So I decided that I need to wire this up hook up to my UART reader and see what was going on. And it ended up with no data coming in and I was quite annoyed by what I saw. So let me share and then I will show you another demo, like a real demo. So I was really annoyed. I was like, why this TXD, it's straightforward to us. It's like a UART thing. Why was there no data flowing? Then I looked at this thing and I realised that actually for this microcontroller these two pins are actually used for the programming of the MCU itself. I'm not sure if you can actually use it like a normal UART you probably can but it seems like it's used primarily for just flashing the firmware in the factory. So I was like, ah okay that explains why I wasn't getting any data but obviously I was not going to give up. So let me show you the demo that I have. Maybe you can spotlight that one for me. So you can see over here because it came with two sets of controller. So I decided to hack one of them and currently I actually hook it up to the main controller. So this is the controller then I hook it up to a FTDI UART and then to my PC itself. Okay so what's so interesting about this let me try to share my screen. Okay if you can see over here I keep sending this 5.5 AA sequence which is what I figure out when you are in the sleep mode or idle mode this is what shows but the moment I start moving the table you see now it's 99.7 so let me say I move the table and you see the number moving you can see that there's actually data flowing and the moment the table stops it shows 5.5 AA again. So it was quite interesting for me I was like okay I managed to hack up and really a lot of the work was spent really on paper I was trying to study the circuit how everything flows and I kind of managed to get some data so I figure out that if it's at height 123cm if it's at the lowest height of 73cm but the whole trouble with this whole setup is that I'm actually guessing the board rate I don't really know what was the original setting so there's data flowing but I'm not very sure if that was the actual intended data that we are supposed to be seeing even I really want to hack further I can do like a table mapping I can map a particular hack sequence to a particular height and continue to do something with the controller so that's what I have for the sharing so the 123cm is like a preposition memory so it's actually not so the lowest height is 73cm and the highest is 123cm so I was just trying to get the table at a pre-defined height so that I can kind of see what's the hack data that gets sent basically trying to find a pattern when you press 1 or 2 there's a different 1, 2, 3 pre-set thing you can actually save how much weight can you put on that table? I can't remember 40, 60? I can't remember it's pretty good because I have a fixed desk from IKEA but I loaded with synthesizer box I'd like to have something that can vary because sometimes you feel it's lower quite nice to in the middle there's like 2 legs but actually it's quite stable I saw the picture on your Facebook it's pretty like an inverted T-shape with a centre horizontal bar it's pretty stable how do you hide the cables? how do I hide the cables? actually it's quite tidy but it's a bit weird to show you my cabling it's quite neat I kind of align everything to the right side and just brought them to the cable tray oh by the way you want to find the board rate you actually have an oscilloscope you can actually use an oscilloscope and do some maths and you can find it out yeah, sadly I don't if not that would be quite a fun thing to do if you receive stuff from an Arduino unless you have the nice board rate the Arduino should not the Arduino should not give you the value if you really put a high board rate it's expecting to have a very fine you know, a very fine edge you could kind of guess and usually I don't think the board rate is like you know 32523 it tends to be pretty so the thing I tried changing the board rate so I was trying to figure out am I on the right board rate and am I on the right beta beat so I changed the board rate up and down I realised that at a higher board rate the data doesn't change so I kind of know that probably not in that range and I kind of went down lower and I used some of the more common board rates that they probably would use and I can't tell for sure whether it's the actual one because this is kind of like reverse engineering but I'm quite happy that I got the data out I think it was more I enjoyed it better than getting a motorized desk Are you able to do any kind of control on the table you mean like hack the controller? Yeah, maybe like put in a remote controller in it and automate the thing yeah, that's the reason why I was hacking on the controller actually I was sticky of using my MacBook and just say like down I mean even though the controller is just on the right we should schedule it at certain times you should be standing up then you automatically go up then you're forced to stand up as well now you're motivating me to continue hacking actually I figured out we think it's kind of advanced but 2 pins constrain the up and down and the motor itself knows when it's at the highest or lowest limit so you don't have to be afraid of sending the wrong signal I think it's just 2 pins if one is high and one is low if the other one is low and one is high it goes down it's quite straight forward so the display signal and the motor control is really separated nice I just find it weird that they don't just use UART for everything so Kenneth yeah Anand from the motor itself show your face Anand show your face tonight everybody is showing their face why are we not showing your face okay okay hi Kenneth from the motor unit itself do you detect any form of quadrature encoder wow that's a very tough question I didn't have a scope or something so I couldn't tell so were there additional pins that might be used directly to the CPU in some fashion does it know the exact height it's supposed to reach or it just goes up all the way to the limit switches hmm I think I think the motor is reporting it to the controller I think so because it's a good question I tried moving the table up halfway and cut off the power to see whether it remembers where it stopped and yeah obviously it did I think I see two wires going to the controller from the motor port haven't gotten to the two pin yet previously I worked with autism to design the electronics and there's actually recorded the height of the table itself so I was wondering whether yours has an encoder within it also I'm thinking that I probably won't be able to sleep tonight alright thanks anyway do you usually have like a current for the limit you have a current detector limit like upper and lower limit I would expect otherwise you would be pushing and pushing I think internally the motor knows the limit so when it's quite near the upper and lower it kind of slows down which is nice so yeah like 120 it will slow down until it goes to 123 oh 100 it's quite well designed I guess cool any other questions okay if not thank you hey Kenneth I want to ask you want my scope I have a 100MHz scope from tech it's a 468 oh sounds interesting it works up to like 200MHz semi digital you want you can get I'm selling for about 50 to 100MHz can you go let's do it where's your house carry yourself have a chat with you later you send me everyone stay home too much and just giving away stuff so exciting time for us I still got like one signal generator and a lot of stuff okay I'm sure there are people here who might be interested yes please post it so I just post it in the group or is there some way I can say a marketplace listing or something like that I don't really know how to use Facebook I guess just post a picture doesn't really matter well okay if there's no other questions maybe you can take it offline later if you have more questions so I think there's a one announcement maybe I'll just say it Out GeekCam CFP is open I think GeekCam is scheduled to happen next month September so yes if you have a talk please submit it now it closes on 21st of August so you can start using hackware to practice before you present at the conference besides that, does anyone else has any announcements looking to hire people or looking for a job do shout out now no okay well if there's nothing I think thank you so much to everybody who attended today and to the speakers and of course to engineers.sg for sponsoring this take care everybody I'll see you in the next hackware to check out the Facebook and made up page see you bye so I think Michael will leave this room open for a while so maybe if you guys still want to chat I don't see Michael's face, where's Michael he's the engineers sg alright, let's talk to my colleague