Hi Luca,
That did the trick. I set F2000 before each print started and she worked right away. Appreciate you helping me out.
Can I ask you - Im trying to get this machine working 9am - 7pm five days a week. Do you have any idea on how to schedule the prints for certain days. I see you have some time and date functionality in the playlist section. Im a pretty shite programming in fairness - I would help you with this project if I could be of some use.
Thanks for you help though. It seems to be working quite well.
Tim
Is there a way to start and stop it from the command line, Luca?
Crontab is excellent for this kind of thing. If you can get the syntax and permissions right, it can send a command at specific times of day.
Nice!
Yes, you are right about the playlist section. If you create a playlist you can create an element that delay the next drawing with 3 different type of conditions:
- delay: will wait a specific amount of time before starting the next drawing
- date and time: will start the next drawing on that date and time
- alarm: will start the next drawing at that time of the day every day
But I think none of them is really doing what you want… If you plan it carefully with the lenght of the drawings you may be able to do it with the “alarm” type… Anyway, it make sense to have something like you are asking so I will add it to the “todo list”. I’m thinking about something different than the playlist element though… I will create in the settings page something like a weekly calendar with time frames for every day in which the board can be running
If you like to help you can make some kind of detailed startup documentation… I see lot of people are asking more or less always the same questions… Probably my instructions are not detailed enough…
If you want to help me with this you can have a look at the markdown language: it is really easy to learn and it used also here on the forum or other website to enhance the text from within the text. When you have it I can help you to put it in the main repo
In theory it is possible since the software is using some websocket APIs in the background. It could be possible to use a pause command and a play command at specific times. But there is no documentation about this of course (nothing impossible really but it requires some basic programming knowledge to create a connection with the websocket server). If somebody is interested to put up something like this for the moment I can show where to find the available commands and the parameters for the socket connection
Hi there, coming back to deploy a new rpi… tried to install docker and composer …it’s a real pain, can’t get it to work to use sandypi.
Does any one know any pre-package rpi image will all the packages ready to install sandypi without hassle please ?
thanks !
Hi! I’m not sure which guide you are following to install it. I recognize the links I put in the repo may be too involved. I think they changed it since I first put them there… This guide or similar are much simpler to follow hopefully.
After a quick search I cannot find any ready-to-use raspberry image with docker… If you find something please let us know
Thank you, managed to install it and now fighting to start it:
ERROR: Version in “./docker-compose.yml” is unsupported. You might be seeing this error because you’re using the wrong Compose file version. Either specify a supported version (e.g “2.2” or “3.3”) and place your service definitions under the services
key, or omit the version
key and place your service definitions at the root of the file to use version 1.
Tried several upgrade/downgrade without success, that’s too much trouble for what i wanted to do sadly
Sorry to hear that… It was working flawlessly for me… What are your docker and docker-comopose versions? And your os? You can try to edit the docker-compose.yml file and lower the version (now is 3.9, try 3.8, 3.7 or even lower maybe)
I’m using an RPI 3+ with the latest version for os and components.
I also tried severeral vers down in the yml file and then got an argument errors for every service, really strange.
Can you try “docker --version” and “docker-compose --version”?
Not sure what can happen (I cannot try it out now unfortunately) but can you try to set “3” as version or remove the line completely?
Hi, just got time to check:
Docker version 20.10.5+dfsg1, build 55c4c88
docker-compose version 1.25.0, build unknown
The documentation I saw is reporting docker v19.03 or higher should be compatible with v 1.27+.
It also looks like the documentation is not really updated since the composer repo is on v2.15). If you cand find a higher version for docker compose it should work with v3.8.
(Update on the previous reply: if you set v3 it means “3.0” which should not work… We should stick to 3.8)
specifying 3.0 and I have the same error:
ERROR: The Compose file ‘./docker-compose.yml’ is invalid because:
volumes.autodetect value Additional properties are not allowed (‘name’ was unexpected)
volumes.database value Additional properties are not allowed (‘name’ was unexpected)
volumes.logs value Additional properties are not allowed (‘name’ was unexpected)
volumes.saves value Additional properties are not allowed (‘name’ was unexpected)
volumes.static value Additional properties are not allowed (‘name’ was unexpected)
If I try to update it, I have a message that it’s the latest release
do you use 32 ou 64 bits RPI OS ?
Yes, v3.0 should NOT work…
I was using the 3b+ but I don’t have it on hand now… I was working on that part of the project in january last year and the os was released in february thus I’m almost sure I was on 32 bit.
Ok I’ll try to find a downgrade path that allow it to start, wish me luck !
Thank you for your help
SOLVED !!!
Well I use 2022-01-28-raspios image, as you gave me a hint of “last year” !
made full update
install docker,
install docker-compose NOT using pip (bcrypt error otherwise), but the good old “apt-get install docker-compose” command.
And started the yml file only using version “3.6” , now it’s up and running, alleluia !
and too late to play with my sand table tonight lol
Good news that you solved it!
Hi guy’s,
It’s been a while and started from scratch today, same error until I put as a version 3.6.
but can’t get it to work properly still.
Server is staring fine, I can connect to the IP:5100, USB device connection is fine according to the interface BUT… no controls nor ack from the control board.
I checked docker logs and I have that strange message:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
406d7876b253 texx00/sandypi:latest “bash start_server.sh” 14 minutes ago Up 14 minutes 0.0.0.0:5100->5000/tcp default_sandypi_1
e8feead0a02f containrrr/watchtower:latest “/watchtower” 14 minutes ago Up 14 minutes 8080/tc
To run the server use ‘ip:5000’ in your browser with one of the following ip adresses: [‘127.0.0.1’, ‘172.18.0.3’]
[2023-07-30 16:17:41,694] ERROR in server.hw_controller.feeder (device_serial.py): Port must be configured before it can be used.
Traceback (most recent call last):
File “/sandypi/server/hw_controller/device_serial.py”, line 34, in init
self.serial.open()
File “/usr/local/lib/python3.9/site-packages/serial/serialposix.py”, line 316, in open
raise SerialException(“Port must be configured before it can be used.”)
serial.serialutil.SerialException: Port must be configured before it can be used.
[2023-07-30 16:17:41,697] ERROR in server.hw_controller.feeder (device_serial.py): Serial not available. Are you sure the device is connected and is not in use by other softwares? (Will use the fake serial)
/sandypi/server/hw_controller/leds/leds_types/dimmable.py:29: RuntimeWarning: This channel is already in use, continuing anyway. Use GPIO.setwarnings(False) to disable warnings.
GPIO.setup(self.pin, GPIO.OUT)
INFO [alembic.runtime.migration] Context impl SQLiteImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
Logger ‘app’ level: 30 (WARNING)
Logger ‘feeder’ level: 30 (WARNING)
- Serving Flask app ‘server’ (lazy loading)
- Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.- Debug mode: off
Can you help ?
Sorry for the delayed response but I was out the last couple of weeks.
The only thing I can think about is checking the serial port with another software and (if it is working with that) use the same settings for the baudrate.
If that is not fixing the issue I would make sure the serial port is not in already in use by something else…
Please keep me updated
Hi Texx,
Thanks for the awesome codebase, was going through & it may fulfill my needs.
I’m building table using Arduino, Pi and OctoPrint… I Want to remove Octoprint , since there was too much of integration required to achieve my goals.
does the Sandypi works perfectly with the Sisyphus MAGIC SAND Coffee Table - Arduino | Pi | 3D Printed ??
please check this video which I’m following. search in youtube with “Sisyphus MAGIC SAND Coffee Table - Arduino | Pi | 3D Printed”
Hi, it’s been a while and I’m coming back to build V3 of my sand table.
I build this very version of the “Sisyphus MAGIC SAND Coffee Table - Arduino | Pi | 3D Printed”
It’s a very easy to print and build sand table, I put it inside an ikea magic table.
So far I had lot’s of issues installing the sandypi software on my rpi3b+, mostly because of my lack of linux competences.
I had to gave up due to change of job, relocation, familly stuff, but I will give it a go again.
To what I see I canno’t see how you could get away without pi, for smart control you need a computer any way.