-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Julia support #58
base: master
Are you sure you want to change the base?
Conversation
Very interesting! It seems you started to do what I suggested and forked the Python bindings generator. Are you looking for detailed feedback at this stage or just want to announce that you're working on Julia bindings? |
Since a lot of functions are not yet working, a detailed review seems to be too much at this stage. I primarily created this PR for letting people know that something is happening. Since this is just a minor side project, it might take a while to get this fully working. But I have one question: Is it somehow possible to test the bindings against some mockup devices? Or do you have some setup for integration tests? Since I don’t have many different devices, I can’t easily test. |
There is no official test suite. I started to develop an emulator that should be able to emulate any device and error condition. But it's far from being finished yet. The core protocol mechanic works but there are basically no devices yet, apart from a minimal Ambient Light Bricklet 3.0 that is just complete enough to work in Brick Viewer. But you can give it a try, see the emulator directory in the repository and run the emulate_ambient_light_v3_bricklet.py file in Python >= 3.7. It listens to port 5555 instead of the default 4223. I think I can make up a fake device in the emulator for you in the next days that uses all the protocol features. So you can test your bindings against that fake device. If your bindings work correct with that fake device then they should be able to work with all real devices as well. |
That sounds awesome, I will test |
I just added the start of the Common Test Bricklet. There is now |
I have to admit that I now went the lazy route of simply using Julia's PyCall module to wrap the Python version of the bindings since I failed to get the IPConnection working in Julia (for now). |
I'd prefer a pure Julia implementation if possible. What problems did you run into with that? |
Closes #54
Still WIP. I will update this post as soon as I am more confident about the implementation. I only tested the backlight of a 20x4 LCD ;)