Made some good progress last night. I plugged in a Data Harvest FlowGo I'd picked up a while back. It didn't have any software with it and I hadn't done anything with it.
I enjoy playing with old educational interface boxes - it was a big thing here in the UK in the 80s and 90s for teaching Systems / Control to children (even primary school children!) and was often mixed in with things like Design and Technology and Science lessons. My school wasn't the best at it, but wasn't the worst by a long way either. The teachers knew what they were doing, but as a person with an interest in this sort of thing, I never felt we spent enough time doing it.
Anyway.
I sat down last night and decided to investigate this box a little. I checked lsusb and saw that it identified as an FTDI thing when connected via USB, and a serial port manifested. I knew a single command from a much older generation of box they made years before and thought "hey, if I was designing something, I'd probably just reuse stuff"... so I tried it, and got a response. Given that, I just brute forced every command combination, helped by it giving a response that indicated if something was a valid command or not.
By 1:30am last night I was able to...
I've not worked out which command controls the motors (not stuck, just need to go back to it because I probably sent a 0 for speed and so the LEDs didn't light up), what if anything I could do with the "Go" button and I've seen a video of someone using it without a computer, so I think you can load like, routines, into it. I have a strong suspicion which command does that last thing, but I also suspect that I wont be able to easily reverse engineer the format of the routines blind. There will be more stuff too I'm sure. Probably some stuff for changing serial settings, potentially perhaps analogue input precision? Perhaps not.
If anyone has one and wants to play with it from Python from a modern computer, or possibly even Hypercard from an SE (I've not tested the RS232 port yet - I have had trouble with some ports working with old Mac serial - it seems if both the Mac and the device are both technically non-compliant, compatibility can fall between the gaps!), you can find details at the following link. Yes, it isn't complete documentation, give me a chance, I only started last night .
I enjoy playing with old educational interface boxes - it was a big thing here in the UK in the 80s and 90s for teaching Systems / Control to children (even primary school children!) and was often mixed in with things like Design and Technology and Science lessons. My school wasn't the best at it, but wasn't the worst by a long way either. The teachers knew what they were doing, but as a person with an interest in this sort of thing, I never felt we spent enough time doing it.
Anyway.
I sat down last night and decided to investigate this box a little. I checked lsusb and saw that it identified as an FTDI thing when connected via USB, and a serial port manifested. I knew a single command from a much older generation of box they made years before and thought "hey, if I was designing something, I'd probably just reuse stuff"... so I tried it, and got a response. Given that, I just brute forced every command combination, helped by it giving a response that indicated if something was a valid command or not.
By 1:30am last night I was able to...
- Get it to tell me its product name as a string
- Read from the two analogue ports
- Read from the 4 digital inputs
- Write to the 6 digital outputs
I've not worked out which command controls the motors (not stuck, just need to go back to it because I probably sent a 0 for speed and so the LEDs didn't light up), what if anything I could do with the "Go" button and I've seen a video of someone using it without a computer, so I think you can load like, routines, into it. I have a strong suspicion which command does that last thing, but I also suspect that I wont be able to easily reverse engineer the format of the routines blind. There will be more stuff too I'm sure. Probably some stuff for changing serial settings, potentially perhaps analogue input precision? Perhaps not.
If anyone has one and wants to play with it from Python from a modern computer, or possibly even Hypercard from an SE (I've not tested the RS232 port yet - I have had trouble with some ports working with old Mac serial - it seems if both the Mac and the device are both technically non-compliant, compatibility can fall between the gaps!), you can find details at the following link. Yes, it isn't complete documentation, give me a chance, I only started last night .
FlowGo Interface
By Data Harvest An Example Data Harvest FlowGo Data Harvest seem to be one of, if not the last of, the British manufacturers of educational Systems / Control interfaces. I really hope they’re…
stuffandnonsense.elephantandchicken.co.uk